Vous êtes sur la page 1sur 14

Versión 2009

APENDICE 5

NOCIONES ELEMENTALES DE USO DEL PROGRAMA


DE CALCULO SIMBOLICO “MATHEMATICA”

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

1. Introducción
El presente apéndice tiene por objetivo suministrar al alumno información compendiada para
tomar un primer contacto con el uso de programas de cálculo simbólico y/o numérico tales
como MathematicaMR.
El programa Mathematica posee en un mismo entorno diferentes facetas y capacidades que lo
ponen como uno de los estándares en el manejo de cálculo simbólico además de ser una
herramienta aceptable para ejecutar cálculos numéricos. Las notas de este apéndice están
orientadas a los rudimentos más elementales como para afrontar algunas fases de cálculo con
Mathematica Versión 4.0. En estas circunstancias se sugiere además recurrir a la bibliografía
suministrada y a los tutoriales adjuntos al programa para extender el conocimiento del mismo.

2. Presentación del programa y Primeros Pasos


El programa Mathematica Versión 4.0 posee un entorno de trabajo como el que se presenta en
la Figura A5.1. En ella se puede apreciar una ventana de trabajo, donde se desarrollan todos
los pasos de cálculo deseados, una ventana con una paleta de funciones básicas (similares a
las paletas de MathCAD). Se pueden abrir más de una ventana de trabajo y más de una
ventana con otras funciones de utilidad para trabajos determinados.

Figura A5.1. Entorno de trabajo de Mathematica

El primer paso cuando se inicia el programa, luego de seleccionar el icono de Mathematica es


cargar el denominado KERNEL del programa. El KERNEL es el motor de Mathematica y en
el están programadas la mayoría de las funciones más comunes de uso en la Matemática para
la ingeniería y otras áreas. El Kernel se carga con la primer función que se tipee en la ventana
de trabajo.

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

A modo de ejemplo se muestra la elemental ejecución de una suma en el cuadro A5.1. Para
proceder a la ejecución de la suma la forma más fácil es una de dos, presionando la tecla
“Enter” del teclado numérico a la derecha o la combinación de las teclas “shift” y “Enter”
juntas.
In[1]:= 2+ 2
Out[1]= 4
Cuadro A5.1

Se puede ver que la ejecución da por resultado algo esperado como que 2+2 es igual a 4. Pero
se puede ver también la identificación de los datos de entrada y de salida con las palabras en
color azul In[1] y Out[1]. El número uno dentro de los corchetes significa la operación
primera desde que se arranco con el KERNEL. En el caso de que dentro de los corchetes de
In[] y Out[] figurare por ejemplo el número 25, se tratará de la operación vigésimo quinta.

Aritmética básica
Mathematica Reconoce los operadores básicos de la aritmética que se discriminan en el
siguiente cuadro A5.2
a+b suma
a–b resta
a*b o ab producto
a/b división
a^b potenciación
Cuadro A5.2.

Nótese que el producto también puede ser representado con una separación entre las variables
puestas en juego. A modo de ejemplo en el Cuadro A5.3 En el caso de operaciones
aritméticas se sigue con la secuencia de prioridad típica: paréntesis, productos o divisiones,

10 + 2^3 − 5 6 + 8 ê 4 ∗ H6 − 9L
sumas o restas en ese orden
In[2]:=

Out[2]= −18
Cuadro A5.3

Los números que el programa manipula pueden ser los definidos en el campo del álgebra
numérica, es decir ENTEROS, RACIONALES (fracciones), REALES y COMPLEJOS. Sobre
los diferentes números se pueden ejecutar distintas funciones propias del programa para
redondear, truncar, y entregar la precisión de un número cualquiera en entre otras funciones.

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

En el siguiente cuadro se puede apreciar la determinación de la precisión del número π y de la

è
raíz cuadrada de 2 con 30 decimales cada una.

In[3]:= NA 2 , 30E

Out[3]= 1.41421356237309504880168872421

In[4]:= N@ π , 30D
Out[4]= 3.14159265358979323846264338328
Cuadro A5.3
´
Algunas funciones Elementales
En la Tabla A5.1 se muestran algunas (de las más de 100) de las funciones elementales de
Mathematica aplicadas a un número cualquiera.

