Introducción Al Mathematica

8
Introducción al programa Mathematica . Introducción. Mathematica es un programa de Cálculo Simbólico de gran potencia. El enorme número de comandos y funciones internas que posee lo hacen aplicable en multitud de tareas que requieren un soporte matemático o gráfico. En un nivel básico, puede ser utilizado para realizar cálculos numéricos y simbólicos, así como para realizar representaciones gráficas de funciones. Además, en niveles más avanzados, puede ser utilizado también como lenguaje de programación de gran versatilidad dado que posee incorporadas funciones e instrucciones que en los lenguajes tradicionales requerían rutinas adicionales. El programa se estructura internamente en dos partes bien diferenciadas: - El k e r n e l (Núcleo) que es la parte encargada de la realización de los cálculos. Es la parte "pensante" de Mathematica y requiere bastante memoria para su funcionamiento. - El F r o n t - E n d (Fachada) que es lo que vemos al arrancar Mathematica y no es más que un editor de texto donde escribimos los comandos que deseamos ejecutar. De esta forma, ante una determinada operación a realizar, lo que tendremos que hacer será escribirla apropiadamente, esto es, en la sintaxis propia de Mathemat- ica, en una hoja o Notebook y cuando terminemos ejecutarla mediante la tecla Intro del teclado numérico, o con la pulsación simultánea de Mayusculas+Enter. El Front-End (o Fachada) presenta una serie de menús y opciones que son similares a las de un editor de texto, que se irán mostrando cuando sean necesarios. También se dispone de una serie de opciones propias del Mathematica y de un menú de Ayuda que puede resultar de utilidad en una primera aproximación a este programa. Los elementos gráficos se encuentran en las Paletas (Palettes), de las cuales las que vamos a utilizar con más frecuencia son la BasicInput, o la BasicMathAssistant. De todas formas, todas las instrucciones pueden ser escritas en un editor de texto (por ejemplo, para poder ser utilizadas con versiones anteriores de Mathematica). Una primera visión de Mathematica : algunos comandos. Utilicemos Mathematica para realizar operaciones elementales. Para ello, vamos a mostrar las instruc- ciones que le suministramos al Mathematica en negrita (correspondientes a lo que llamaremos células de entrada o I n p u t ), y las respuestas del Mathematica (correspondientes a lo que llamaremos células de salida o O u t p u t ) dentro de un cuadro, como podemos ver en el próximo párrafo. Los tipos diferentes de células están remarcadas con diferente símbolo a la derecha del notebook. También puede haber células de texto, no evaluables, en las que escribir comentarios, instrucciones, etc. Departamento de Matem 1

description

Mathematica es un programa de Cálculo Simbólico de gran potencia. El enorme número de comandos y funciones internas que posee lo hacen aplicable en multitud de tareas que requieren un soporte matemático o gráfico.

