Sunteți pe pagina 1din 8

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 Mathematica, 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 instrucciones 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.
Departamento de Matem

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

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
Pr
Introducci
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 345
H* 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 comandos 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 F

1.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 , 50F
1.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:
2

Departamento de Matem

Introducci

Pr

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 N

1.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@1D
0
O bien escribimos:

1 Log
0

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

Ha x + 9L4 H2 x + bL
x2 - 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 + bL
x2 - 1

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


resultado inmediatamente anterior):

Expand@%D
6561 b
-1 + x2

13 122 x
-1 + x2

486 a2 b x2
-1 + x2

2916 a b x
-1 + x2

972 a2 x3
-1 + x2

5832 a x2
-1 + x2

36 a3 b x3
-1 + x2

72 a3 x4
-1 + x2

a4 b x 4
-1 + x2

2 a4 x 5
-1 + x2

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

Departamento de Matem

Pr

Introducci

% x
1
6

Ia 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 confusiones 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

funcion x
6561 b
-1 + x2

13 122 x
-1 + x2

486 a2 b x2
-1 + x2
1
6

2916 a b x
-1 + x2

972 a2 x3
-1 + x2

5832 a x2
-1 + x2

36 a3 b x3
-1 + x2

72 a3 x4
-1 + x2

a4 b x 4
-1 + x2

2 a4 x 5
-1 + x2

Ia 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 cometiendo 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

Departamento de Matem

Introducci

Pr

cos@PiD
General::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<
8Cos <

@2 + 5D^2

Syntax::sntxb : Expression cannot begin with "@2 + 5D ^ 2".


Syntax::tsntxi : "@2 + 5D" is incomplete; more input is needed.
Syntax::sntxi : Incomplete expression; more input is needed.

H2 + 5L^2
49

82 + 5<^2
849<

- Pidiendo ayuda al Mathematica: Podemos pedir ayuda sobre una instruccin determinada, o bien
utilizando una mscara. Otra opcin ms avanzada es utilizar el men de ayuda.

Departamento de Matem

Pr

Introducci

? Integrate
Integrate@f, xD gives the indefinite integral of f
with respect to x. Integrate@f, 8x, xmin, xmax<D
gives the definite integral of f with respect
to x from xmin to xmax. Integrate@f, 8x, xmin,
xmax<, 8y, ymin, ymax<D gives a multiple definite
integral of f with respect to x and y. More

?? Integrate
Integrate@f, xD gives the indefinite integral of f
with respect to x. Integrate@f, 8x, xmin, xmax<D
gives the definite integral of f with respect
to x from xmin to xmax. Integrate@f, 8x, xmin,
xmax<, 8y, ymin, ymax<D gives a multiple definite
integral of f with respect to x and y. More

Attributes@IntegrateD = 8Protected, ReadProtected<

Options@IntegrateD = 8Assumptions 8<,


GenerateConditions Automatic, PrincipalValue False<

? Int*
System`

Integer

Integers

InterpolatingPolynomial

InterpretationBox

Intersection

IntegerDigits

Integrate

Interpolation

InterpretationBoxOptions

Interval

IntegerExponent

Interactive

InterpolationOrder

InterpretTemplate

IntervalIntersection

IntegerPart

Interlaced

InterpolationPoints

Interrupt

IntervalMemberQ

IntegerQ

InterpolatingFunction

InterpolationPrecision

InterruptSettings

IntervalUnion

Algunas reglas y comandos tiles.


Antes de presentar algunos de los comandos ms importantes de Mathematica, veremos algunos
aspectos generales que nos pueden ser tiles en cualquier sesin de Mathematica.
- Sustituciones: Dada una expresin cualquiera, podemos sustituir alguno de sus componentes
situando al final de la expresin el comando /. y despus la sustitucin que queramos realizar, con la sintaxis
mostrada en el siguiente ejemplo:

polinomio = a x2 + b x + c
c + b x + a x2

Departamento de Matem

Introducci

Pr

polinomio . a -> 3
c + b x + 3 x2

Pueden hacerse varias sustituciones y de carcter simblico:

polinomio . :x -> 2, c ->


4a+2b+

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 ->


2 +4a+2b

x>

- 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, fD
que 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 := x3
Este 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 = RandomReal@D
0.382239
a
0.382239
a
0.382239
b := RandomReal@D

Departamento de Matem

Pr

Introducci

b
0.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 > 3
masque3Q@5D
True
masque3Q@2.5D
False
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.

Departamento de Matem

S-ar putea să vă placă și