69
MANEJO Y PROGRAMACIÓN DE LA HERRAMIENTA C.A.S. MATHEMATICA DANTE PINTO JERIA www. geocities.com/dantecillopinto/inicio.html [email protected] cel. 72420856 telf. 6223090 Av. Arce 597 S 19°34’51.6’’ W 65°45’21.6’’ Potosí - Bolivia 2008

Cur So Mathematica

Embed Size (px)

DESCRIPTION

matematicas

Citation preview

  • MANEJO Y PROGRAMACIN DE LA

    HERRAMIENTA C.A.S. MATHEMATICA

    DANTE PINTO JERIA

    www. geocities.com/dantecillopinto/inicio.html [email protected]

    cel. 72420856 telf. 6223090 Av. Arce 597

    S 193451.6 W 654521.6 Potos - Bolivia

    2008

  • Dante Pinto Jeria 1

    CAPTULO I

    FUNCIONES ELEMENTALES

    1.1 INTRODUCCIN.- Mathematica es un programa que pertenece a la categora de las herramientas C.A.S. (Computer lgebra System). Y es en realidad una calculadora cientfica y grfica muy sofisticada. El lado fuerte de Mathematica es su capacidad de resolucin simblica, aunque tambin permite clculos numricos. Se debe aqu indicar, que para Mathematica no es lo mismo 5. (el nmero cinco seguido del punto decimal) que 5 (sin el punto decimal). El primero es para clculos numricos y el segundo para clculos simblicos. Por tanto si en una expresin aparece cualquier numero con decimales, todos los clculos que se hagan a continuacin con esa expresin estarn en formato aproximado ( o sea con decimales). Para indicar a Mathematica que realice una operacin se debe presionar (despus de introducir la expresin) SHIFT y ENTER al mismo tiempo. Si se presiona solamente ENTER, manda al cursor a la siguiente lnea. Si se pone al final de una expresin un punto y coma ( ; ) entonces la salida no se visualiza, solo se produce el clculo de manera interna. 5 + 6 SHIFT ENTER esta es la entrada 11 esta es la salida 5 + 6; SHIFT ENTER esta es la entrada y la salida no se visualiza En Mathematica las funciones y comandos empiezan con letras maysculas y sus argumentos se encierran entre corchetes [ ]. Para Mathematica todo lo que se encuentra entre llaves { } es una lista. Los elementos se los separa mediante comas. Una matriz se la representa mediante listas de listas as,{{1,2,3},{4,5,6},{7,8,9}} es una matriz de tres por tres, cada lista, dentro de la lista mayor ,representa una fila. Los nmeros complejos se representan con la letra mayscula I para la parte imaginaria, as por ejemplo: (3 + 5 I) * (1- 4 I ) SHIFT ENTER esta es la entrada (23 7 ii) esta es la salida

  • Dante Pinto Jeria 2

    El smbolo % se utiliza para hacer referencia a la ltima salida, es similar al ans (answ er) que tienen algunas calculadoras. Pueden usarse %%, %%%, %%%%, etc para referirse a la penltima, antepenltima, etc salidas. Otra forma de usar % es poniendo a continuacin el numero de salida que se quiera rescatar, %n donde n es ese nmero. Los espacios entre dos variables o nmeros representan multiplicaciones, por eso no se debe dejar espacios entre caracteres cuando se quiere dar un nombre a una variable o funcin. Para indicar un segundo nivel de parntesis no se pueden emplear corchetes ni llaves, ya que estos tienen funciones exclusivas. Mathematica presenta unas paletas (palettes) que son ventanas que facilitan la introduccin de instrucciones. Para acceder se debe seguir la ruta File/Palettes/ y a continuacin la paleta que se quiera lanzar. La ayuda de Mathematica se la puede encontrar dentro del men Help o tambin resaltando en nombre de una funcin o comando y presionando luego F1. Otra manera de conseguir ayuda sobre una funcin o comando es poner un signo de interrogacin seguido del nombre del comando o funcin respecto del cual se quiere la ayuda ?Nombre y luego SHIFT ENTER. 1.2 CLCULOS BSICOS .-

    O peracin En Mathematica Suma x + y Resta x y Producto x*y o x y (con un espacio) Divisin x / y Potenciacin x^y Raz cuadrada Sqrt[x] Logaritmo natural Log[x] Logaritmo en base b Log[b,x] Funcin exponencial Exp[x] Seno Sin[x] Coseno Cos[x] Tangente Tan[x] Arco seno ArcSin[x] Arco coseno ArcCos[x] Arco tangente ArcTan[x] Valor absoluto Abs[x] Descomposicin en factores primos FactorInteger[x] Factorial de x Factorial[x]

  • Dante Pinto Jeria 3

    Los argumentos de las funciones trigonomtricas estn en radianes. Para utilizar grados se debe multiplicar el argumento por la palabra reservada Degree . Cos[ 60 Degree ] SHIFT ENTER entrada salida Mathematica siempre har clculos simblicos si los argumentos son simblicos o enteros, caso contrario har clculos numricos. As por ejemplo si tenemos: 2./8 SHIFT ENTER entrada 0.25 salida La salida est con decimales, ya que la entrada tiene a un nmero decimal ( el dos con un punto). En cambio para la siguiente entrada se tiene: 2/8 SHIFT ENTER entrada salida 1.3 VARIABLES.- Se almacenan variables en cualquier nombre que no pertenezca a una palabra reservada. Se escribe el nombre luego el signo = luego el valor que se desea asignar y SHIFT ENTER. A=25 SHIFT ENTER entrada 25 salida 3 A SHIFT ENTER entrada 75 salida Las variables permanecen en la memoria hasta que se sale de la sesin. Para borrar una variable se usa el comando: Clear[variable] Para borrar varias variables a la vez: Clear[variable1,variable2,variable3] Para borrar todas las variables se utiliza:

    Clear"Global`" Mathematica discrimina entre maysculas y minsculas , no es lo mismo A que a.

  • Dante Pinto Jeria 4

    1.4 TRANSFORM ACIN DE EXPRESIONES ALGEBRAICAS .- Mathematica presenta muchas funciones para la manipulacin algebraica de expresiones, las mas comunes son la expansin y la factorizacin que se manejan mediante Expand[] y Factor[], pero cuenta con muchas mas. Expand[expr] expande productos y potencias. ExpandAll[expr] aplica Expand en todas partes de la expresin. Factor[expr] reduce a un producto de factores Together[expr] pone todos los trminos sobre un denominador comn Apart[expr] separa en trminos con denominadores simples Cancel[expr] cancela factores comunes entre numeradores y denominadores Simplify[expr] intenta una serie de transformaciones algebraicas y da la mas

    pequea forma encontrada de expr FullSimplify[expr] intenta un amplio rango de transformaciones de expr involucrando

    funciones elementales y especiales, y presenta la mas simple forma encontrada

    TrigExpand[expr] expande funciones trigonomtricas presentes en expr TrigFactor[expr] factoriza funciones trigonomtricas presentes en expr TrigReduce[expr] re-escribe productos y potencies de funciones trigonomtricas en

    expr en trminos de funciones trigonomtricas con argumentos combinados

    ExpToTrig[expr] convierte los trminos exponenciales de expr en funciones trigonomtricas.

    TrigToExp[expr] convierte las funciones trigonomtricas de expr en trminos exponenciales

    Pow erExpand[expr] expande todas las potencias de productos y potencias ReplaceAll[expr, reglas] tambin se puede expresar como expr /. reglas . Reemplaza

    la expresin con lo que se indica en las reglas Map[f, expr] tambin se puede expresar como f /@ expr .Aplica f a cada

    elemento del primer nivel de expr Ejemplo: PowerExpand[Sqrt[x y]]

    x y . A partir de e ste punto ya no se indica que en las entradas se debe presionar siempre SHIFT ENTER, que e s algo que se supone hecho. Ejemplo: Expand[(1+x2+x)2] entrada

    salida Ejemplo: Factor[1-2 x + x^2] entrada

    salida Expand[Expresion, plantilla] nicamente expande lo que indica la plantilla y lo dems lo descarta

  • Dante Pinto Jeria 5

    Ejemplo: Expand[(1+x)^2+(2+x)^3+(5+y)^2,1+x] entrada

    salida Ejemplo: Expandir en fracciones parciales la siguiente expresin:

    entrada

    salida Ejemplo: Cancelar funciones iguales en le numerador y denominador de la siguiente expresin:

    Cancel 2 x2

    2 x

    entrada 2 x2 2 x salida

    como se puede apreciar la cancelacin no se efectu, para que se produzca es necesario introducir el siguiente comando:

    Cancel 2 x2

    2 x, Extension Automatic

    entrada 2 x salida

    Ejemplo: Reemplazar en

    2 x2 2 x la x con x-a

    ReplaceAll 2 x2

    2 x, x x a

    entrada 2 a x2 2 a x salida

    Tambin se pudo hacer lo mismo de la siguiente forma: 2 x2 2 x

    . x x a entrada

    2 a x2 2 a x salida

    Ejemplo: En la expresin Sinz x y reemplazar x=1 ; y=2 ; z=4 Sinz x y . x 1, y 2, z 4 2 Sin4

  • Dante Pinto Jeria 6

    Ejemplo: Invertir los elementos de las listas. Reverse a, b, c, d, e, f entrada b, a, d, c, f, e salida 1.5 RACES DE ECUACIONES.- Mathematica tiene el comando Solve[ecuaciones, variables] y Nsolve[ecuaciones, variables] para encontrar las races de una ecuacin o resolver un sistema de ecuaciones. Nsolve[] da siempre resultados numricos, en cambio Solve[] da resultados simblicos, si todos sus argumentos son simblicos. Para indicar igualdad, en estos comandos, se usa el smbolo == ( doble signo de igualdad) ya que el smbolo = representa asignacin. Ejemplo: Hallar las races de

    entrada salida

    Ejemplo: Hallar las races de

    entrada

    salida Como se puede apreciar la salida es muy complicada, debido a que se ha dado una forma simblica, para simplificar esto se utiliza el comando Nsolve[]. Ejemplo:

  • Dante Pinto Jeria 7

    entrada

    salida Ejemplo: Resolver el siguiente sistema de ecuaciones: x +3y -7z =8 ax -5y +z =4 9x -by +5z =15 Solve [{x+3*y-7*z==8,a*x-5*y+z==4,9*x-b*y+5*z==15},{x,y,z }] entrada

    salida Ejemplo: Para el anterior ejemplo, se desea almacenar los valores de los resultados en las variables x,y,z .

    Los valores de las soluciones ya se encuentran almacenados en las variables x,y z. Para comprobar se puede presionar x SHIFT ENTER y la salida es:

    Tambin se puede resolver sistemas de ecuaciones no lineale s. Ejemplo:

    entrada

    Para encontrar soluciones numricas de ecuaciones con funciones trascendentales se utiliza FindRoot. FindRoot[ecuacin, {x=x0}] busca una solucin numrica para la ecuacin empezando por x=x0. Ejemplo: Hallar el coeficiente de Darcy f para datos dados: 0.25; DD 50; Reynolds 210340.255;

    FindRoot 1 f 2Log10,

    3.7DD

    2.51Reynolds f

    , f, 0.1

    f 0.0308237

  • Dante Pinto Jeria 8

    1.6 M ANEJO DE LISTAS.- Una lista es cualquier objeto que se encuentra entre llaves { }, los objetos se separan mediante comas. 1.6.1 Aadir e lementos al final de la lista. Append[expr , e lem] Ejemplo: Append1, 2, 3, 9 1, 2, 3, 9 1.6.2 Aadir e lementos al principio de la lista. Prepend[expr , e lem] Ejemplo: Prepend1, 2, 3, 9 9, 1, 2, 3 1.6.3 Aadir e lementos al final de una lista s y almacenar e l re sultado de nuevo en

    s. AppendTo[s , e lem] Ejemplo: s a, b, c a, b, c AppendTos, 9 a, b, c, 9 s a, b, c, 9 1.6.4 Aadir e lementos al principio de una lista s y almacenar e l re sultado de

    nuevo en s. PrependTo[s , e lem] Ejemplo: s a, b, c a, b, c PrependTos, 9 9, a, b, c

  • Dante Pinto Jeria 9

    s 9, a, b, c 1.6.5 Concatenar listas.- Join[lista1, lista2,..] Ejemplo: Join1, 2, 3, a, b, c , d, f 1, 2, 3, a, b, c, d, f 1.6.6 Sumar e lementos de listas uno a uno.- La listas deben tener el mismo nmero

    de elementos. Plus[lista1,lista2,...] Ejemplo: Plus1, 2, 3, a, b, c 1 a, 2 b, 3 c Plus1, 2, 3, 7, 8, 9, 12, 2, 1 20, 12, 13 1.6.7 Sumar todos los e lementos de una lista.- Apply[Plus , lista] Ejemplo: ApplyPlus, 1, 2, 3, 4 10 1.6.8 Multiplicar todos los e lementos de una lista.- Apply[Times , lista] Ejemplo: ApplyTimes, 2, 3, b, 5, 6 180 b 1.6.9 Unin de listas.- Da una lista ordenada de todos los elementos distintos que

    aparecen en cualquiera de las listas. Union[lista1,lista2,...] Ejemplo: Uniona, b, c, b, c, d a, b, c, d Otra forma de hacer lo mismo es: a, b, c b, c, d a, b, c, d

  • Dante Pinto Jeria 10

    1.6.10 Interseccin de listas.- Da una lista ordenada de todos los elementos comunes de las listas.

    Intersection[lista1,lista2,...] Ejemplo: Intersectiona, b, c, d, b, c, d, e b, c, d Otra forma de hacer lo mismo es: a, b, c, d b, c, d, e b, c, d 1.6.11 Complemento.- Da los elementos de la primera lista que no aparecen en ninguna

    de las otras listas. Complement[lista_inicial, lista1, lista2,..] Ejemplo: Complementa, b, c, d, e, f, a, c, d, e b, f 1.6.12 O rdenar una lista.- Sort[lista] Ejemplos: Sort8, 2, 6, 7, 2, 5, 1 2, 1, 2, 5, 6, 7, 8 Sort8, 2, 6, 7, 2, 5, 1, Greater 8, 7, 6, 5, 2, 1, 2 Sortw, j, a, h, e, h, j, s a, e, h, h, j, j, s, w 1.6.13 Invertir los e lementos de una lista.- Reverse [lista] Ejemplo: Reverse1, 2, 3, 4, 5, 6, 7, 8 8, 7, 6, 5, 4, 3, 2, 1 1.6.14 Aplanar listas dentro de listas.- Flatten[lista] Ejemplo: Flatten1, 2, 3, 4, 4, 7, 9 1, 2, 3, 4, 4, 7, 9

  • Dante Pinto Jeria 11

    1.6.15 Partir los e lementos de una lista.- Divide una lista en sub-listas consistentes de elementos iguales.

    Split[lista] Ejemplo: Split1, 1, 1, 3, 3, 6, 6, 6, 2, 2, 2, 2, 3, 3, 1, 4, 4 1, 1, 1, 3, 3, 6, 6, 6, 2, 2, 2, 2, 3, 3, 1, 4, 4 1.6.16 Extraer e lementos de una lista.- Ejemplo: De la lista v ={a,b,c,d,e,f,g,h,i} extraer el cuarto elemento. v a, b, c, d, e, f, g, h, i a, b, c, d, e, f, g, h, i v4 d Ejemplo: De la lista de listas, v ={{a,b,c},{e,f,g,h}} extraer la letra g v a, b, c, e, f, g, h a, b, c, e, f, g, h v2, 3 g Ejemplo: De la lista de listas v ={{a,{b,c}},{d,e,f,g}}extraer la letra c. v a, b, c, d, e, f, g a, b, c, d, e, f, g v1, 2, 2 c 1.6.17 Reemplazar e lementos de una lista.- Ejemplo: De la lista v ={{a,{b,c}},{d,e,f,g}} reemplazar la letra c con la palabra maria. v1, 2, 2 maria maria v a, b, maria, d, e, f, g 1.6.18 Almacenar un conjunto de valores en un conjunto de variable s.- Ejemplo: a, b, c, d x, x^2 2, 1 x, 1 x x, 2 x2, 1 x, 1

    x

    1.6.19 Realizar operaciones con los e lementos de una lista.- Ejemplo: 3x x, 2 x2, 1 x, 1

    x

    3 x2, 3 x 2 x2, 3 1 x x, 3

  • Dante Pinto Jeria 12

    1.7 DEFINICIN DE FUNCIONES.- Se pueden definir funciones de la siguiente manera: Se utiliza un nombre para la funcin seguido de corchetes entre los que van los argumentos de la funcin seguidos de un guin bajo, luego de cerrar el corchete se pone dos puntos y el smbolo de igualdad y a continuacin se escribe la funcin. Para evaluar esa funcin se le pasa cualquier valor a sus argumentos y se presiona SHIFT ENTER. Ejemplo: f(x,y)=(6x^2-y^3)/(x+7xy) fx_, y_ : 6x^2 y^3 x 7x y f4, 9 633256

    f1, 2 215

    1.8 INTRODUCCIN DE CARACTERES ESPECIALES M EDIANTE EL TECLADO.- Se pueden introducir caracteres mediante el teclado de la siguiente manera:

    Caracteres Teclas presionadas Esc p Esc i Esc ii Esc e Esc ee Esc Esc inf Esc Esc a Esc Esc b Esc Esc c Esc Esc d Esc Esc e Esc Esc f Esc Esc g Esc Esc h Esc Esc i Esc Esc j Esc Esc k Esc Esc l Esc Esc m Esc Esc n Esc Esc q Esc Esc r Esc

  • Dante Pinto Jeria 13

    Esc s Esc Esc t Esc Esc w Esc Esc x Esc Esc y Esc Esc z Esc

    1.9 IM PORTACIN Y EXPORTACIN DE DATOS .- Para importar o exportar archivos en Mathematica, se debe hacer uso de los comandos Import y Export. Para exportar un archivo de Mathematica a Exce l. Export"C:\PruebadeExpor.csv", 1, 2, 3, 4, 5, 6, 7, 8, 9

    C:\PruebadeExpor.csv Luego desde Excel se abre el archivo guardado con el nombre respectivo. Y resulta:

    1 2 3 4 5 6 7 8 9

    Para importar un archivo de Exce l a Mathematica. Suponiendo que se tienen en Excel los siguientes datos:

    4 8 12 5 9 5 -54 3 6 87 6 9 45 8 6

    Se guarda esa hoja con la extensin .csv. As por ejemplo Datos.csv. Luego en Mathematica se ejecuta:

    Import"C:\Datos.csv" 4, 8, 12, 5, 9, 5, 54, 3, 6, 87, 6, 9, 45, 8, 6

  • Dante Pinto Jeria 14

    1.10 NM EROS COM PLEJOS .- Los nmeros complejos se introducen mediante la letra I : x + I y. Las funciones incorporadas para nmeros complejos son: Re[z ] devuelve la parte real del nmero z. Im[z ] devuelve la parte imaginaria de z. Conjugate [z ] devuelve el conjugado de z. Abs[z ] devuelve el mdulo de z. Arg[z ] devuelve el argumento , tal que z = z e i Ejemplo: a 3 I 7; b 5 I 8; c a b 41 59 Absc 5162 Rec

    Imc a b 7189

    11 89

    a b 8 15 Argc ArcTan 59

    41

    Conjugatec 41 59

  • Dante Pinto Jeria 15

    CAPTULO II

    OPERACIONES MATRICIALES

    2.1 INTRODUCCIN DE M ATRICES.- Mathematica representa las matrices como listas de listas, donde cada lista representa una fila. As la matriz:

    A =

    192871643

    en Mathematica se introduce como A={{3,-4,6},{1,7,8},{2,9,1}}

    El vector columna,

    B=

    5129

    se introduce como B={{9},{12},{5}}

    El vector fila, C= 852 se introduce como CC= {{2,5,8}}. Se debe notar que se usa el smbolo CC (doble C) ya que C es una palabra reservada Tambin se pueden introducir matrices mediante una paleta ubicada en: Input/Create (M atriz) y en la ventana que aparece se especifica el nmero de filas y columnas. Se puede desplazar por cada celda mediante la tecla de tabulacin (Tab). La funcin IdentityMatrix[n] crea una matriz identidad del tamao especificado por n. IdentityMatrix[5] entrada

    salida Para crear matrices tambin se usa la funcin Table [expr,{indi1,im ax},{ indi2,im ax} Table [3,{i,4},{j,4}] entrada

    salida 2.2 M ULTIPLICACIN DE M ATRICES .- La multiplicacin de matrices se realiza mediante el punto decimal ( .) en lugar del smbolo de multiplicacin tradicional (*). As si se desea multiplicar la matriz A por el vector B introduc idos arriba, se procede: A. B entrada

  • Dante Pinto Jeria 16

    {{9},{133},{131}} salida Otra forma de realizar la multiplicacin es mediante la funcin Dot[A,B] que es la multiplicacin escalar o producto escalar. Dot[A,B] entrada {{9},{133},{131}} salida Dot[CC,B] entrada {{118}} salida 2.3 REFERENCIA A ELEM ENTOS DE M ATRICES.- Para referirse a un elemento de una matriz se debe indicar el nombre de la matriz seguido por doble corchete, entre los cuales van los ndices que hacen referencia a la posicin del elemento dentro de la matriz. As en la matriz A={{3,-4,6},{1,7,8},{2,9,1}} Si se quiere referirse al elemento de la fila dos y columna tres se debe teclear: A[[2,3]] Tambin se pueden cambiar elementos de una matriz, as por ejemplo si se desea cambiar el valor del elemento en la tercera fila y segunda columna de la anterior matriz (el elemento es 9) y se quiere reemplazarlo por 18. A[[3,2]]=18 entrada 18 salida 2.4 INVERSA DE UNA M ATRIZ.- La inversa de una matriz se calcula con la funcin Inverse [] Ejemplo: Inverse [{{3,-4,6},{1,7,8},{2,9,1}}] entrada

    salida Tambin puede invertir matrices simblicamente: Ejemplo: Inverse [{{x,6,7},{-4,8,x},{1,2,x}}] entrada

    salida

  • Dante Pinto Jeria 17

    Si se deseara ver el anterior resultado en forma matricial (tal como aparecera en un libro) se utiliza el comando MatrixForm de la siguiente manera:

    entrada

    salida 2.5 TRANSPUESTA DE UNA M ATRIZ.- Ejemplo: Transpose [{{1,2,3},{2,3,4}}] entrada

    salida Ejemplo: Demostrar que la siguiente es una matriz ortogonal, o sea que su inversa es igual a su transpuesta.

    Para demostrar se multiplica la matriz transpuesta por la original, poniendo por delante la funcin de simplificacin.

    2.6 DETERM INANTE.- Ejemplo: De t[{{2,6,-11},{9,6,2},{1,6,8}}] entrada -876 salida Ejemplo: Hallar el valor de a , de manera que la matriz sea singular

  • Dante Pinto Jeria 18

    entrada

    2.7 PRODUCTO VECTORIAL .- El producto vectorial se calcula con la funcin Cross[vector1,vector2] Ejemplo: Cross[{1,2,3},{4,5,6}] entrada {-3,6,-3} salida 2.8 PRODUCTO ESCALAR.- Como ya se indico antes el producto escalar se realiza mediante el punto decimal o mediante la funcin Dot[vector1,vector2] Ejemplo: Dot[[{1,2,3},{4,5,6}] entrada 32 salida Ejemplo: Demostrar que el producto vectorial de dos vectores, origina un tercer vector que es perpendicular a los otros dos.

    entrada {0,0} salida 2.9 M DULO DE UN VECTOR.- No existe una funcin directa para calcular el mdulo de un vector, por lo tanto se lo debe hacer de la siguiente manera: Sqrt[Dot[vector,vector]] Ejemplo: Calcular el mdulo del vector {2,-6,9} Sqrt[Dot[{2,-6,9},{2,-6,9}]] entrada 11 salida 2.10 DESCOM POSICIN LU .- Para descomponer una matriz A en dos matrices triangulares inferior (L) y superior (U) de tal manera que A=LU se implementa el siguiente programa.

  • Dante Pinto Jeria 19

    A 9, 11, 54, 5, 4, 12, 12, 4, 9, 13, 9, 3,8, 16, 7, 2; L 0 A; U1 A; n LengthA;

    Fori 1, i n 1, i,aux Ai, i;Li, i aux;Forj 1, j n 1, j,Ai, j aux;

    Forj i 1, j n 1, j,aux Aj, i;Lj, i aux;Fork 1, k n 1, k,Aj, k Ai, k aux;

    ; U A; A U1; Print"L ", L MatrixForm;Print"U ", U MatrixForm;

    L

    9 0 0 04 649 0 0

    9 24 2072 0

    8 569892

    650207

    U

    1 119 659

    0 1 271614

    0 0 1 42070 0 0 1

    Se puede realizar la prueba multiplicando las matrices L y U y esto debe ser igual a la matriz original A. L.U A True

  • Dante Pinto Jeria 20

    CAPTULO III

    HERRAMIENTAS DE CLCULO

    3.1 INTRODUCCIN.- Mathematica es una herramienta ideal para resolucin de problemas de clculo, ya sea numrico o simblico. Se pueden introducir los comandos de clculo mediante el teclado o utilizando la paleta de entradas bsicas. 3.2 LM ITES.- La sintaxis de esta funcin es: Limit[expr,xx0 ], encuentra el lmite de expr cuando x se aproxima a x0 . El smbolo se introduce presionando el smbolo de y >, luego automticamente se convierte en la flecha. Ejemplo: Hallar el lmite de sen x /x cuando x tiende a cero. LimitSinx x, x 0 1 Ejemplo: Hallar el lmite de (1-cos x)/x cuando x tiende a cero. Limit 1 Cosx

    x, x 0

    0 Ejemplo: Encontrar la derivada de

    x utilizando la definicin de derivada. fx_ : x fx h fx

    h x h x

    h Limit%, h 0 12 x

    Ejemplo: Hallar la integral definida de

    2

    12xx

    mediante la suma de Riemann. Limit

    j 1

    nfcj x, x

    donde x b a

    n y cj a j x Solucin: x 1 2

    n 3n

  • Dante Pinto Jeria 21

    cj 2 j x 2 3 j

    n fx_ : 2 x fcj x 6 2 3 j

    n

    n Expand% 18 jn2

    12n

    j 1

    n%

    3 3 n

    n Expand% 3 9

    n Limit%, n 3 Ejemplo: Hallar el rea mediante la definicin de lmite de la regin limitada por f(x)=x^3 , el eje x y las rectas verticales x=0 y x=1.

    Area Limitj 1

    nfcj x, n

    cj

    jn

    x 1n

    0.2 0.4 0.6 0.8 1

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    Solucin: de acuerdo a la definicin de rea.

    Area Limitj 1

    njn31n, n

    14

  • Dante Pinto Jeria 22

    3.3 DERIVADAS.- Las derivadas se las calcula mediante la funcin D[exp.,variable de derivacin]. En realidad esta funcin es una derivada parcial de la expresin respecto de la variable de integracin que se especifica despus de la coma. Ejemplo: Encontrar la derivada, respecto de x, de xx. Dx^x, x xx 1 Logx Ejemplo: Encontrar la derivada, respecto de a, de a 2x+y/a+1/a2 Da^2x y a 1 a^2, a 2a3

    2 a x ya2

    Para hallar mltiples derivadas parciales n f / xn se utiliza D[f,{x,n}] Ejemplo: Encontrar 3 (x3y-y5x7) / x3. Dx^3y y^5 x^7, x, 3 6 y 210 x4 y5

    Ejemplo: Encontrar

    3sinxyx xy

    DSinx y, x, 2, y, 1 x y2 Cosx y 2 y Sinx y Para hallar derivadas totales se utiliza Dt[expr , x] Ejemplo: Encontrar dy/dx para la siguiente funcin implcita xy3+y2-5y-x2=-4xy2 f x y^3 y^2 5y x^2 4 x y^2 x2 5 y y2 x y3 4 x y2 Dtf, x 2 x y3 5 Dty, x 2 y Dty, x 3 x y2 Dty, x 4 y2 8 x y Dty, x % . Dty, x y1 2 x y3 5 y1 2 y y1 3 x y2 y1 4 y2 8 x y y1 Solve%, y1 y1 2 x 4 y

    2 y3

    5 2 y 8 x y 3 x y2

  • Dante Pinto Jeria 23

    Ejemplo: Un rectngulo est delimitado por el eje x y el semicrculo y 25 x2 .Qu

    largo y ancho debe tener el rectngulo de manera que su rea sea un mximo?

    (x,y)

    y= 25-x^2

    Solucin: La mitad del rectngulo tiene un rea de xy. y 25 x2 ; Am x y; Derivando el rea respecto de x e igualando a cero. DAm, x 0

    x2 25 x2

    25 x2 0

    Haciendo simplificaciones con el comando Simplify aplicado posteriormente a la expresin.

    x2

    25 x2 25 x2 0 Simplify

    25 2 x2 25 x2

    0

    Resolviendo la ecuacin.

    Solve 25 2 x2

    25 x2 0, x

    x 5 2

    , x 5 2

    Guardando este valor en x se evala y y 5

    2 Como solo se consider la mitad del rea la longitud x se debe multiplicar por 2. x 2 5 2 5 2 Y finalmente el rea ser A 2x y 25

  • Dante Pinto Jeria 24

    Ejemplo: Encontrar el valor de a que maximiza el ngulo mostrado en la figura.?Cul es el valor aproximado de este ngulo?

    99

    032 49 3

    6

    a0 10

    Solucin: ArcTan 3

    a; ArcTan 6

    10 a; ;

    SolveD, a 0, a a 10 218 , a 10 218 a 10 218 N 4.76482 Degree 98.9106 La respuesta es a=4.7648 y el ngulo es =98.9106 3.4 INTEGRALES.- Las integrales son hechas mediante la funcin: Integrate [expr , variable de integracin], esto realizar la integracin simblica de la expresin respecto de la variable especificada. Si se desea realizar una integral con lmites se utiliza: Integrate [expr , {variable de integracin , lm ite inferior , lm ite superior}]

  • Dante Pinto Jeria 25

    Ejemplo: Evaluar la integral de

    Logxx

    2 x

    Integrate Logxx

    2, x

    2x

    2 Logx

    xLogx2

    x Tambin pudo evaluarse la integral utilizando las paletas de entradas bsicas de la siguiente manera:

    Logx

    x2 x

    2x

    2 Logx

    xLogx2

    x

    Ejemplo: Se desea evaluar la integral 0

    1 1 x4 x4

    1 x2x

    , pero paso a paso lo ms que se pueda. Solucin: Lo primero es descomponer la expresin en fracciones parciales.

    Apart 1 x4 x4

    1 x2

    4 4 x2 5 x4 4 x5 x6 4

    1 x2 Luego se integra esta expresin sin lmites. %x

    4 x 4 x

    3

    3 x5 2 x

    6

    3x7

    7 4 ArcTanx

    Ahora se deben reemplazar los lmites, pero con una simple observacin se puede apreciar que el limite inferior da como resultado cero, por tanto solo reemplazamos el lmite superior de la siguiente manera.

    4 x 4 x3

    3 x5 2 x

    6

    3x7

    7 4 ArcTanx . x 1

    227

    Ejemplo: Encontrar la longitud de la curva y

    2 x3 del origen al punto donde las tangentes forman un ngulo de 45 con el eje x.

  • Dante Pinto Jeria 26

    0.1 0.2 0.3 0.4 0.5 0.6

    -0.1

    0.1

    0.2

    0.3

    0.4

    0.5

    Solucin: Se halla la derivada de la anterior ecuacin y se iguala a la tangente de 45 que es 1. De ah se despeja x. SolveD x3 , x 1, x x 4

    9

    Este es el punto de tangencia de la recta de 45 a la curva. Ahora para calcular la longitud se usa la frmula para la longitud de arco.

    0

    49 1 D x3 , x

    2x

    827

    16 227

    Si se desea un valor numrico se procede: % N 0.541756

    Ejemplo: Hallar el resultado de 0

    10

    2Sin x y yx

    0

    10

    2Sin x y y x

    4 3 Cos1 3 3 Cos 3 2 Sin1 4 3 2 Cos 2 Sin 2 % N 1.78435

  • Dante Pinto Jeria 27

    Tambin pudo procederse de la siguiente manera para obtener directamente un resultado numrico con veinte decimales. NIntegrateSin x y , y, 0, 2, x, 0, 1, 20 1.7843532528137941537

  • Dante Pinto Jeria 28

    CAPTULO IV

    ECUACIONES DIFERENCIALES Y TRANSFORMADAS DE LAPLACE

    4.1 INTRODUCCIN.- Mathematica resuelve muchas ecuaciones diferenciales de manera simblica mediante la funcin DSolve , la sintaxis de esta funcin es la siguiente: DSolve [ecuacin,y[x],x] El resultado ser una funcin despejada de y[x] en funcin de la variable independiente x. Las expresiones diferenciales se representan por y[x] 4.2 ECUACIONES DIFERENCIALES SIN CONDICIONES INICIALES.- Ejemplo: Resolver la ecuacin diferencial y(3)-2y(2)-y(1)+2y=(x+1)2 DSolvey'''x 2y''x y'x 2yx x 12, yx, x yx 1

    49 6 x 2 x2 x C1 x C2 2 x C3

    Ejemplo: Resolver la ecuacin diferencial y(2)-3y(1)+2y=e2x / ( 1 + e2x)

    DSolvey''x 3y'x 2yx 2x

    1 2x, yx, x

    yx x C1 2 x C2 1

    2x 2 x x 2 ArcTanx x Log1 2 x

    Ejemplo: Resolver el sistema de ecuaciones diferenciales siguiente. DSolveyx z'x, zx y'x, yx, zx, x zx 1

    2x 1 2 x C1 1

    2x 1 2 x C2,

    yx 12

    x 1 2 x C1 12

    x 1 2 x C2

    Ejemplo: Resolver la ecuacin diferencial (x2-y)dx-xdy = 0 DSolvex2 yx x y'x 0, yx, x yx x

    2

    3C1x

    Ejemplo: Resolver la ecuacin diferencial (1 + e2)d + 2e2d = 0 DSolve1 2 ' 2 2 0, ,

    C11 2

  • Dante Pinto Jeria 29

    Si se desea que las constantes tengan un nombre distinto al que se muestra por omisin ( la C) se debe aadir DSolveConstants k Ejemplo: DSolvey''x 2y'x Sinx x, yx, x, DSolveConstants K yx 1

    22 x K1 K2 1

    2x Sinx

    4.3 ECUACIONES DIFERENCIALES CON CONDICIONES INICIALES.- Ejemplo: Resolver la ecuacin diferencial y + 2 y +10 y = t2, sujeta a y(0)=0 y y(0)=0 DSolvey''t 2y't 10yt t2, y0 0, y'0 0, yt, t yt 1

    750t 9 t 30 t t 75 t t2 9 Cos3 t 13 Sin3 t

    Ejemplo: Resolver la ecuacin diferencial y + 2 x y = 4x, sujeta a y(0)=2 DSolvey'x 2x yx 4x, y0 2, yx, x yx 2 Ejemplo: DSolvey''x 2y'x Sinx x, y'0 0, y0 0, yx, x yx 1

    41 2 x 2 x Sinx

    Ejemplo: DSolvey'''x 3y''x 6y'x 8yx x 3x, y''0 0, y'0 0,y0 0, yx, x

    yx 3 x 351 392 x 49 4 x 8 7 x 252 x

    7056

    4.4 TRANSFORM ADAS DE LAPLACE .- Las transformadas de Laplace se las realiza mediante la funcin LaplaceTransform y la sintaxis es la siguiente: LaplaceTransform[expr, t, s] realiza la transformacin de la expresin que se encuentra en funcin de t y el resultado aparece en funcin de s. La transformada inversa de Laplace se realiza mediante la funcin InverseLaplaceTransform y la sintaxis es la siguiente: InverseLaplaceTransform[expr,s,t] realiza la transformacin inversa de la expresin que se encuentra en funcin de s y el resultado aparece en funcin de t. Ejemplo: Realizar la transformada de Laplace de e2x Sen x. Expresar el resultado en funcin de s.

  • Dante Pinto Jeria 30

    LaplaceTransform2xSinx, x, s 15 4 s s2

    Ejemplo: Realizar la transformada de Laplace de la derivada y(t) y expresar en funcin de s . LaplaceTransformy't, t, s s LaplaceTransformyt, t, s y0 Ejemplo: Realizar la transformada de Laplace de la derivada y(t) y expresar en funcin de s. LaplaceTransformy''t, t, s s2 LaplaceTransformyt, t, s s y0 y0 Ejemplo: Realizar la transformada de Laplace de la derivada y(t) y expresar en funcin de s. LaplaceTransformy'''t, t, s s3 LaplaceTransformyt, t, s s2 y0 s y0 y0

    Ejemplo: Realizar la transformada inversa de Laplace de 1

    5 4 s s2 InverseLaplaceTransform 1

    5 4 s s2, s, t

    12

    2 t 1 2 t

    El resultado no aparece en la forma original que se tena en el primer ejemplo, por tanto se debe realizar una simplificacin completa usando FullSimplify. FullSimplify% 2 t Sint Ejemplo: Resolver, utilizando transformadas de Laplace, la siguiente ecuacin diferencial y(x)-2y(x)=ex Sen x Se sacan transformadas de Laplace de ambos lados de la ecuacin. Y este resultado se almacena en la variable ec. ec LaplaceTransformy''t 2y't, t, s LaplaceTransformtSint, t, s s2 LaplaceTransformyt, t, s

    2 s LaplaceTransformyt, t, s y0 s y0 y0 12 2 s s2

    Despus se despeja los trminos que contienen LaplaceTransform ec1 Solveec, LaplaceTransformyt, t, s

  • Dante Pinto Jeria 31

    LaplaceTransformyt, t, s 1

    22 ss2 2 y0 s y0 y0

    2 s s2

    Luego se saca la transformada inversa de Laplace. InverseLaplaceTransformec1, s, t yt 1

    41 1 t 1 t 4 y0 2 y0 2 t 1 2 y0

    Este resultado se debe realizar una expansin compleja, resaltando el resultado y presionando ComplexExpand de las paletas

    yt 14

    2t

    412

    t Sint y0 y 02

    12

    2t y0

    Acomodando las constantes se logra un resultado similar a uno obtenido anteriormente.

  • Dante Pinto Jeria 32

    CAPTULO V

    GRFICOS EN DOS DIMENSIONES

    5.1 INTRODUCCIN.- Uno de los aspectos mas interesantes de Mathematica es su capacidad para realizar grficas, y en el estudio de las matemticas la geometra es indispensable para la comprensin de las mismas. Se pueden realizar varios dibujos al mismo tiempo y personalizar los mismos dndoles color, grosor, tipo de lnea, etc. 5.2 FUNCIN Plot .- La sintaxis de esta funcin es : Plot[funcin,{x,xmin,xmax},opciones] Mathematica hace la grfica dndole una escala automtica apropiada para realizar la visualizacin. Todas las opciones que tiene esta funcin se las puede acceder mediante el comando Options OptionsPlot AspectRatio 1

    GoldenRatio, Axes Automatic, AxesLabel None,

    AxesOrigin Automatic, AxesStyle Automatic, Background Automatic,ColorOutput Automatic, Compiled True, DefaultColor Automatic,Epilog , Frame False, FrameLabel None, FrameStyle Automatic,FrameTicks Automatic, GridLines None, ImageSize Automatic,MaxBend 10., PlotDivision 30., PlotLabel None, PlotPoints 25,PlotRange Automatic, PlotRegion Automatic, PlotStyle Automatic,Prolog , RotateLabel True, Ticks Automatic,DefaultFont $DefaultFont, DisplayFunction $DisplayFunction,FormatType $FormatType, TextStyle $TextStyle

    Ejemplo: PlotSinx^2 Cosx, x, Pi, Pi

  • Dante Pinto Jeria 33

    -3 -2 -1 1 2 3

    -1

    -0.5

    0.5

    1

    1.5

    2

    Graphics Ejemplo: Plotx3 3x2, x, 1, 3 -1 1 2 3

    -4

    -3

    -2

    -1

    Graphics Como se puede apreciar los ejes no tienen la misma escala, para poner la misma escala a los ejes se aade la opcin AspectRatio Automatic Plotx3 3x2, x, 1, 3, AspectRatio Automatic

  • Dante Pinto Jeria 34

    -1 1 2 3

    -4

    -3

    -2

    -1

    Graphics Si se desea eliminar los ejes se procede de la siguiente manera: Ejemplo: Plotx3 3x2, x, 1, 3, Axes False

    Graphics Para que no salga la palabra Graphics despus del grfico se debe poner un punto y coma. Para poner una etiqueta al grfico. Ejemplo: Plotx3 3x2, x, 1, 3, PlotLabel "PARABOLA DE TERCER GRADO";

  • Dante Pinto Jeria 35

    -1 1 2 3

    -4

    -3

    -2

    -1

    PARABOLA DE TERCER GRADO

    Para realizar la representacin en un determinado rango se procede: Ejemplo: Plotx Sin1 x, x, 1, 1, PlotRange 0.1, 0.1, 0.1, 0.1;

    -0.1 -0.05 0.05 0.1

    -0.1

    -0.05

    0.05

    0.1

    Pero como puede apreciarse se pierde detalle en este tipo de grfica oscilante cuando el nmero de puntos por omisin es de solo 25, por tanto se debe aumentar el nmero de puntos de la siguiente manera: Ejemplo: Plotx Sin1 x, x, 1, 1, PlotRange 0.1, 0.1, 0.1, 0.1,PlotPoints 150;

    -0.1 -0.05 0.05 0.1

    -0.1

    -0.05

    0.05

    0.1

    La opcin PlotStyle permite controlar dos aspectos de una grfica: el color y el grosor de las lneas de las grficas. El color se lo puede controlar de dos formas:

  • Dante Pinto Jeria 36

    PlotStyle RG BColor[nmero1, nmero2, nmero3] El nmero 1 corresponde al rojo el nmero 2 al verde y el nmero 3 al azul(viene de RED,GREN,BLUE). Los nmeros varan entre 0 y 1. Tambin se puede controlar el color con:

    PlotStyle Hue[argumento] El argumento es un nmero cualquiera, la funcin Hue es peridica con un periodo de 1 y va cambiando los colores de rojo a anaranjado ,amarillo, verde, azul, ail y violeta volviendo luego al rojo. El grosor se lo controla con:

    PlotStyle Thickness[argumento] El argumento indica el grosor del grfico como una fraccin del ancho total del grfico, asi PlotStyle Thickness[0.04] significa un grosor del 4% del ancho de la grfica. Ejemplo: PlotSinx^2 Cosx, x, Pi, Pi, PlotStyle RGBColor1, 0, 0;

    -3 -2 -1 1 2 3

    -1

    -0.5

    0.5

    1

    1.5

    2

    Ejemplo: PlotSinx^2 Cosx, x, Pi, Pi, PlotStyle RGBColor0, 0, 1;

    -3 -2 -1 1 2 3

    -1

    -0.5

    0.5

    1

    1.5

    2

    Ejemplo: PlotSinx^2 Cosx, x, Pi, Pi, PlotStyle Thickness0.04;

  • Dante Pinto Jeria 37

    -3 -2 -1 1 2 3

    -1

    -0.5

    0.5

    1

    1.5

    2

    Ejemplo: PlotSinx^2 Cosx, x, Pi, Pi,PlotStyle RGBColor1, 0, 0, Thickness0.02;

    -3 -2 -1 1 2 3

    -1

    -0.5

    0.5

    1

    1.5

    2

    PlotSinx^2 Cosx, x, Pi, Pi,PlotStyle Hue.5, Thickness0.02;

    -3 -2 -1 1 2 3

    -1

    -0.5

    0.5

    1

    1.5

    2

    Tambin es posible dibujar grficas de varias funciones al mismo tiempo. Ejemplo:

  • Dante Pinto Jeria 38

    PlotSinx^2 Cosx, x2, x, x, Pi, Pi,PlotStyle RGBColor1, 0, 0, Thickness0.02,

    RGBColor0, 1, 0, Thickness0.02,RGBColor0, 0, 1, Thickness0.01;

    -3 -2 -1 1 2 3

    -2

    2

    4

    Si es que se desea colocar una rejilla sobre el grfico se debe utilizar la opcin GridLines. Ejemplo:

    Plotx3 x2

    23x2

    12, x, 2, 2, GridLines Automatic;

    -2 -1 1 2

    -3

    -2

    -1

    1

    2

    Para etiquetar los ejes se utiliza AxesLabel. Ejemplo: PlotSinx^2, x, 0, 3, AxesLabel "Valor de X", "Sinx^2";

  • Dante Pinto Jeria 39

    0.5 1 1.5 2 2.5 3Valor de X

    -1

    -0.5

    0.5

    1Sin x^2

    Para poner una etiqueta al grfico se aade PlotLabel. PlotSinx^2, x, 0, 3, AxesLabel "Valor de X", "Sinx^2",PlotLabel "Grafica sinusoidal";

    0.5 1 1.5 2 2.5 3Valor de X

    -1

    -0.5

    0.5

    1Sin x^2 Grafica sinusoidal

    Tambin se puede aadir un estilo determinado a la etiqueta Ejemplo:

    Plot Sin2

    2 Cos2, , 0, ,

    PlotLabel StyleFormTraditionalForm Sin2

    2 Cos2, FontSize 16;

    0.5 1 1.5 2 2.5 3

    0.1

    0.2

    0.3

    0.4

    0.5

    sin2cos2 2

  • Dante Pinto Jeria 40

    Ejemplo:

    Plot Sin2

    2 Cos2, , 0, ,

    PlotLabel StyleFormTraditionalForm Sin2

    2 Cos2, FontSize 16,

    FontWeight "Bold";

    0.5 1 1.5 2 2.5 3

    0.1

    0.2

    0.3

    0.4

    0.5

    sin2cos2 2

    El uso de StyleForm tambin se aplica al etiquetado de ejes. 5.3 FUNCIN ListPlot .- Grafica conjuntos de puntos que se encuentran en una lista ( o sea entre llaves), los puntos son pares ordenados (tambin en una lista). La sintaxis es: ListPlot[{{x1,y1},{x2,y2},....] Ejemplo: ListPlot1, 2, 2, 4, 3, 9, 4, 16, 5, 25,

    6, 36, 7, 49, 8, 64, 9, 81;

    4 6 8

    20

    40

    60

    80

    Las opciones para esta funcin son: OptionsListPlot

  • Dante Pinto Jeria 41

    AspectRatio 1GoldenRatio

    , Axes Automatic,

    AxesLabel None, AxesOrigin Automatic,AxesStyle Automatic, Background Automatic,ColorOutput Automatic, DefaultColor Automatic,Epilog , Frame False, FrameLabel None,FrameStyle Automatic, FrameTicks Automatic,GridLines None, ImageSize Automatic,PlotJoined False, PlotLabel None,PlotRange Automatic, PlotRegion Automatic,PlotStyle Automatic, Prolog , RotateLabel True,Ticks Automatic, DefaultFont $DefaultFont,DisplayFunction $DisplayFunction,FormatType $FormatType, TextStyle $TextStyle

    Ejemplo: Realizar una grfica por tramos de las funciones x2 de 0 a 7, x de 7 a 14 y 40 de 14 a 20. a Tablex, x^2, x, 0, 7, .5;b Tablex, x, x, 7, 14, .5;c Tablex, 40, x, 14, 20, .5; d Joina, b, c;ListPlotd, PlotJoined True, AxesOrigin 0, 0,AxesOrigin 0, 0, GridLines Automatic,PlotStyle Thickness0.02, RGBColor1, 0, 0;

    5 10 15 20

    10

    20

    30

    40

    50

  • Dante Pinto Jeria 42

    5.4 FUNCIN PolarPlot .- Se debe cargar en primer lugar el paquete de grficos completo, para ello se utiliza: Needs"Graphics`Graphics`"

    o tambin

  • Dante Pinto Jeria 43

    Ejemplo: PolarPlotCos 2Cos4 Sin

    125, , 0, 14;

    -2 -1 1 2 3 4

    -3

    -2

    -1

    1

    2

    3

  • Dante Pinto Jeria 44

    5.5 FUNCIN ParametricPlot .- La sintaxis de esta funcin es : ParametricPlot[{x(t),y(t)},{t,tmin,tmax}] Ejemplo: ParametricPlotCos Sin, Sin Cos,

    , 0, 14, AspectRatio Automatic;

    -40 -20 20 40

    -40

    -20

    20

    40

    Ejemplo: ParametricPlot3Cos3, 3Sin3, , 0, 2,AspectRatio Automatic;

  • Dante Pinto Jeria 45

    -3 -2 -1 1 2 3

    -3

    -2

    -1

    1

    2

    3

    Ejemplo: Realizar una grfica de Lisajoux. ParametricPlotCos3t, Sin5t 3, t, 0, 2Pi,PlotStyle Hue.35, Thickness.01 ;

    -1 -0.5 0.5 1

    -1

    -0.5

    0.5

    1

    5.6 ANIM ACIN DE GRFICAS .- Las grficas se animan en Mathematica cuadro a cuadro, tal como se realizan los dibujos animados que vemos en la televisin. Siguiendo esta regla se realiza la animacin con cuadros que tengan una variacin pequea el uno del otro, pero que mostrados sucesivamente dan la ilusin de movimiento. Una vez hechos los cuadros se hace doble clic en cualquiera de ellos y en el primer grfico se observa la animacin. En la esquina

  • Dante Pinto Jeria 46

    inferior izquierda aparecen unos controles para la animacin, con los que se puede manejar la velocidad de la animacin, etc. Ejemplo: Realizar la animacin de una onda sinusoidal. Utilizar la funcin Table[] para crear repetidos cuadros con un cierto desplazamiento unas de otras. Table

    PlotSinx n, x, 0, 4Pi, PlotRange 1.1, 1.1,PlotStyle Huen,

    n, 0, 2Pi, Pi 10;

    Ejemplo: Si no se quiere que aparezcan todas las escenas, solo la primera , se debe aadir lo siguiente. Table

    PlotSinx n, x, 0, 4Pi, PlotRange 1.1, 1.1,PlotStyle Huen,

    n, 0, 2Pi, Pi 10;

    SelectionMoveEvaluationNotebook, All, GeneratedCell;FrontEndTokenExecute"CellGroup"FrontEndTokenExecute"OpenCloseGroup"

    5.7 EL CO MANDO Show.- Cuando se quiere almacenar la grficas en variables y mostrarlas despus se utiliza el comando Show , cuya sintaxis es la siguiente: Show[grficos, opciones] Ejemplo:

    g1 PolarPlotCos 2Cos4 Sin 12

    5, , 0, 14,

    PlotStyle RGBColor1, 0, 0;g2 ParametricPlotCos3t, Sin5t 3, t, 0, 2Pi,PlotStyle Hue.21, Thickness.01 ;

    Showg1, g2;

  • Dante Pinto Jeria 47

    -2 -1 1 2 3 4

    -3

    -2

    -1

    1

    2

    3

    -1 -0.5 0.5 1

    -1

    -0.5

    0.5

    1

  • Dante Pinto Jeria 48

    -2 -1 1 2 3 4

    -3

    -2

    -1

    1

    2

    3

    Ejemplo: Para el ejemplo anterior dibujar nicamente la ltima grfica, sin las dos primeras. g3 Showg1, g2, DisplayFunction Identity ;Showg3, DisplayFunction $DisplayFunction;

    -2 -1 1 2 3 4

    -3

    -2

    -1

    1

    2

    3

  • Dante Pinto Jeria 49

    CAPTULO VI

    GRFICOS EN TRES DIMENSIONES

    6.1 INTRODUCCIN .- Mathematica presenta numerosas funciones para grficos en tres dimensiones y su manejo es tan sencillo como el de dos dimensiones. Se pueden representar superficies, as tambin como curvas en R 3. 6.2 FUNCIN Plot3D .- Esta funcin es similar a su correspondiente en el plano que es Plot[]. La sintaxis de esta funcin es: Plot3D[funcin, {x,xmin,xmax},{y,ymin,ymax}] La funcin es del tipo f(x,y). Por tanto graficar una superficie en el espacio. Las opciones de esta funcin son: OptionsPlot3D AmbientLight GrayLevel0, AspectRatio Automatic, Axes True,AxesEdge Automatic, AxesLabel None, AxesStyle Automatic,Background Automatic, Boxed True, BoxRatios 1, 1, 0.4,BoxStyle Automatic, ClipFill Automatic, ColorFunction Automatic,ColorFunctionScaling True, ColorOutput Automatic,Compiled True, DefaultColor Automatic, Epilog ,FaceGrids None, HiddenSurface True, ImageSize Automatic,Lighting True, LightSources 1., 0., 1., RGBColor1, 0, 0,

    1., 1., 1., RGBColor0, 1, 0, 0., 1., 1., RGBColor0, 0, 1,Mesh True, MeshStyle Automatic, Plot3Matrix Automatic,PlotLabel None, PlotPoints 15, PlotRange Automatic,PlotRegion Automatic, Prolog , Shading True,SphericalRegion False, Ticks Automatic, ViewCenter Automatic,ViewPoint 1.3, 2.4, 2., ViewVertical 0., 0., 1.,DefaultFont $DefaultFont, DisplayFunction $DisplayFunction,FormatType $FormatType, TextStyle $TextStyle

  • Dante Pinto Jeria 50

    Ejemplo: Plot3Dx3y y3x, x, 1, 1, y, 1, 1;

    -1-0.5

    00.5

    1 -1

    -0.5

    0

    0.5

    1

    -0.4-0.2

    00.20.4

    -1-0.5

    00.5

    1 Ejemplo: Plot3Dx3y y3x, x, 1, 1, y, 1, 1, Boxed False, Axes False;

    Ejemplo: Realizar una animacin de la anterior grfica, variando el punto de vista. TablePlot3Dx3y y3x, x, 1, 1, y, 1, 1, Boxed False,

    Axes False, ViewPoint 1.3`, n, 1.2, n, 2, 2, .1;

  • Dante Pinto Jeria 51

    Ejemplo: Plot3Dx2 y2 x2 y2, x, 2.5, 2.5, y, 2.5, 2.5,

    ViewPoint 1.2, 0, 1, PlotPoints 50; -2

    -1

    0

    1

    2

    -2 -1 0 1 20

    0.1

    0.2

    0.3

    0

    0.1

    0.2

    0.3

    Ejemplo: Plot3D3x2 y2 Exp1 x2 y2, x, 2, 2, y, 2, 2,PlotPoints 30, ViewPoint 1.2, 2, 0.5 ;

    -2-1

    01

    2

    -2 -1 0 12

    0

    1

    2

    3

    -2-1

    01

    2

    -2 -1 0 12

    6.3 FUNCIN ContourPlot .- Esta funcin, en realidad, traza una grfica en dos dimensiones, pero est ntimamente ligada con superficies en 3D, ya que lo que dibuja son las curvas de nive l de una superficie en 3D.

  • Dante Pinto Jeria 52

    La sintaxis es la siguiente: ContourPlot[funcin,{x,xmin,xmax},{y,ymin,ymax}] Las opciones son: OptionsContourPlot AspectRatio 1, Axes False, AxesLabel None,AxesOrigin Automatic, AxesStyle Automatic,Background Automatic, ColorFunction Automatic,ColorFunctionScaling True, ColorOutput Automatic,Compiled True, ContourLines True, Contours 10,ContourShading True, ContourSmoothing True,ContourStyle Automatic, DefaultColor Automatic, Epilog ,Frame True, FrameLabel None, FrameStyle Automatic,FrameTicks Automatic, ImageSize Automatic, PlotLabel None,PlotPoints 15, PlotRange Automatic, PlotRegion Automatic,Prolog , RotateLabel True, Ticks Automatic,DefaultFont $DefaultFont, DisplayFunction $DisplayFunction,FormatType $FormatType, TextStyle $TextStyle

    Ejemplo: Dibujar las curvas de nivel de la grfica del anterior ejemplo. ContourPlot3x2 y2 1 x2 y2, x, 2, 2, y, 2, 2,PlotPoints 50;

    -2 -1 0 1 2-2

    -1

    0

    1

    2

  • Dante Pinto Jeria 53

    6.4 FUNCIN ParametricPlot3D .- Esta funcin puede realizar curvas paramtricas en 3D, as tambin como superficies parametrizadas en 3D. La sintaxis de esta funcin es: ParametricPlot3D[{fx,fy,fz },{t,tmin.tmax}] Esto produce una curva en 3D parametrizada por la variable t desde tmin hasta tmax. ParametricPlot3D[{fx,fy,fz },{t,tmin,tmax},{u,umin,umax}] Produce una superficie parametrizada por t y u Las opciones son: OptionsParametricPlot3D AmbientLight GrayLevel0., AspectRatio Automatic,Axes True, AxesEdge Automatic, AxesLabel None,AxesStyle Automatic, Background Automatic,Boxed True, BoxRatios Automatic,BoxStyle Automatic, ColorOutput Automatic,Compiled True, DefaultColor Automatic, Epilog ,FaceGrids None, ImageSize Automatic, Lighting True,LightSources 1., 0., 1., RGBColor1, 0, 0, 1., 1., 1.,

    RGBColor0, 1, 0, 0., 1., 1., RGBColor0, 0, 1,Plot3Matrix Automatic, PlotLabel None, PlotPoints Automatic,PlotRange Automatic, PlotRegion Automatic,PolygonIntersections True, Prolog , RenderAll True,Shading True, SphericalRegion False, Ticks Automatic,ViewCenter Automatic, ViewPoint 1.3, 2.4, 2.,ViewVertical 0., 0., 1., DefaultFont $DefaultFont,DisplayFunction $DisplayFunction,FormatType $FormatType, TextStyle $TextStyle

    Ejemplo: ParametricPlot3DCost, Sint, t, t, 0, 4;

  • Dante Pinto Jeria 54

    -1-0.500.51

    -1-0.500.5

    10

    5

    10

    Ejemplo: Realizar la grfica de las lneas que delimitan una escalera en hlice. ParametricPlot3D

    1.4Cost, 1.4Sint, 0.175 3t 2, RGBColor1, 0, 0,1.4Cost, 1.4Sint, 0.175 3t 2, RGBColor0, 0, 1,1.6Cost, 1.6Sint, 0.175 3t 2, RGBColor1, 0, 1,1.6Cost, 1.6Sint, 0.175 3t 2, RGBColor1, 0, 0,

    t, 0, 2, ViewPoint 0.89, 4, 1.03,AxesLabel "Eje X", "Eje Y", "Eje Z";

  • Dante Pinto Jeria 55

    -1 0 1Eje X

    -1

    01

    Eje Y0

    1

    2

    3

    Eje Z

    -1 0 1Eje X

    Ejemplo: ParametricPlot3D20Sinu Cosv, 20Sinu Sinv, 40Cosu,

    u, 0, 3, v, 0, 2;

    -10

    0

    10-10

    0

    1020

    25

    30

    35

    40

    -10

    0

    10

    Ejemplo:

  • Dante Pinto Jeria 56

    r 2; ParametricPlot3D

    Cosu r

    Cosu Cosv 4 Sinu Sinv 17

    ,

    Sinu r

    Cosv Sinu 4 Cosu Sinv 17

    , 4 u r Sinv 17

    ,

    u, 0, 2, v, 0, 2, ViewPoint 2, 2.4, 5; -2

    0

    2-2

    0

    2

    0

    10

    20

    -2

    0

    2

    0

    10

    20

    Ejemplo: ParametricPlot3DCosu, Sinu, u 10, RGBColor1, 0, 0,

    u, 0, 16, PlotPoints 150;

  • Dante Pinto Jeria 57

    -1 -0.5 0 0.5 1

    -1-0.5

    00.5

    1

    0

    2

    4

    -1-0.5

    00.5

    1

    Ejemplo: Graficar una esfera. ParametricPlot3DSin Cos, Sin Sin, Cos,

    , , , , 0, ;

    -1-0.5

    00.5

    1

    -1

    -0.50

    0.51

    -1

    -0.5

    0

    0.5

    1

    -1-0.5

    00.5

    1

    -1

    -0.50

    0.51

  • Dante Pinto Jeria 58

    6.5 FUNCIN SurfaceOfRevolution .- Esta funcin traza la grfica de una superficie de revolucin, se le debe dar como argumentos una grfica en el plano, que rota alrededor de un eje. Pero antes es necesario cargar el paquete: Graphics`SurfaceOfRevolution` La sintaxis de esta funcin es: SurfaceO fRevolution[f,{x,xmin,xmax}] o tambin, SurfaceO fRevolution[{fx,fy}, {t,tmin,tmax}] o tambin, SurfaceO fRevolution[{fx, fy, fz }, {t, tmin, tmax}] Las opciones son: OptionsSurfaceOfRevolution RevolutionAxis 0, 0, 1,AmbientLight GrayLevel0., AspectRatio Automatic,Axes True, AxesEdge Automatic, AxesLabel None,AxesStyle Automatic, Background Automatic,Boxed True, BoxRatios Automatic,BoxStyle Automatic, ColorOutput Automatic,Compiled True, DefaultColor Automatic, Epilog ,FaceGrids None, ImageSize Automatic, Lighting True,LightSources 1., 0., 1., RGBColor1, 0, 0,

    1., 1., 1., RGBColor0, 1, 0,0., 1., 1., RGBColor0, 0, 1,

    Plot3Matrix Automatic, PlotLabel None,PlotPoints Automatic, PlotRange Automatic,PlotRegion Automatic, PolygonIntersections True,Prolog , RenderAll True, Shading True,SphericalRegion False, Ticks Automatic,ViewCenter Automatic, ViewPoint 1.3, 2.4, 2.,ViewVertical 0., 0., 1., DefaultFont $DefaultFont,DisplayFunction $DisplayFunction,FormatType $FormatType, TextStyle $TextStyle

    Ejemplo: SurfaceOfRevolutionx^2, x, 0, 3;

  • Dante Pinto Jeria 59

    -20

    2

    -2

    02

    0

    2

    4

    6

    8

    -2

    02

    Ejemplo: SurfaceOfRevolutiont Cost, t Sint, t, 0, 2;

    -5

    0

    5-5

    0

    5

    -4

    -2

    0

    -5

    0

    5

  • Dante Pinto Jeria 60

    CAPTULO VII PROGRAMACIN

    7.1 INTRODUCCIN .- Una vez que se aprendieron todos los aspectos de los anteriores seis captulos, programar en Mathematica solamente se reduce a aprender a usar los siguientes conceptos y comandos adicionales: Conceptos.- Variable s Locale s. Variable s Locale s. Comandos.- If For Do Break Input Print Comandos un tanto mas avanzados.- Which While Trace

    As de fcil es programar! Los programas consisten de una serie de instrucciones separadas por punto y coma. En los anteriores ejemplos ya hicimos ms de una instruccin seguida por punto y coma, esos ya son programas, aunque no tengan los comandos indicados arriba. 7.2 VARIABLES GLOBALES Y LOCALES.- Las variables globales tienen vigencia en todo el mbito del programa, en cambio las locales solo tienen vigencia dentro de su mbito de definicin. Para utilizar variables lo cales es necesario utilizar el comando Module [{x,y,... ,expr] que especifica que x ,y,etc. deben ser tratados como variables locales. Ejemplo: Modulex, y, x 5; y 4; c x y 54

  • Dante Pinto Jeria 61

    Si ahora tecleamos x SHIFT ENTER o y SHIFT ENTER, veremos que no hay valores asignados a esas variables. En cambio la variable c si tiene valor, ya que es una variable global. 7.3 COM ANDO INPUT .- Este comando permite la entrada de datos a travs de una ventana. La sintaxis es: Input[Mensaje] Se pueden introducir nmeros o smbolos. Ejemplo: x Input"Introduce un valor para x "; 7.4 COM ANDO PRINT .- Este comando imprime en la pantalla un mensaje. Los mensajes de texto deben estar entre comillas. Ejemplo: x 5; Print"El valor es ", x, " metros" El valor es 5 metros 7.5 COM ANDO IF .- Es un condicional, muy parecido a los usados en otros lenguajes de programacin. Su sintaxis es: If[prueba, accin 1, accin 2] si la prueba es verdadera ejecuta la accin 1, caso contrario la accin 2. Ejemplo: Hacer un programa que permita la introduccin de un numero y diga si el numero es par o impar. n Input"Intro el numero"; IfModn, 2 0, impar, par impar La salida depender del nmero introducido. Aqu se est utilizando la funcin Mod, que devuelve el residuo de la divisin de los dos argumentos que se le suministran, en este caso el residuo de n / 2. 7.6 COM ANDO FOR .- Este es un bucle que realiza iteraciones. Su sintaxis es: For[inicio, prueba, incremento, cuerpo de l bucle ]

  • Dante Pinto Jeria 62

    Ejemplo: Fori 1, i 5, i, Printi 1 2 3 4 El incremento se lo realiz con el smbolo i++, un decremento se lo puede hacer con i--, de esta manera los incrementos o decrementos son de uno en uno. Ejemplo: Fori 1, i 4, i i .5, Printi 1 1.5 2. 2.5 3. 3.5 En este ejemplo el incremento es de 0.5 7.7 COM ANDO DO .- Es un comando de bucle. La sintaxis es: Do[expr, i, im ax] evala expr con la variable i sucesivamente tomando los valores desde 1 hasta imax Do[expr, i, im in, im ax] empieza con i = imin. Do[expr, i, im in, im ax, di] usa el paso di. Do[expr, i, im in, im ax, j, jm in, jm ax, ] evala expr incrementando sobre diferentes valores de j, etc. para cada i. Ejemplo: Hacer un programa que efectu la suma de los primeros n nmeros. n Input"Intro. el numero"; sum 0; Dosum i, i, n;Print"La suma de los primeros ", n, " numeros es ", sum La suma de los primeros 100 numeros es 5050 En este ejemplo se utiliz la notacin sum+=i, que es equivalente a sum=sum+i

    7.8 COM ANDO BREAK .- Interrumpe bucles Do, For o While. Su sintaxis es Break[]

  • Dante Pinto Jeria 63

    Ejemplo: t 1; Dot k; Printt; Ift 10, Break, k, 20 1 2 6 24 En este ejemplo se utiliz la notacin t*=k, que es equivalente a t=t*k 7.9 EJEM PLOS DE PROGRAM ACIN .- Ejemplo: Hacer un programa que calcule el rea, y el centroide de una figura delimitada por dos curvas en el eje y y por dos lmites en el eje x . y2 Input"Curva superior"; y1 Input"Curva inferior";x1 Input"Limite inferior"; x2 Input"Limite superior";area Integratey2 y1, x, x1, x2;xraya SimplifyIntegratey2 y1 x, x, x1, x2 area;yraya SimplifyIntegratey2 y1 ^2 2, x, x1, x2 area;Print"El area es ", area; Print"xraya es ", xraya;Print"Yraya es ", yraya; Ejemplo: Hacer un programa para una grfica animada en tres dimensiones de una gota que cae en el agua. DoPlot3DCos x^2 y^2 Absn 2Pi

    x^2 y^2 1 4 , x, 4Pi, 4Pi, y, 4Pi, 4Pi,PlotPoints 26, Lighting True, PlotRange 2, 2,BoxRatios 1, 1, 1, Boxed False, Axes None,

    n, 0, 2Pi 2Pi 16, 2Pi 16 ;SelectionMoveEvaluationNotebook, All, GeneratedCell;FrontEndTokenExecute"CellGroup";FrontEndTokenExecute"OpenCloseGroup"

    Ejemplo: Hacer un programa que calcule las fuerzas de empotramiento de una viga. Considerar momento horario positivo, fuerzas puntuales hacia arriba positivas, fuerzas distribuidas hacia abajo positivas.

  • Dante Pinto Jeria 64

    ClearVA, MA, VB, MB; LIM L; FP VA; FD A x B; MP MA;simbolico 1;nt LengthLIM;Mx LIM;V0 0;M0 0;Clearx;Fori 1, i nt 1, i,

    V0 V0 FPi;M0 M0 MPi;Mxi

    ExpandM0 V0 x x IntegrateFDi, x, 0, x Integratex FDi, x, 0, x;x LIMi;M0 ExpandMxi;Clearx;V DMxi, x;x LIMi;V0 ExpandV;Clearx;

    ;s1 ; s2 ;Fori 1, i nt 1, i,s1 Appends1, IntegrateMxi DMxi, VA, x, 0, LIMi;s2 Appends2, IntegrateMxi DMxi, MA, x, 0, LIMi;

    ;sol SolveApplyPlus, s1 0, ApplyPlus, s2 0, VA, MA;VA sol1, 1, 2; MA sol1, 2, 2;masalis_ : Moduleaux, nn,

    nn Lengthlis;aux 0;lisres ;Fori 1, i nn, i,aux aux lisi;lisres Appendlisres, aux

    ;

  • Dante Pinto Jeria 65

    masaLIM; lisres Droplisres, 1; lisres Prependlisres, 0;longitud ApplyPlus, LIM;brazof longitud lisres; fdr ; fdx ;Fori 1, i nt 1, i,p1 IntegrateFDi, x, 0, LIMi;Ifp1 0, d1 0, d1 Integratex FDi, x, 0, LIMi p1;fdr Appendfdr, p1; fdx Appendfdx, d1;

    ;fdx fdx lisres; fdx longitud fdx; MB ApplyPlus, FP brazof MP fdr fdx;VB ApplyPlus, FP fdr;Print"Los momentos son: MA ",Ifsimbolico 1, SimplifyStyleFormMA, FontWeight "Bold",NStyleFormMA, FontWeight "Bold", " , MB ",

    Ifsimbolico 1, SimplifyStyleFormMB, FontWeight "Bold",NStyleFormMB, FontWeight "Bold", " Horario Positivo";

    Print"Las cortantes son:VA ",Ifsimbolico 1, SimplifyStyleFormVA, FontWeight "Bold",NStyleFormVA, FontWeight "Bold", " , VB ",

    Ifsimbolico 1, SimplifyStyleFormVB, FontWeight "Bold",NStyleFormVB, FontWeight "Bold", " Arriba Positivo";

    En el programa los momentos horarios son positivos , las cargas distribuidas hacia abajo son positivas , las cargas puntuale s hacia arriba son positivas . Como ejemplo para la siguiente estructura.

    A B80

    L

    q=Ax+B

    La entrada debe ser LIM L; FP VA; FD A X B; MP MA; Y el resultado es Los momentos son: MA 1

    12L2 BAX , MB 1

    12L2BAX Horario Positivo

    Las cortantes son:VA 1

    2LBAX , VB 1

    2LBAX Arriba Positivo

  • Dante Pinto Jeria 66

    Para la siguiente estructura calcular los momentos fijos de empotramiento

    13 T-m

    5 T/m2.5 T/m

    13 T

    20 20 80 20 20

    A B

    5m 5m 20m 5m 5m

    La entrada de datos para este caso es: LIM 5, 5, 20, 5, 5; FP VA, 0, 0, 0, 13; FD 0, 0, 5 0.125 x, 0, 0;MP MA, 13, 0, 0, 0;

    Y la salida es Los momentos son: MA 361.458 , MB 373.167 Horario Positivo Las cortantes son:VA 41.2406 , VB 46.7594 Arriba Positivo Ejemplo: Hallar el valor de c de manera que las reas A1 y A2 sean iguales. A1 es el rea entre la recta y=c y la parbola y=2x-3x^3, y A2 es el rea entre la parbola y la recta.

  • Dante Pinto Jeria 67

    Clearx, c, x1, x2; dat ; Fori 1, i 6201, i,dat Appenddat, ; con 0;Docon;c i; Clearx2;ecu Solve2x 3x^3 c 0, x;x1 ecu2, 1, 2;x2 ecu3, 1, 2;datcon i, Integratec 2x 3x^3, x, 0, x1 Integrate2x 3x^3 c, x, x1, x2,

    i, 0.0001, 0.62, 0.0001; ecu1 Fitdat, 1, x, x^2, x^3, x;ListPlotdat;Solveecu1 0, x;

    0.1 0.2 0.3 0.4 0.5 0.6

    -0.1

    0.1

    0.2

    0.3

    x 2.75394, x 0.444478, x 1.87019 La solucin es c = 0.444478 Para comprobar la exactitud c 0.44447776431510794`; ecu Solve2x 3x^3 c 0, x;x1 ecu2, 1, 2;x2 ecu3, 1, 2;Integratec 2x 3x^3, x, 0, x1 Integrate2x 3x^3 c, x, x1, x2 N

    0.000022213

  • Dante Pinto Jeria 68

    Ejemplo: Hacer un programa para calcular el rotacional, la divergencia, el gradiente y el laplaciano. Utilizar mdulos (subrutinas) para realizar la programacin. rotvec_ : Modulea, b, c, m, n, p, m vec1;n vec2; p vec3; a Dp, y Dn, z;b Dp, x Dm, z; c Dn, x Dm, y; a, b, c;

    divvec_ : Modulea, b, c, m, n, p, m vec1;n vec2; p vec3; a Dm, x; b Dn, y;c Dp, z; ApplyPlus, a, b, c;

    gradvec_ : Modulea, b, c, a Dvec, x; b Dvec, y;c Dvec, z; a, b, c;

    laplavec_ : Modulea, b, c, a Dvec, x, 2;b Dvec, y, 2; c Dvec, z, 2;ApplyPlus, a, b, c;

    grad x2 y2 z2

    x x2 y2 z2

    , y x2 y2 z2, z x2 y2 z2

    divx2z, 2y3z2, x y2z x y2 2 x z 6 y2 z2 rot9x2y3, 7x y z2, x2y z5 14 x y z x2 z5, 2 x y z5, 27 x2 y2 7 y z2 laplax y2 2 x z 6 y2 z2 2 x 12 y2 12 z2 divrot9x2y3, 7x y z2, x2y z5 0