Transcript of Introducción Al Mathematica

  • Introduccin al programa

    Mathematica .

    Introduccin.

    Mathematica es un programa de Clculo Simblico de gran potencia. El enorme nmero de comandos

    y funciones internas que posee lo hacen aplicable en multitud de tareas que requieren un soporte matemtico o

    grfico. En un nivel bsico, puede ser utilizado para realizar clculos numricos y simblicos, as como para

    realizar representaciones grficas de funciones. Adems, en niveles ms avanzados, puede ser utilizado

    tambin como lenguaje de programacin de gran versatilidad dado que posee incorporadas funciones e

    instrucciones que en los lenguajes tradicionales requeran rutinas adicionales.

    El programa se estructura internamente en dos partes bien diferenciadas:

    - El kernel (Ncleo) que es la parte encargada de la realizacin de los clculos. Es la parte "pensante"

    de Mathematica y requiere bastante memoria para su funcionamiento.

    - El Front-End (Fachada) que es lo que vemos al arrancar Mathematica y no es ms que un editor de

    texto donde escribimos los comandos que deseamos ejecutar. De esta forma, ante una determinada operacin a

    realizar, lo que tendremos que hacer ser escribirla apropiadamente, esto es, en la sintaxis propia de Mathemat-

    ica, en una hoja o Notebook y cuando terminemos ejecutarla mediante la tecla Intro del teclado numrico, o

    con la pulsacin simultnea de Mayusculas+Enter.

    El Front-End (o Fachada) presenta una serie de mens y opciones que son similares a las de un editor

    de texto, que se irn mostrando cuando sean necesarios. Tambin se dispone de una serie de opciones propias

    del Mathematica y de un men de Ayuda que puede resultar de utilidad en una primera aproximacin a este

    programa.

    Los elementos grficos se encuentran en las Paletas (Palettes), de las cuales las que vamos a utilizar

    con ms frecuencia son la BasicInput, o la BasicMathAssistant. De todas formas, todas las instrucciones

    pueden ser escritas en un editor de texto (por ejemplo, para poder ser utilizadas con versiones anteriores de

    Mathematica).

    Una primera visin de Mathematica : algunos comandos.

    Utilicemos Mathematica para realizar operaciones elementales. Para ello, vamos a mostrar las instruc-

    ciones que le suministramos al Mathematica en negrita (correspondientes a lo que llamaremos clulas de

    entrada o Input), y las respuestas del Mathematica (correspondientes a lo que llamaremos clulas de salida o

    Output) dentro de un cuadro, como podemos ver en el prximo prrafo. Los tipos diferentes de clulas estn

    remarcadas con diferente smbolo a la derecha del notebook. Tambin puede haber clulas de texto, no

    evaluables, en las que escribir comentarios, instrucciones, etc.

    Dentro de una clula In, tambin se puede evitar la evaluacin mediante un encabezado con (* y

    terminando con *). Lo que se escriba entre esos dos parntesis con asterisco, que aparece con otro color, es

    considerado un comentario y no se evaluar.

    El primer y ms sencillo uso de Mathematica es como calculadora. La sintaxis es la usual, dejando un

    espacio en blanco para la multiplicacin ( o bien * ). Expresiones del estilo 2x lo comprende como 2 por x, sin

    embargo ax no; es conveniente, por tanto, dejar el espacio siempre.

    Departamento de Matem 1

  • Utilicemos Mathematica para realizar operaciones elementales. Para ello, vamos a mostrar las instruc-

    ciones que le suministramos al Mathematica en negrita (correspondientes a lo que llamaremos clulas de

    entrada o Input), y las respuestas del Mathematica (correspondientes a lo que llamaremos clulas de salida o

    Output) dentro de un cuadro, como podemos ver en el prximo prrafo. Los tipos diferentes de clulas estn

    remarcadas con diferente smbolo a la derecha del notebook. Tambin puede haber clulas de texto, no

    evaluables, en las que escribir comentarios, instrucciones, etc.

    Dentro de una clula In, tambin se puede evitar la evaluacin mediante un encabezado con (* y

    terminando con *). Lo que se escriba entre esos dos parntesis con asterisco, que aparece con otro color, es

    considerado un comentario y no se evaluar.

    El primer y ms sencillo uso de Mathematica es como calculadora. La sintaxis es la usual, dejando un

    espacio en blanco para la multiplicacin ( o bien * ). Expresiones del estilo 2x lo comprende como 2 por x, sin

    embargo ax no; es conveniente, por tanto, dejar el espacio siempre.

    245 * 4079

    999 355

    1020 345H* 2+2 *L

    68

    23

    Podemos ver en la cuenta anterior que no nos da el resultado con decimales, sino que hace una

    simplificacin y lo deja escrito como un nmero racional. Esto es porque Mathematica es absolutamente

    exacto en sus clculos, as, si escribimos:

    3

    3

    Es decir, nunca obtendremos un resultado aproximado introduciendo un dato exacto. Si queremos

    obtener una estimacin de la raz cuadrada de 2 tenemos varias opciones. Una de ellas consiste en escribir:

    3.

    1.73205

    Dado que para Mathematica , el nmero 3. es un nmero aproximado, mientras que el nmero 3 es

    absolutamente exacto.

    Otra opcin es utilizar un comando que calcule el valor nmerico de esa expresin. Todos los coman-

    dos de Mathematica se escriben con la primera letra en maysculas y el argumento entre corchetes [ ]. En este

    caso, el comando que vamos a aplicar es N[expresin], de la forma:

    NB 3 F1.73205

    Los comandos de Mathematica suelen admitir opciones, que generalmente se escriben dentro del

    argumento, separados por comas. En este caso, por ejemplo, utilizamos el comando N[expresion, numero de

    decimales], que permite especificar el nmero de dgitos que queremos obtener:

    NB 3 , 50F1.7320508075688772935274463415058723669428052538104

    Hay otra forma de aplicar los comandos en Mathematica: si no se van a incluir opciones, se puede

    aplicar un comando (o una funcin) a una expresin cualquiera al final de esa expresin, escribiendo ese

    comando despus de una doble barra.

    As, por ejemplo, este comando N se puede aplicar escribiendo:

    Pr Introducci

    2 Departamento de Matem

  • Hay otra forma de aplicar los comandos en Mathematica: si no se van a incluir opciones, se puede

    aplicar un comando (o una funcin) a una expresin cualquiera al final de esa expresin, escribiendo ese

    comando despus de una doble barra.

    As, por ejemplo, este comando N se puede aplicar escribiendo:

    3 N1.73205

    Este mtodo de la doble barra es utilizable para cualquier comando, y se refiere a la aplicacin de

    dicho comando sobre la expresin previa; por ejemplo, si queremos calcular el logaritmo de un nmero

    podemos escribir:

    Log@1D0

    O bien escribimos:

    1 Log0

    El manejo de expresiones simblicas es similar. Veamos algunos ejemplos; si escribimos una funcin

    racional:

    Ha x+ 9L4 H2 x+ bLx2 - 1

    Hb+ 2 xL H9+ a xL4

    -1+ x2

    Tambin podemos dar la expresin a Mathematica con un ";" para que no nos muestre lo mismo:

    Ha x+ 9L4 H2 x+ bLx2 - 1

    ;

    Si queremos desarrollar la expresin anterior, podemos escribir (donde la expresin % indica el

    resultado inmediatamente anterior):

    Expand@%D6561 b

    -1+ x2+

    13 122 x

    -1+ x2+

    2916 a b x

    -1+ x2+

    5832 a x2

    -1+ x2+

    486 a2 b x2

    -1+ x2+

    972 a2 x3

    -1+ x2+

    36 a3 b x3

    -1+ x2+

    72 a3 x4

    -1+ x2+

    a4 b x4

    -1+ x2+

    2 a4 x5

    -1+ x2

    Podemos, por ejemplo, integrar la expresin resultante sin ms que escribir:

    Introducci Pr

    Departamento de Matem 3

  • %x1

    6Ia x I34 992+ 2916 a Hb+ xL+ 36 a2 I3 b x+ 4 I3+ x2MM+ a3 I3 x I2+ x2M+ 2 b I3+ x2MMM+

    3 H9+ aL4 H2+ bL Log@-1+ xD- 3 H-9+ aL4 H-2+ bL Log@1+ xDM

    Se recomienda tener mucha precaucin a la hora de utilizar el smbolo %, pues puede llevar a confu-

    siones si se cambia el orden de las evaluaciones: habitualmente es preferible dar un nombre a la expresin y

    utilizarlo posteriormente. Tambin suele resultar de utilidad mostrar el nmero de input/output, por lo menos

    mientras se est desarrollando el razonamiento.

    funcion =Ha x+ 9L4 H2 x+ bL

    x2 - 1;

    Expand@funcionD funcionx

    6561 b

    -1+ x2+

    13 122 x

    -1+ x2+

    2916 a b x

    -1+ x2+

    5832 a x2

    -1+ x2+

    486 a2 b x2

    -1+ x2+

    972 a2 x3

    -1+ x2+

    36 a3 b x3

    -1+ x2+

    72 a3 x4

    -1+ x2+

    a4 b x4

    -1+ x2+

    2 a4 x5

    -1+ x2

    1

    6Ia x I34 992+ 2916 a Hb+ xL+ 36 a2 I3 b x+ 4 I3+ x2MM+ a3 I3 x I2+ x2M+ 2 b I3+ x2MMM+

    3 H9+ aL4 H2+ bL Log@-1+ xD- 3 H-9+ aL4 H-2+ bL Log@1+ xDM

    La sintaxis de Mathematica

    Mathematica requiere de un especial cuidado en la sintaxis utilizada. Por ejemplo, hay que tener

    cuidado con los siguientes aspectos:

    - Maysculas: Como ya hemos indicado, las funciones de Mathematica comienzan siempre con una

    mayscula. A la hora de definir funciones propias, puede ser aconsejable definirlas con minscula, para no

    causar confusiones. De todas formas, Mathematica proporciona varios avisos cuando cree que se est come-

    tiendo un error en una definicion: indica lo escrito incorrectamente con otro color, no indica las respuestas, da

    opciones de escritura, y muestra avisos por pantalla:

    Cos@PiD

    -1

    Pr Introducci

    4 Departamento de Matem

  • cos@PiDGeneral::spell1 :Possible spelling error: new symbol name "cos" is similar to existing symbol "Cos".

    cos@D

    Cos@piD

    Cos@piD

    En este ltimo caso, nos ha devuelto la propia definicin: no ha comprendido que estamos intentando

    calcular el valor del coseno de .

    - Llaves, parntesis y corchetes: Cada uno de ellos tiene una funcin en Mathematica. Los corchetes

    son necesarios para la definicin de las funciones. Los parntesis se emplean para realizar los clculos

    matemticos. Y las llaves indican listas (las veremos con ms detalle en una prctica posterior).

    Cos@PiD

    -1

    Cos HPiL

    Cos

    Cos 8Pi 2, c -> x >4 a+ 2 b+ x

    Como vemos, aplica ambas sustituciones independientemente. Existe una forma de ordenarle "aplicar

    las sustituciones tantas veces como sea posible" con el comando //.

    polinomio . :x -> 2, c -> x >2 + 4 a+ 2 b

    - Asignaciones: Usar habitualmente asignaciones de nombre tiene cierto riesgo si uno acostumbra a

    utilizar simples letras. As, x=2 provoca que en el resto de la sesin deMathematica la letra x y el nmero 2

    sean indistinguibles. Por ello, es aconsejable, cuando uno va a utilizar las letras x, y, f, por ejemplo, comenzar

    con:

    Clear@x, y, fDque elimina cualquier asignacin que tuvieran previamente.

    - Funciones: La definicin de una funcin en Mathematica requiere mantener una sintaxis rigurosa.

    Definir, por ejemplo, la funcin f(x)=x3 puede hacerse como:

    f@x_D := x3Este Input no produce respuesta del sistema. Ello se debe a la utilizacin de la asignacin diferida ,

    simbolizada por ": =" que provoca que lo siguiente no se evala hasta que no se especifique un valor

    (numrico o simblico) de la o las variables que se anteceden (x_ significa una variable con nombre x).

    Veamos la diferencia entre las asignaciones directas y las diferidas:

    -Las asignaciones directas evaluan la funcin en el momento de la definicin (a)

    -Las asignaciones diferidas asignan la funcin, pero no la evalan en ese momento, sino en el momento de

    utilizar la definicin (b).

    a = [email protected]

    a

    0.382239

    a

    0.382239

    b := RandomReal@D

    Introducci Pr

    Departamento de Matem 7

  • b0.00704935

    b

    0.928466

    Por otra parte, la respuesta de Mathematica a una funcin depende de los comandos o funciones de

    Mathematica involucrados en su definicin. Veamos algunos ejemplos:

    3 < 5

    True

    3 > 5

    False

    Tambin podemos definir funciones lgicas, es decir, funciones que tengan como solucin valores de

    "verdadero" (True) o "falso" (False).

    Por ejemplo, vamos a definir una funcin que informe de cuando un nmero es mayor que 3:

    masque3Q@x_D := x > 3masque3Q@5D

    True

    [email protected]

    esta instruccin > devuelve, para los distintos valores de la variable x, las respuestas True o False,. Ms

    instrucciones de este estilo son: PrimeQ, EvenQ, OddQ, NumberQ, MatrixQ, etc., y la Q al final indica que

    se trata de una "Question". En Matemtica Discreta y Lgica se emplean con gran frecuencia.

    Pr Introducci

    8 Departamento de Matem