Función Acción
Round[a] redondea “a” a número entero
Ceiling[a] Mayor entero menor que “a”
Sign[a] signo de “a”
Abs[a] Valor absoluto de “a”
Sin[a] seno de “a” (radianes)
Cos[a] coseno de “a” (radianes)
Tan[a] Tangente de “a” (radianes)
ArcSin[a] arco seno de “a” (radianes)
ArcCos[a] arco coseno de “a” (radianes)
ArcTan[a] arco tangente de “a” (radianes)
Sinh[a] seno hiperbólico de “a” (radianes)
Cosh[a] coseno hiperbólico de “a” (radianes)
Tanh[a] Tangente hiperbólica de “a” (radianes)
Exp[a] función exponencial de a
Log[a] logaritmo neperiano de “a”
Log[a,b] Logaritmo en base “a” de “b”
Abs[Z] módulo del número complejo Z
Arg[Z] argumento del número complejo Z
Conjugate[Z] complejo conjugado de Z
Re[Z] Parte real del número complejo Z
Im[Z] Parte imaginaria del número complejo Z
Tabla A5.1. Funciones numéricas básicas de Mathematica

Nota: Mathematica es sensible a los caracteres en mayúscula. Todas las funciones del
programa tienen su primera letra mayúscula, según se ve en la tabla anterior.

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

Definición de funciones de una o más variables


La definición de funciones de una o más variables se puede ver en los siguientes cuadros.
Nótese que la definición de h[x], exige la presencia de guión bajo “_” al lado de la “x” sólo en

h@x_D = 3 x + 4 x^2
el miembro de la izquierda.
In[5]:=

Out[5]= 3 x + 4 x2

In[7]:= h@3D
Out[7]= 45
Cuadro A5.4. Definición de función de una variable

In[6]:= g@x_, y_, z_D = 4 x + 5 y^2 + z3


Out[6]= 4 x + 5 y2 + z3

In[8]:= g@1, 1, 3D
Out[8]= 36
Cuadro A5.5. Definición de función de varias variables

Nótese en Cuadro A5.5, que se ha efectuado una definición combinada de las potencias, para
la variable “y” con el operador apropiado y para la variable “z” empleando la paleta de
funciones (ver Figura A5.1).
La definición de una función como toda asignación puede efectuar de dos maneras distintas:
a) ASIGNACION INMEDIATA (=)
b) ASIGNACION DIFERIDA (:=)
Para distinguir estos tipos de asignación se mostrarán en los siguientes cuadros sus
diferencias. Nótese que en el Cuadro A5.6 sólo aparece la palabra In[15] y no Out[15], esto se

a = π ê 2;
debe a la presencia del carácter “;”, que inhibe la salida de pantalla de los resultados

h@x_D = Sin@x + aD;


In[15]:=

g@x_D := Sin@x + aD;


Cuadro A5.6. Definición de dos variables con diferente método de asignación

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

En el Cuadro A5.7 se ve la comparación de los valores de las funciones en el punto x = 0, de


manera que ambas valen lo mismo. Sin embargo, si el valor de “a” es modificado, también se
modifica la función g[x] que fue definida con asignación diferida.
In[18]:= 8h@0D, g@0D<
Out[18]= 8 1, 1<

a = π;
8h@0D, g@0D<
In[19]:=

Out[20]= 8 1, 0<
Cuadro A5.7.

En el Cuadro A5.7 se puede observar una nueva entidad, que figura entre llaves, es la
denominada “lista” o “vector” y se tratará a continuación su creación y manipulación.

Construcción y manipulación de listas


Una lista en Mathematica puede ser un conjunto de números o funciones u otras listas,
agrupados en una forma definida por el usuario. Los elementos del conjunto no son todos
necesariamente del mismo tipo, sin embargo para aplicar algunas funciones a la lista si es
necesario que sean todos del mismo tipo. En el Cuadro A5.8 se muestra la definición de una
lista a la cual se le aplica la función de seno.
In[21]:= f = 84, 5 + I, Sin@xD, π , 8 π ê 2, z<<

Out[21]= :4, 5 + , Sin@xD, π , : , z>>


π
2

In[22]:= Sin@fD
Out[22]= 8Sin@4D, Sin@5 + D, Sin@Sin@xDD, 0, 81, Sin@zD<<

In[23]:= Sin@fD êê N
Out[23]= 8−0.756802, − 1.4797 + 0.33336 , Sin@Sin@xDD, 0., 81., Sin@zD<<
Cuadro A5.8.

Nótese que en el Cuadro A5.8 el operador “// N” da salida numérica a la operación de calculo
del seno, que se ha aplicado directamente a cada elemento de la lista “f” manteniendo la
estructura de la misma. Esto se puede verificar revisando la secuencia de llaves. Sobre una
lista de números del mismo tipo se pueden ejecutar una serie de comandos para ordenar,
reducir, extraer elementos, etc. Algunos de tales comandos se muestran en la Tabla A5.2 y en
el cuadro A5.9 se muestran algunos ejemplos.

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

Función Acción
Sort[lista] Ordena la lista
Reverse[lista] revierte el orden de la lista
Length[lista] entrega la cantidad de elementos de la lista
Take[lista, a] extrae los “a” primeros elementos de la lista
Append[lista, a] agrega “a” al final de la lista
Prepend[lista, a] agrega “a” al principio de la lista
Join[lista1, lista2] une dos listas
Tabla A5.2. Funciones básicas para manipulación de listas en Mathematica

d = 8 1, 5, 6, 9, 3, 4< ;
Sort@ dD
In[30]:=

Append@ d, 100D
Prepend@ d, 100D
Length@ dD
Take@ d, 3D
Out[31]= 8 1, 3, 4, 5, 6, 9 <

Out[32]= 8 1, 5, 6, 9, 3, 4, 100 <

Out[33]= 8 100, 1, 5, 6, 9, 3, 4 <

Out[34]= 6

Out[35]= 8 1, 5, 6 <
Cuadro A5.9.

Definición de reglas
Otra posibilidad es efectuar sustituciones o transformaciones sobre cualquier tipo de
expresiones, en términos de reglas matemáticas, para ello se utiliza en símbolo “/.” y la regla

x + Sin@xD + Cos@xD ê. x → π
correspondiente, tal como se muestra en el Cuadro A5.10.
In[36]:=

Out[36]= −1 + π
Cuadro A5.10.

Definición de Polinomios
Para definir un polinomio se puede recurrir tanto a la paleta de funciones básicas como a la
escritura con operadores. Así pues en el cuadro A5.11 se pueden distinguir las dos formas de
definir un mismo polinomio en términos de la variable “x”. Sobre los polinomios se pueden

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

ejecutar distintas funciones para simplificar, agrupar, disgregar, expandir, extraer coeficientes,

pol1 = x^2 + y x^3 + Hx − 1L ^4


etc. Algunas funciones elementales se disponen en la Tabla A5.3.

pol2 = x2 + y x3 + Hx − 1L4
In[37]:=

Out[37]= H−1 + xL + x + x y
4 2 3

Out[38]= H−1 + xL + x + x y
4 2 3

Cuadro A5.11.

Función Acción
Expand[polinomio] expresa el polinomio como suma de monomios
Factor[polinomio] Factoriza el polinomio
Collect[polinomio, x] expresa el polinomio en potencias de x
Variables[polinomio] da una lista de las variables dentro del polinomio
Exponent[polinomio, x] indica el máximo exponente de la varible x
Length[polinomio] da la cantidad de monomio que integral el polinomio
Simplify[polinomio] simplifica lo máximo que puede el polinomio
Coefficient[poli, var, n] entrega el coeficiente de potencia n de var en poli
Tabla A5.3. Funciones básicas de polinomios en Mathematica

Definición y manipulación de vectores y de matrices


Un vector y una matriz corresponden a casos particulares de listas, en el primer caso tenemos
una lista de orden [N,1] o [1,N] y en el segundo una lista de orden [M,N]. Normalmente se
definen como arreglos de entidades encerradas entre llaves “{“ y “}” y separados sus
elementos con comas según se muestra en el Cuadro A5.12, para “B” siendo vector y “Z”

B = 82, 4, 5, 6, 7<
siendo matriz:

Z = 883, 5, 6<, 84, 7, 2<<


In[39]:=

Out[39]= 82, 4, 5, 6, 7<

Out[40]= 883, 5, 6<, 84, 7, 2<<


Cuadro A5.12.

La matriz Z del Cuadro A5.12 se puede definir recurriendo a la paleta de funciones. Por
defecto la función tiene dos filas por dos columnas, pero para añadir filas o columnas hay que
presionar una secuencia de teclas determinada con el cursor actuando dentro del objeto (es
decir con uno de los elementos ennegrecido). Así será:

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

a) teclas “control” y “Enter” para añadir filas


b) teclas “control” y ”,” (coma) para añadir columnas

In[42]:= Z = 883, 5, 6<, 84, 7, 2<<


Out[42]= 883, 5, 6<, 84, 7, 2<<

Z= J N
3 5 6
In[43]:=
4 7 2
Out[43]= 883, 5, 6<, 84, 7, 2<<
Cuadro A5.13.

Para extraer un elemento de una lista se utiliza el comando Part o bien explícitamente con los
índices afectados al vector o la matriz correspondiente como se ve en el Cuadro A5.14,

Part@Z, 1, 2D
ejemplificando para la matriz Z del Cuadro A5.13.
In[44]:=

Out[44]= 5

In[45]:= Z@@1, 2DD


Out[45]= 5
Cuadro A5.14.

Con respecto al producto de matrices, en el Cuadro A5.15 se puede notar la diferencia en el


empleo del operador “.” y el operador “*”.

i1 3 2y i1 3 2y
A= 7 4 1 ; V= 1 1 2 ;
k6 5 0{ k0 4 0{
In[49]:=

A.V
A∗ V
Out[50]= 884, 14, 8<, 811, 29, 22<, 811, 23, 22<<

Out[51]= 881, 9, 4<, 87, 4, 2<, 80, 20, 0<<


Cuadro A5.15.

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

En el caso de A.V se tiene el clásico producto de matrices, en el caso A*V se tiene el


producto elemento a elemento de la matriz.
La salida de una operación con matrices puede ser formateada adecuadamente para ser
presentada como una matriz según se ve en el siguiente Cuadro A5.16.
i1 3 2y i1 3 2y
A= 7 4 1 ; V= 1 1 2 ;
k6 5 0{ k0 4 0{
In[52]:=

A.V êê MatrixForm
A ∗ V êê MatrixForm

i 4 14 8 y
Out[53]//MatrixForm=

k 11 23 22 {
11 29 22

i1 9 4y
Out[54]//MatrixForm=

k 0 20 0 {
7 4 2

Cuadro A5.16.

En una matriz cualquiera se pueden ejecutar las funciones que se muestran en la Tabla A5.4
Función Acción
Det[matriz] calcula el determinante de matriz
Inverse[matriz] calcula la matriz inversa
Transpose[matriz] calcula la matriz transpuesta
MatrixPower[matriz, n] eleva la matriz cuadrada a la potencia n
Eigenvalues[matriz] calcula los autovalores de matriz
Eigenvectors[matriz] calcula los autovectores de matriz
Eigensystem[matriz] calcula el sistema de autovalores y autovectores de matriz
Tabla A5.4. Funciones básicas de matrices en Mathematica

In[55]:= Det@AD
Out[55]= 35

In[56]:= Inverse@AD êê MatrixForm

i− 1 −1 y
Out[56]//MatrixForm=
2
7 7 7
6 − 12 13
35 35 35

k 35 35 {
11 13 − 17
35

In[60]:= Transpose@AD êê MatrixForm

i1 7 6y
Out[60]//MatrixForm=

k2 1 0{
3 4 5

Cuadro A5.17.

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

Solución de ecuaciones de una variable


Con la Función Solve se pueden hallar las raíces de un polinomio. Con la Función NSolve se
hace lo mismo pero en forma numérica. Nótese que la ecuación se identifica no con el signo
“=”, sino con el símbolo “==”.

In[65]:= SolveAx3 − 3 x2 − 7 x 0, xE
è è
Out[65]= :8x → 0<, :x → I3 − 37 M>, :x → I3 + 37 M>>
1 1
2 2

In[66]:= NSolveAx3 − 3 x2 − 7 x 0, xE

Out[66]= 88x → −1.54138<, 8x → 0.<, 8x → 4.54138<<


Cuadro A5.18

En el Cuadro A5.19 se muestra la forma de definir sistemas de ecuaciones

In[68]:= Solve@8y − 7 x 3, y + 2 x == 4<, 8y, x<D

Out[68]= ::y → , x → >>


34 1
9 9
Cuadro A5.19

Calculo Diferencial e Integral


La derivada de una función se puede calcular de la siguiente manera (ver que se emplea la
forma estándar y la forma simbólica de la paleta de funciones):

In[81]:= u = x2 + 2 x3;
der1 = ∂x u
der2 = D@u, 8x, 2<D
der3 = ∂8x,3< u
Out[82]= 2 x + 6 x2

Out[83]= 2 + 12 x

Out[84]= 12
Cuadro A5.20

En el Cuadro precedente se han calculado las derivadas sucesivas de la función “u”. En el


siguiente cuadro se calculan algunas derivadas parciales:

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

In[85]:= v = u y2;
der4 = ∂x,yv
der5 = D@v, x, yD
Out[86]= 2 H2 x + 6 x2L y

Out[87]= 2 H2 x + 6 x2L y
Cuadro A5.21

Para calcular integrales se emplean las siguientes formas:

u = x2 + 2 x3;
Inte1 = Integrate@u, xD
In[88]:=

Inte2 = ‡ u x
Inte3 = Integrate@u, 8x, a, x<D
Inte4 = ‡ u x
x

x3 x4
Out[89]= +
3 2
x3 x4
Out[90]= +
3 2
π3 π4
x3 x4
Out[91]= − − + +
3 2 3 2
π3 π4
x3 x4
Out[92]= − − + +
3 2 3 2
Cuadro A5.22

En el Cuadro A5.22, en Inte1 e Inte2 se ha calculado lo mismo con dos formas diferentes de
presentación, lo mismo se ha hecho con Inte3 e Inte4, para el caso en que se definan límites
de integración.

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

Solución de ecuaciones diferenciales


Las ecuaciones diferenciales no siempre tienen solución en términos de cuadraturas, pero para
algunos casos se puede usar la forma de solución simbólica DSolve o la forma numérica
NDSolve.

In[93]:= DSolve@∂8x,2< y@xD − 2 x 0, y@xD, xD

Out[93]= ::y@xD → + C@1D + x C@2D>>


x3
3
Cuadro A5.23

Obsérvese que del cuadro A5.23 se tienen las dos constantes de integración C[1] y C[2]. De
definirse las condiciones iniciales o de borde para la ecuación diferencial se obtiene la
solución definitiva, es decir:
In[98]:= DSolve@8∂8x,2< y@xD − 2 x 0, y@0D 3, y'@0D 2<, y@xD, xD

Out[98]= ::y@xD → 3 + 2 x + >>


x3
3

In[99]:= DSolve@8y''@xD − 2 x 0, y@0D 3, y'@0D 2<, y@xD, xD

Out[99]= ::y@xD → >>


x3
3+ 2 x +
3
Cuadro A5.24

Nótese en el Cuadro precedente las dos formas de escribir el comando de resolución.

Formas de Graficación en Mathematica


Existen diferentes formas de graficación en 2D y 3D de funciones en el programa. Se emplea
la función Plot para graficar en el plano y la función Plot3D para graficar en el espacio.
r@ x_D = Sin@ xD ;
Plot@ r@ xD , 8 x, 0, π < D
In[100]:=

0.8

0.6

0.4

0.2

0.5 1 1.5 2 2.5 3

O ut[101]= Graphics
Cuadro A5.25

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan
Versión 2009

r@x_, y_D = Sin@xD Cos@yD;


Plot3D@r@x, yD, 8x, − π , π <, 8y, − π , π <D
In[102]:=

1
0.5
0
2
-0.5
-1
0
-2
0
-2
2

Out[103]= SurfaceGraphics
Cuadro A5.26

Se pueden graficar dos o más funciones, poniéndolas entre llaves, por ejemplo:
r@x_D = Cos@xD; h@x_D = Sin@xD;
Plot@8r@xD, h@xD<, 8x, 0, π <D
In[104]:=

0.5

0.5 1 1.5 2 2.5 3

-0.5

-1

Out[105]= Graphics
Cuadro A5.27

4. Bibliografía.

[1] E. Castillo, A. Iglesias, J.M. Gutiérrez, E Álvarez y A. Cobo, “Mathematica” Editorial


Paraninfo (1993)
[2] S. Wolfram “Mathematica. A system for doing mathematics by computer” 2nd edition
Addison-Wesley (1993)

UTN-FRBB Cátedra: Elementos de Máquinas. Profesor: Dr. Ing. Marcelo Tulio Piovan

Vous aimerez peut-être aussi