Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Guia Mathematica 5
Guia Mathematica 5
nb
Introduccin
Estos apuntes son una aproximacin al programa Mathematica en su versin 5.0. No se le
suponen conocimientos previos al lector sobre el programa, pero puede complementarse con
otros muchos manuales relativos al mismo.
En el programa Mathematica se pueden distinguir dos grandes partes. Una de ellas,
llamada ncleo (Kernel), es la encargada de ejecutar todos los comandos y realizar los clculos
necesarios. La otra parte es la interfaz del usuario (Front-End). Existe un tipo especial de
Front-End que permite generar documentos interactivos en los que se mezclan grficos y textos
y en el que se incluirn todos los comandos a evaluar por el ncleo; a ese tipo de documentos
se los denomina Notebooks. La forma de interaccionar entre estas dos partes la dirige el
usuario, es decir, que el ncleo no realiza ninguna accin hasta que el usuario no se lo indique
y para ello se puede pulsar las teclas Shift y Enter simultneamente. En caso de pulsar la tecla
Enter nicamente, la entrada no se evaluar, simplemente se cambia de lnea para poder introducir otro input. Una vez pulsado Shift y Enter, se evaluarn todos los inputs introducidos.
Una vez cargado el ncleo, se est en condiciones de comunicarse con el programa. A
un input dado por el usuario, Mathematica devolver un output que numerar (ambos con el
mismo nmero) secuencialmente a lo largo de una sesin de trabajo. Esto permite hacer referencia en cualquier momento a un resultado obtenido o a una variable definida anteriormente. El
smbolo % se utiliza para referirse al output inmediatamente anterior; pueden usarse %%,
%%%, %%%%, etc. para el penltimo, antepenltimo, etc. Otra forma alternativa es usar %n
donde n es el nmero del output. Adems, cada entrada y salida lleva un corchete situado a la
derecha de la pantalla delimitando lo que denominaremos celdas (Cell). Esta distincin por
celdas nos permitir, entre otras cosas, cambiar el estilo y formato de stas, suprimirlas fcilmente y agruparlas o desagruparlas por bloques de trabajo. Tambin conviene saber que los
Mathematica5.nb
inputs se pueden recalcular cuantas veces se desee (por si queremos cambiar un dato, por ejemplo) y la nueva salida sustituir a la antigua asignndoles a ambos una nueva numeracin.
Otro punto a tener en cuenta es que cuando escribamos comandos deberemos tener
cuidado con:
Las maysculas y minsculas. Mathematica distingue unos caracteres de otros. Todas
las funciones, opciones, variables y constantes incorporadas al programa empiezan con mayscula (conviene nombrar las que definamos nosotros con minscula).
Los espacios. Un espacio entre dos variables se interpreta como un signo de multiplicacin. Por esto, nunca debemos dejar un espacio entre caracteres cuando demos un nombre a
una constante, variable o funcin.
Parntesis, corchetes y llaves. Tienen funciones muy diferentes. Los parntesis se
utilizan para agrupar e indican prioridad en las operaciones a efectuar. Los corchetes son exclusivos de las funciones y delimitan el argumento de las mismas (no usarlos como un segundo
nivel de parntesis!) y, por ltimo, las llaves se utilizan para definir listas (vectores y matrices,
por ejemplo) de elementos.
Una de las novedades ms importantes que se introdujo en la versin 3.0 y que ha
continuado hasta la versin actual es lo que se denominan paletas (palettes). Las paletas son
pequeas ventanas que podemos activar (o desactivar) y que contienen algunas de las operaciones, rdenes e instrucciones ms usuales que necesitaremos durante nuestro trabajo. Inicialmente son siete paletas que contienen todo tipo de operaciones, desde las ms bsicas hasta
otras ms complejas de Clculo Algebraico, Clculo Integral o de Clculo Diferencial. Pero no
solo nos va a servir para tenerlas ms a mano, sino que adems nos ofrecen la posibilidad de
escribir, y por tanto resolver, de la misma forma que escribimos en un folio. Es decir, podemos
resolver la integral definida de x entre 0 y 2 tecleando Integrate[x, {x, 0, 2}] o usar la Paleta 3
denominada BasicCalculations (la podemos encontrar en File/Palettes/3BasicCalculations) y
2
escribir 0 x x, lo cual es mucho ms intuitivo.
ste podra ser el aspecto normal de parte de una ventana de Mathematica, donde
podemos apreciar algunos de los aspectos que ya hemos comentado hasta este punto.
Mathematica5.nb
Mathematica5.nb
operacin alguna. Los editores de texto para Mathematica no contienen el ncleo de Mathematica. El editor que recomendamos usar se denomina MathReader y ha sido creado por la misma
compaa que Mathematica (Wolfram Research, Inc.). ste se puede descargar gratuitamente
en la direccin www.wolfram.com/products/ y nos servir para visualizar, entre otros, artculos
de
Economa
y
Empresa
como
los
disponibles
en
la
pgina
http://library.wolfram.com/infocenter/BySubject/BusinessAndEconomics.
Mathematica5.nb
Calculadora
Mathematica reconoce los operadores habituales de suma, diferencia, producto, cociente y
potenciacin:
Operacin
Suma
Resta
Producto
Cociente
Potenciacin
Notacin en Mathematica
x+y
x-y
x*y o bien x y (un espacio)
x/y
x^y
Otras operaciones numricas usuales son el clculo del valor absoluto, la raz cuadrada,
la parte entera, el factorial
Operacin
Notacin en Mathematica
Valor absoluto de x
Abs[x]
Raz cuadrada de x
Sqrt[x]
Parte entera de x
Floor[x]
Factorial de x
x! o Factorial[x]
Nmero aleatorio real entre 0 y 1
Random[]
Mximo y mnimo de una lista de valores Max[x1, x2,], Min[x1, x2,]
Descomposicin en factores primos de x
FactorInteger[x]
Ya que stas son las primeras funciones que aparecen, vamos a realizar algn comentario. En primer lugar destacar que, tal como se coment al principio, todas las funciones
comienzan con maysculas (incluso cuando el nombre est formado por varias palabras) y, en
segundo lugar, que los argumentos de las distintas funciones siempre van entre corchetes.
Adems, la mayora de las operaciones anteriores se encuentran tambin en varias de las paletas, como la Paleta 3 (BasicCalculations) y la Paleta 4 (BasicInputs).
Con respecto a la precisin en el clculo, Mathematica tiene precisin infinita; es decir,
que las operaciones son realizadas en forma exacta o bien con la precisin que le indique el
operador. Esto hace que no haya ninguna limitacin en cuanto al tamao mximo de los
nmeros enteros que es capaz de manejar salvo la nica limitacin de la memoria disponible del
PC. Probemos con 2^300 :
Mathematica5.nb
2^300
203703597633448608626844568840937816105146839366593625063614044935
4381299763336706183397376
N@Sqrt@3D, 20D
1.7320508075688772935
La orden Sqrt[ ] (del Ingls square root) es el comando usado para calcular la raz
cuadrada. Tambin aparece en la paleta BasicCalculations/Arithmetic and Numbers.
Tambin podemos calcular aproximaciones numricas indicndole a Mathematica que
alguno de los nmeros es real y no entero; para ello le pondremos el punto de los decimales y
Mathematica devolver el resultado con una precisin por defecto.
Obsrvese que 123/99 no produce la misma salida que 123./99:
Mathematica5.nb
123 99
41
33
123. 99
1.24242
Constantes incorporadas
Mathematica tiene un gran nmero de constantes usuales predefinidas, algunas de ellas son:
Constante
p
E
(unidad imaginaria)
(infinito)
Notacin en Mathematica
Pi o Esc+p+Esc
E o Esc+e+e+Esc
I o Esc+i+i+Esc
Infinity
Mathematica5.nb
Funciones usuales
Veamos ahora una tabla de las funciones ms usuales y su sintaxis en Mathematica:
Funcin
!!!
x
x
e
ln(x)
loga(x)
sen(x)
cos(x)
tg(x)
cotg(x)
sec(x)
cosec(x)
arcsen(x)
sh(x)
arcsh(x)
Notacin en Mathematica
Sqrt[x]
E^x o bien Exp[x]
Log[x]
Log[a,x]
Sin[x]
Cos[x]
Tan[x]
Cot[x]
Sec[x]
Csc[x]
ArcSin[x]
Sinh[x]
ArcSinh[x]
Mathematica5.nb
Factor@%D
H1 + xL3
Significado
Forma expandida (efecta sumas, productos, potencias).
Factoriza x (escribe x como producto de factores mnimos).
Escribe todos los trminos de x con un denominador comn.
Separa x en trminos con denominadores lo ms simples posible.
Cancela factores comunes que posean numerador y denominador.
Simplifica x siguiendo reglas algebraicas estndar.
Simplifica x usando reglas algebraicas ms potentes.
Expande expresiones trigonomtricas en suma de trminos.
Factoriza expresiones trigonomtricas en producto de trminos.
Mathematica5.nb
10
Expand@H1 + x + 3 yL^4D
Factor@%D
Factor@x^10 - 1D
Expand@%D
1 + 4 x + 6 x2 + 4 x3 + x4 + 12 y + 36 x y + 36 x2 y +
12 x3 y + 54 y2 + 108 x y2 + 54 x2 y2 + 108 y3 + 108 x y3 + 81 y4
H1 + x + 3 yL4
H1 + xL H1 + xL H1 x + x2 x3 + x4 L H1 + x + x2 + x3 + x4 L
1 + x10
Mathematica proporciona la respuesta en el formato que hemos visto. Ntese que debe
escribirse el doble signo igual entre la funcin y el valor cero para indicar que es una ecuacin.
La x que figura despus de la coma identifica la variable o incgnita a despejar.
Si intentamos hallar, mediante el comando anterior, las races de g(x)=x3-7x2+6x+4
obtendremos una expresin complicada, que es el valor exacto de cada una de ellas (le sugerimos probarlo). Si solo deseamos una aproximacin de las mismas, usaremos el comando
NSolve[]:
Mathematica5.nb
11
NSolve@x^3 - 7 x^2 + 6 x + 4 == 0, xD
88x 0.433665<, 8x 1.57414<, 8x 5.85952<<
-3
-2
-1
-0.5
-1
Graphics
Mathematica5.nb
12
Repitiendo el procedimiento, podremos hallar cualquier otra raz que nos propongamos.
Para sistemas de ecuaciones algebraicas bastar escribir las ecuaciones entre llaves e
indicar las variables del sistema.
Solve@82 x + 3 y == 4, x + y == 3<, 8x, y<D
88x 5, y 2<<
Vectores y matrices
Para definir un vector de tres coordenadas basta con escribir los elementos entre llaves y separados por comas. Igualmente, para definir una matriz bastar escribirla como un vector de vectores que correspondern a las filas de la matriz. Tambin se puede usar la paleta BasicCalculations/ Lists and Matrices, como se ver luego. Definamos dos vectores:
v1 = 81, 2, 3<
v2 = 82, 6, -3<
81, 2, 3<
82, 6, 3<
Ntese que se ha asignado a dos variables el valor de vectores con el signo "=".
Podemos hacer el producto escalar entre ellos:
v1.v2
5
o tambin
Dot@v1, v2D
5
Mathematica5.nb
13
Una vez que hemos visto cmo se introducen vectores manualmente, veamos que tambin es posible generarlos con la orden Table[], cuya definicin es
Table[expr,{imax}]
Table[expr,{i,imax}]
Table[expr,{i,imin,imax}]
Mathematica5.nb
14
Pasemos ahora a aspectos bsicos del Clculo Matricial. Definamos un par de matrices:
a = 881, 2, 5<, 8-2, 5, 7<, 81, 0, 3<<
La multiplicacin no es ms que a.b, pero si queremos que el resultado tenga la forma tradicional haremos:
MatrixForm@a.bD
18 8 5 y
i
j
z
j
j
z
35 8 8 z
j
z
j
z
j
z
4
8
1
k
{
Adems, como es de esperar, podemos multiplicar matrices con vectores y matrices con
escalares:
Mathematica5.nb
15
MatrixForm@a.v1D
20 y
i
j
z
j
j
z
29 z
j
z
j
z
j
z
k 10 {
MatrixForm@2 aD
2 4 10 y
i
j
z
j
j
z
4 10 14 z
j
z
j
z
j
z
k 2 0 6 {
Tambin es posible introducir matrices mediante el uso de las paletas. En varias de las
paletas (BasicInput, BasicCalculations y otras) aparece la opcin correspondiente a una matriz
2x2. Una vez seleccionada esta opcin, podemos aadirle filas y columnas pulsando Ctrl+Enter
y Ctrl+"," respectivamente.
En la siguiente tabla se resumen algunas de las operaciones matriciales ms usuales,
como el clculo del determinante, los autovalores o valores propios, los autovectores o vectores
propios, la inversa, etc.
Operacin
Inversa
Determinante
Valores propios
Vectores propios
Polinomio caracterstico
Rango
Traspuesta
Traza
Reducida por filas
Matriz Diagonal
Matriz Identidad nxn
Espacio nulo de a
Notacin en Mathematica
Inverse[a]
Det[a]
Eigenvalues[a]
Eigenvectors[a]
CharacteristicPolynomial[a,x]
MatrixRank[a]
Transpose[a]
Tr[a]
RowReduce[a]
DiagonalMatrix[{a11,a22,...}]
IdentityMatrix[n]
NullSpace[a]
Mathematica5.nb
16
Det@aD
16
MatrixForm@Inverse@aDD
15
i
16
j
j
j
j
13
j
j
16
j
j
j
j 5
k 16
3
8
18
1
8
11
16
17
16
9
16
y
z
z
z
z
z
z
z
z
z
z
{
Eigenvalues@aD
9
1
1
!!!!!!
!!!!!!
I7 + 17 M, 2,
I7 17 M=
2
2
Eigenvectors@aD
1
3
!!!!!!
!!!!!!
I7 + 17 M, 5 +
I7 + 17 M, 1=,
2
4
1
3
!!!!!!
!!!!!!
81, 3, 1<, 93 +
I7 17 M, 5 +
I7 17 M, 1==
2
4
993 +
MatrixRank@aD
3
MatrixForm@Transpose@aDD
i 1 2 1 z
y
j
j
j
z
2 5 0z
j
z
j
z
j
z
k5 7 3 {
RowReduce@aD
881, 0, 0<, 80, 1, 0<, 80, 0, 1<<
Mathematica5.nb
17
MatrixForm@%D
1 0 0y
i
j
z
j
j
z
0 1 0z
j
z
j
z
j
z
k0 0 1 {
Merece especial atencin la orden Eigensystem[], ya que sta proporciona directamente los autovalores y autovectores de la matriz en la misma salida. Concretamente,
Eigensystem[] proporciona un primer vector con los autovalores de la matriz y un segundo
vector cuyos elementos son autovectores asociados a los autovalores anteriormente ordenados y
que, si es posible, forman una base del espacio. En el caso de que no se pueda obtener una base
formada por autovectores, Mathematica aadir vectores nulos hasta completar la base (luego
no sera una base). As, tanto Eigenvectors[] como Eigensystem[] proporcionan
autovectores linealmente independientes en nmero mximo.
Para la matriz "a" que estamos usando como ejemplo, la orden Eigensystem[a]
proporciona la misma informacin que la aplicacin sucesiva de Eigenvalues[a] y
Eigenvectors[a]:
Eigensystem@aD
1
1
!!!!!!
!!!!!!
I7 + 17 M, 2,
I7 17 M=,
2
2
1
3
!!!!!!
!!!!!!
993 +
I7 + 17 M, 5 +
I7 + 17 M, 1=,
2
4
1
3
!!!!!!
!!!!!!
81, 3, 1<, 93 +
I7 17 M, 5 +
I7 17 M, 1===
2
4
99
Para una matriz no diagonalizable, no nos puede proporcionar una base formada por
autovectores:
c = 881, 1, 3<, 80, 1, 2<, 80, 0, 2<<
MatrixForm@cD
881, 1, 3<, 80, 1, 2<, 80, 0, 2<<
1 1 3y
i
j
z
j
j
z
0 1 2z
j
z
j
z
j
z
k0 0 2 {
Mathematica5.nb
18
Eigensystem@cD
882, 1, 1<, 885, 2, 1<, 81, 0, 0<, 80, 0, 0<<<
Nota: En Mathematica todo lo que est escrito entre llaves y debidamente separado por
comas es una lista, como un vector o una matriz, y responder a las propiedades de stos.
x^2 + x - 3
53
Es importante destacar que los valores asignados a las variables son permanentes. Una
vez que se haya asignado un valor a una variable concreta, el valor permanecer hasta que no
liberemos o "limpiemos" a esta variable. Por supuesto, el valor desaparecer cuando reiniciemos el ncleo o empecemos una nueva sesin de Mathematica. Para liberar a las variables
bastar con
Clear@xD
O bien
Mathematica5.nb
19
x =.
Obsrvese que esta entrada no produce una salida. Esto se debe a los dos puntos delante
del signo de igualdad. Lo que hacemos al aadir los dos puntos equivale a un pequeo programa que se ejecutar cada vez que lo llamemos. En cambio, si no aadimos los dos puntos,
Mathematica ejecutar la funcin inmediatamente.
Notemos tambin que la variable x lleva un guin bajo "_" delante del signo igual. Esto
es para que el programa entienda que se trata de una variable muda, es decir, x puede llevar
cualquier nombre o valor. Es importante recordar esto para evitar posibles errores, ya que si se
hubiese escrito f[x]:=x^2 se habra asignado el valor x^2 al objeto f[x] en vez de a la
funcin f y no entender, por ejemplo, f[3] f[y].
Podemos calcular el valor numrico de la funcin f que hemos definido, para distintos
valores de x:
f @3D
24
f @-3 2D
21
4
Mathematica5.nb
20
f @a + hD
5 Ha + hL + Ha + hL2
Expand@%D
5 a + a2 + 5 h + 2 a h + h2
Primera forma:
f @x_D := 2 x ; x <= -1;
f @x_D := -x ; -1 < x < 3;
f @x_D := x^2 - 4 ; x >= 3;
Los signos de menor o igual y de mayor o igual se escriben como <= y >= respectivamente. Esto define cada uno de los trozos de f, pero se puede definir toda la funcin de una
vez. El ";" al final de cada lnea sirve para que, aunque se ejecuten, no produzcan salidas.
Segunda forma:
Usando el comando Which[]:
f @x_D := Which@x <= 1, 2 x, -1 < x < 3, -x, x >= 3, x^2 + 4D
Mathematica5.nb
21
-2
-2.5
-5
-7.5
-10
Graphics
Clculo de lmites
Una vez que hemos aprendido a definir funciones, ya podemos manipularlas cmodamente y lo
primero que vamos a aprender es a calcular lmites. Podemos calcular el valor de la funcin
cos(x^2) en el punto x=0 simplemente reemplazando el valor x por 0 (no es necesario ni conveniente hacer esto para calcular lmites, pero as aprendemos a realizar sustituciones).
Cos@x^2D . x -> 0
1
Pero si hacemos esto mismo para algunas funciones especiales, como por ejemplo
sen(x)/x, obtenemos una indeterminacin:
Mathematica5.nb
22
Sin@xD x . x -> 0
1
encountered. More
0
::indet : Indeterminate expression 0 ComplexInfinity encountered.
More
Indeterminate
Para encontrar el valor correcto al que tiende esta funcin en el punto, necesitamos
tomar lmite. La orden es (tambin en la Paleta 3, BasicCalculations/Calculus)
Limit[expr,xx0]
Lmite de expr cuando x tiende a x0.
Limit[expr,xx0,Direction1]
Lmite lateral por la izquierda.
Limit[expr,xx0,Direction-1] Lmite lateral por la derecha.
As, haremos
Limit@Sin@xD x, x -> 0D
1
Mathematica5.nb
23
Derivacin
Para calcular la derivada de una funcin podemos utilizar los smbolos de derivadas parciales
que aparecen en la paleta BasicInput o directamente alguna de las siguientes rdenes
D[f[x],x]
Derivada (o derivada parcial) de f con respecto a x.
D[f[x],{x,n}]
Derivada parcial n-sima de f con respecto a x.
D[f[x1,x2,...],x1,x2,] Derivada parcial de f con respecto a x1, x2,
La ltima de las tres funciones es vlida para funciones de varias variables. Dedicamos
una seccin posterior al estudio de la derivacin, integracin, etc. de este tipo de funciones.
Definamos una nueva funcin f y derivmosla:
Clear@fD
f@x_D := x ^ 2 3 x + 4
D@f@xD, xD
3 + 2 x
Tambin es posible calcular la derivada de una funcin con f'[x]. Es ms, tambin
la funcin Derivative[] sirve para el clculo de derivadas aunque la estructura es algo
distinta (vase la Ayuda). Adelantamos nicamente que Derivative[1][f] equivale a
f'[x].
f '@xD
Derivative@1D@fD
3 + 2 x
3 + 2 #1 &
Mathematica5.nb
24
Derivative@1D@SinD
Cos@#1D &
ab
E
x
a b2 Cos@ axb D
a Sec@xD HCos@xD x Sin@xDL
+
x2
x
Mathematica5.nb
25
Integracin
Para resolver un problema de integracin, como viene siendo habitual, tenemos dos maneras de
abordarlo: o bien usamos la orden Integrate[], o bien los smbolos de la paleta BasicInput.
La orden Integrate[] tiene tres usos distintos:
Integrate[f,x] para una primitiva de f con respecto a la variable x.
Integrate[f,{x,xmin,xmax}] para la integral definida de f con respecto a x en
el intervalo xmin y xmax.
Integrate[f,{x,xmin,xmax},{y,ymin,ymax}] para la integral mltiple
(doble) de f con respecto a x e y (se ver ms adelante).
Veamos
si
es
posible
calcular
la
integral
indefinda
de
g(x)=alog(xcos(x))+bsen(ab/x) (definida en la seccin anterior) con la paleta
indicada y con la orden anterior:
g@xD x
a x +
1
2
a x2 a b2 CosIntegralA
a x Log@x Cos@xDD +
1
2
ab
E a x Log@1 +
x
a PolyLog@2,
D + b x SinA
D+
ab
E
x
Integrate@g@xD, xD
a x +
1
2
a x2 a b2 CosIntegralA
a x Log@x Cos@xDD +
1
2
ab
E a x Log@1 +
x
a PolyLog@2,
D + b x SinA
D+
ab
E
x
Algo feo, pero qu le vamos a hacer. Calculemos una integral impropia dependiente
de un parmetro q:
Mathematica5.nb
26
q x2
La salida obtenida quiere decir que si la parte real de q es mayor que cero entonces la
!!!!
integral es igual a 2 !!!q! y, si no, no sabe hacerlo.
Tambin es posible calcular integrales numricas utilizando la orden NIntegrate[]
que nos proporcionar un valor aproximado en lugar del exacto:
NIntegrate@Exp@x^2D, 8x, -2, 2<D
32.9053
NIntegrateAg@xD, 9x,
,
=E
6
3
More
ab
E
x
Mathematica5.nb
27
Ahora evaluamos
funcion2@1, 2D
0.109469
El smbolo ":=" es ms que una asignacin. Si nos damos cuenta, adems de servir
como asignacin, hace que la operacin definida no sea ejecutada inmediatamente sino cuando
se le llame ms adelante. O sea, es como un pequeo programa que luego ser ejecutado.
Mathematica5.nb
Sin@2 xD
2 y + 2 Cos@2 x 3 y2 D
2 x 6 y Cos@2 x 3 y2 D
28
Mathematica5.nb
29
podemos
usar
bien
D[f[x,y],{x,n}]
bien
i
i
yz
y
j
j
z
6
6
!!!!!!!
j
j
z
j
jCos@3D FresnelSA3 $%%%%%%
z
z
E FresnelCA3 $%%%%%% E Sin@3Dz
j
z
z
j81 6 Sin@1D j
z
z
j
k
k
{{
Simplify@%D
1
6
i
i
y
j
j
zy
z
6
6
!!!!!!!
j
j
z
j
jCos@3D FresnelSA3 $%%%%%%
z
z
E FresnelCA3 $%%%%%% E Sin@3Dz
j
z
j81 6 Sin@1D j
zz
z
j
k
k
{{
Mathematica5.nb
30
N@%D
13.8634
2 x2
1 x x
y y x haremos
Integrate@x y, 8x, 1, 2<, 8y, x, x^2<D
27
8
Series
En esta seccin vamos a distinguir entre dos problemas bien distintos: calcular la suma de una
serie conocida y generar la serie de potencias de una funcin conocida en un punto dado.
Para calcular la suma de una serie usaremos
imax
evala i=1
f
imax
evala i=imin f
evala i f donde i = imin,
imin+di, imin+2di,..., imax.
jmax
Sum[f,{i,imin,imax},{j,jmin,jmax}]
evala imax
i=imin j=jmin f
Sum[f,{i,imax}]
Sum[f,{i,imin,imax}]
Sum[f,{i,imin,imax,di}]
Por ejemplo,
Sum@1 n, 8n, 10<D
7381
2520
Sum@a ^ 2 - 3 a + 7, 8a, 2, 18, 2<D
933
Mathematica5.nb
31
N@%D
8.10374
x3
+ O@xD4
6
x2
x3
+
+ O@xD4
2
3
x2 + O@xD4
senHx^3-2 xL
El coeficiente del trmino 20 de la serie de potencias de la funcin f(x)=
x+2
en el punto x=3 es
Mathematica5.nb
32
N@%D
2.96413 109
Ecuaciones diferenciales
Para las ecuaciones o sistemas de ecuaciones diferenciales, el procedimiento es anlogo a las
algebraicas. Resolvamos la ecuacin diferencial de variable separadas y'=2xy. En primer
lugar podemos (aunque no es necesario) definir la ecuacin diferencial a resolver:
Eq1 = D@y@xD, xD 2 x y@xD
y @xD
2 x y@xD
x2
C@1D==
En caso de que queramos indicarle valores iniciales para obtener una solucin particular, se aade como una nueva ecuacin entre llaves de la siguiente manera:
DSolve@8Eq1, y@0D 1<, y@xD, xD
99y@xD
x2
==
Mathematica5.nb
33
Representacin grfica
Representacin grfica en 2D
Como ya habamos anticipado, para la representacin grfica de funciones de una variable
debemos usar el comando Plot[funcin,{x,xmin,xmax}] (tambin en la paleta BasicCalculations/Graphics) donde x es la variable independiente y xmin y xmax son los extremos
del intervalo del dominio de la funcin que deseamos representar. Por ejemplo:
Plot@x^2 + 5 x, 8x, -7, 7<D
50
40
30
20
10
-6
-4
-2
Graphics
40
20
-10
-5
5
-20
-40
-60
Graphics
10
Mathematica5.nb
34
Observemos que Mathematica realiza el grfico con distintas escalas en ambos ejes.
Para que tome la misma unidad en los ejes, se debe agregar la orden
AspectRatio->Automatic (esta opcin se ver con profundidad en la prxima seccin)
como vemos en el siguiente ejemplo:
Plot@g@xD, 8x, -10, 14<, AspectRatio AutomaticD
40
20
-10
-5 510
-20
-40
-60
Graphics
Como vemos, la grfica de la funcin ahora es ms real, aunque hay detalles que no
se aprecian con suficiente nitidez. Por tanto, es importante decidir cundo usar la orden
AspectRatio->Automatic y cundo dejar que Mathematica decida cul es la escala
ms conveniente.
Observacin: Despus de cada grfico, Mathematica imprime -Graphics-. Para
evitar que se produzca este mensaje, se puede agregar al final de la lnea del comando Plot un
punto y coma.
Podemos pedir que represente ambas funciones en el mismo dibujo; para ello, usamos el
comando Plot, pero como primer argumento usaremos ahora una lista de funciones:
Mathematica5.nb
35
-6
-4
-2
-20
-40
-60
Graphics
Existe otra manera de superponer grficas; consiste en asignarle a cada una un nombre y
usar el comando Show[] como se muestra en el siguiente ejemplo:
aa = Plot@Cos@xD, 8x, -Pi, Pi<D
1
0.5
-3
-2
-1
1
-0.5
-1
Graphics
Mathematica5.nb
36
3.5
2.5
-6
-4
-2
Graphics
12
10
8
6
-3
-2
-1
Graphics
8
6
4
2
-6
-4
-2
Graphics
Mathematica5.nb
37
4
3.5
3
2.5
-3-2-1
-0.5 1 2 3
-1
-6-4-2
12
10
8
6
246
-3-2-1
GraphicsArray
1 2 3
-1
4
3.5
3
2.5
-6 -4 -2
2 4 6
12
10
8
6
-3 -2 -1
GraphicsArray
1 2 3
Mathematica5.nb
38
4
3.5
3
2.5
1 2 3
-6-4-2
8
6
4
2
12
10
8
6
-3 -2 -1
2 4 6
1 2 3
-6 -4 -2
2 4 6
GraphicsArray
h@x_D := f @g@xDD
-2
-1
Graphics
Mathematica5.nb
39
<< Graphics`Graphics`
0.6
0.4
0.2
-0.75 -0.5 -0.25
-0.2
-0.4
-0.6
-0.8
Graphics
Mathematica5.nb
40
50
100
150
200
Graphics
-0.5
-0.25
0.5
-0.5
-0.75
Graphics
Mathematica5.nb
41
Grficas de inecuaciones
Para estudiar optimizacin con restricciones necesitaremos saber, por ejemplo, cmo se dibujan
regiones en el plano. Estas regiones vienen definidas por inecuaciones y para su representacin
grfica
utilizaremos
el
comando
InequalityPlot[inecuaciones,
{x,xmin,xmax},{y,ymin,ymax}]. Esta funcin se encuentra en el paquete
Graphics`InequalityGraphics` que debemos cargar previamente:
<< Graphics`InequalityGraphics`
-3
-2
-1
1
-1
-2
Graphics
Mathematica5.nb
42
InequalityPlot@ 1 < x2 + y2 < 4 x y < 1 x > 0 y > 0, 8x, -2, 3<, 8y, -2, 2< D;
2
1.5
0.5
0.5
1.5
881, 8<, 82, 5.5<, 83, 7<, 84, 3<, 85, 8.1<, 86, 1<<
Mathematica5.nb
43
ListPlot@tablaD;
8
7
6
5
4
3
2
2
Si queremos mostrar los puntos unidos por segmentos, agregamos la siguiente opcin:
ListPlot@tabla, PlotJoined TrueD
8
7
6
5
4
3
2
2
Graphics
Mathematica5.nb
44
Graphics
Observacin: el programa acomoda los ejes coordenados de forma que los datos sean
fcilmente visibles, pero esto puede no responder a la posicin real de esos puntos. Para obtener
una visualizacin ms fiel usamos el comando AxesOrigin->{0,0}, que ubica los ejes en
su posicin normal:
ListPlot@tabla, PlotJoined True, GridLines Automatic, AxesOrigin 80, 0<D
8
7
6
5
4
3
2
1
1
Graphics
Mathematica5.nb
45
Esta grfica puede servir de ayuda en el caso en que deseemos interpolar y queramos
aproximar las coordenadas de un punto intermedio. Para ello, marquemos el grfico (un click
encima del grfico) y, posicionando el cursor sobre l, presionemos la tecla Ctrl. As Mathematica mostrar en la parte inferior izquierda de la pantalla las coordenadas aproximadas del punto
que sealemos en la grfica. Es importante tener en cuenta que es necesario, para que las
coordenadas obtenidas sean correctas, que el origen de coordenadas est en (0,0) (esta observacin tambin es vlida para el resto de representaciones grficas en 2D).
Opciones grficas
Cuando Mathematica realiza un grfico, tiene que elegir cmo realizar la representacin grfica
(escalas, ejes, origen, color, grosor de lnea, etc). En muchas de las ocasiones, Mathematica
probablemente har una buena eleccin. No obstante, si se desea cambiar algunas de estas
opciones se pueden utilizar las rdenes que veremos en esta seccin.
Como ltimo argumento del comando, por ejemplo Plot[], se puede incluir una
secuencia de rdenes del tipo nombre->valor, para especificar el valor de varias de las
opciones grficas. A cada opcin que no asignemos un valor explcito, Mathematica le asignar
un valor por defecto.
Una orden como Plot[] tiene muchas opciones que podemos modificar. Algunas de
las que veremos son las siguientes:
Mathematica5.nb
46
Opcin
AspectRatio
1/GoldenRatio
Axes
AxesLabel
Automatic
None
AxesOrigin
TextStyle
FormatType
Automatic
$TextStyle
StandardForm
Frame
FrameLabel
False
None
FrameTicks
Automatic
GridLines
None
PlotLabel
PlotRange
None
Automatic
Ticks
Automatic
ImageSize
Automatic
Background
Automatic
Descripcin
Proporcin alto-ancho; el valor Automatic asigna
la misma unidad de medida en ambos ejes.
Para incluir los ejes coordenados.
Incluye etiquetas en los ejes; el valor ylabel
especifica una etiqueta para el eje oy,
y {xlabel,ylabel} para ambos ejes.
Punto de corte de los ejes (origen).
Estilo para el texto de la grfica.
Formato usado por defecto para el texto de la grfica.
Enmarca o no el grfico.
Etiquetas alrededor del marco; una lista de como
mximo 4 elementos etiqueta en el sentido de las
agujas del reloj empezando por el eje x.
Muestra una regla en cada lado del marco; el
valor None no muestra las reglas.
Muestra una malla para cada valor de la regla del
marco; el valor Automatic incluye el las lneas
para la mayora de las marcas.
Etiqueta para el grfico.
Especifica la parte del recorrido que se desea mostrar; el valor All incluye todos los puntos (si es
posible).
Si existen los ejes, los muestra reglados; el valor
None no muestra las marcas.
Un valor especifica el ancho del grfico; {n,m}
especifica el ancho y el alto.
Opciones para el fondo del grfico (GrayLevel,
Hue, RGBColor...).
Mathematica5.nb
47
0.5
0.5
1.5
2.5
-0.5
-1
Plot@Sin@x^2D, 8x, 0, 3<, Frame TrueD;
1
0.5
0
-0.5
-1
0
0.5
1.5
2.5
A continuacin especificamos unas etiquetas para cada uno de los ejes. Las etiquetas
aparecern tal como apareceran en una salida de Mathematica. Las etiquetas pueden incluir
texto escribindolo entre comillas.
Plot@Sin@x^2D, 8x, 0, 3<, AxesLabel 8"eje de abscisas", "Sin@x^2D"<D;
Sin@x^2D
1
0.5
0.5 1 1.5 2 2.5 3
-0.5
-1
eje de abscisas
Mathematica5.nb
48
Para la malla:
Plot@Sin@x^2D, 8x, 0, 3<, Frame True, GridLines AutomaticD;
1
0.5
0
-0.5
-1
0.5
1.5
2.5
0.5
0.5
1.5
2.5
-0.5
-1
Algunos de los valores ms usuales para varias de las opciones vistas hasta ahora son
Mathematica5.nb
49
Automatic
None
All
True
False
Cuando Mathematica realiza un grfico, trata de fijar unas escalas para x e y con la idea
de incluir solo las partes ms interesantes de la grfica. Si la funcin crece rpidamente, o tiene
singularidades, las partes de la grfica demasiado largas las corta. Con la orden PlotRange
podemos controlar el rango de variacin para la x y la y. Los posibles valores para esta opcin
son:
muestra una gran parte de la grfica incluyendo la parte " ms interesante "
que aparecera por defecto.
All muestra todos los puntos Hsi es posibleL.
8ymin, ymax< muestra un rango especfico para los valores de y.
8xrange, yrange< muestra un rango especfico para x e y.
Automatic
-1
-0.5
0.5
-0.5
-1
Otras opciones vlidas tambin para la orden Plot[] son las siguientes:
Mathematica5.nb
50
Opcin
PlotStyle
PlotPoints
1
, Axes Automatic,
GoldenRatio
AxesLabel None, AxesOrigin Automatic, AxesStyle Automatic,
Background Automatic, ColorOutput Automatic, Compiled True,
DefaultColor Automatic, DefaultFont $DefaultFont,
DisplayFunction $DisplayFunction, Epilog 8<,
FormatType $FormatType, 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 8<,
RotateLabel True, TextStyle $TextStyle, Ticks Automatic=
Si queremos saber el valor por defecto de una sola de las opciones haremos algo
parecido:
Options@Plot, AspectRatioD
9AspectRatio
1
=
GoldenRatio
Mathematica5.nb
51
-2
-1
-1
-2
Graphics
Mathematica5.nb
52
Plot@8x^2, x^3<, 8x, -3, 3<, PlotStyle 88Hue@1, 0.75, 0.5D<, 8Hue@0.25, 0.5, 0.75D<<D
4
3
2
1
-3
-2
-1
-1
-2
Graphics
Cuando especificamos una opcin grfica como RGBColor[], sta afecta a todos los
elementos grficos que aparecen en una lista. Mathematica tambin dispone de opciones grficas que son especficas a algunos tipos de grficos:
La opcin PointSize[d] sirve para que todos los puntos del grfico los represente
como un crculo de diametro d. Con PointSize, el diametro d est medido en proporcin al
ancho de todo el grfico.
Mathematica tambin permite la opcin AbsolutePointSize[d], que especifica el
diametro absoluto de los puntos, medidos en unidades fijas.
PointSize@ d D
AbsolutePointSize@ d D
Aqu vemos cmo construir una lista con seis puntos de dos coordenadas:
Table@8n, Prime@nD<, 8n, 6<D
881, 2<, 82, 3<, 83, 5<, 84, 7<, 85, 11<, 86, 13<<
Mostramos cada punto con dimetro igual a un 10% del ancho del grfico.
Mathematica5.nb
53
12
10
8
6
4
2
Graphics
10
15
20
Graphics
Algunas
de
las
opciones
grficas
para
la
orden
(Line[{punto1,punto2}] une con un segmento rectilneo ambos puntos) son:
Line[]
Mathematica5.nb
54
Thickness@ w D
AbsoluteThickness@ w D
Dashing@ 8 w1 , w2 , < D
AbsoluteDashing@ 8 w1 , w2 , < D
Veamos un ejemplo:
Plot@x^2, 8x, -2, 2<, PlotStyle 8Thickness@.02D, Dashing@8.005, .03<D<D
4
3
2
1
-2
-1
Graphics
1
50
1
9ThicknessA
25
3
9ThicknessA
50
2
9ThicknessA
25
Mathematica5.nb
55
Show@Graphics@%DD
Graphics
Table@8AbsoluteThickness@nD, Line@880, 0<, 8n, 1<<D<, 8n, 4<D
88AbsoluteThickness@1D,
8AbsoluteThickness@2D,
8AbsoluteThickness@3D,
8AbsoluteThickness@4D,
Line@880,
Line@880,
Line@880,
Line@880,
0<,
0<,
0<,
0<,
81,
82,
83,
84,
1<<D<,
1<<D<,
1<<D<,
1<<D<<
Show@Graphics@%DD
Graphics
La orden Dashing nos permite crear lneas con distintos tipos de segmentos. La idea
es romper la lnea en segmentos que son dibujados y omitidos alternativamente. Cambiando la
medida de los segmentos se obtienen lneas de diferentes estilos. Dashing nos permite tam-
Mathematica5.nb
56
bin especificar una sucesin de medidas para los elementos. Esta sucesin se repite tantas
veces como sea necesaria hasta representar la lnea completa.
Show@Graphics@8Dashing@80.05, 0.05<D, Line@88-1, -1<, 81, 1<<D<DD
Graphics
Graphics
Otra manera de usar las opciones grficas es insertarlas directamente en una lista. No
obstante, algunas veces queremos que las opciones se apliquen de manera ms global y, por
ejemplo, determinar el estilo global en toda la sesin de trabajo independientemente de cmo
sean algunas opciones grficas particulares.
Algunas opciones para especificar el estilo de forma general son:
Mathematica5.nb
57
10
-0.5
-1
Graphics
gris
rojo, etc.
grueso
discontinuo
punto-segmento
Background >
DefaultColor >
Prolog
Epilog
color
color
> g
> g
Mathematica5.nb
58
0.75
0.5
0.25
-0.25
10
-0.5
-0.75
Graphics
Plot@Sin@Sin@xDD, 8x, 0, 10<, Background GrayLevel@0.6D, Prolog Hue@.5DD
0.75
0.5
0.25
-0.25
-0.5
-0.75
Graphics
10
Mathematica5.nb
59
0.75
0.5
0.25
-0.25
10
-0.5
-0.75
Graphics
0.75
0.5
0.25
2
10
-0.25
-0.5
-0.75
Graphics
Representacin grfica en 3D
La orden Plot3D[f,{x,xmin,xmax},{y,ymin,ymax}] realiza representaciones
grficas en tres dimensiones.
Mathematica5.nb
60
1
0.5
0
-0.5
-1
0
3
2
1
1
2
30
SurfaceGraphics
Mathematica dispone de una gran cantidad de opciones grficas para grficos en 3D. Al
igual que para Plot[], podemos obtener informacin de todas las opciones disponibles con
Options[]:
Options@Plot3DD
8AmbientLight GrayLevel@0D, AspectRatio Automatic,
Axes True, AxesEdge Automatic, AxesLabel None,
AxesStyle Automatic, Background Automatic, Boxed True,
BoxRatios 81, 1, 0.4<, BoxStyle Automatic, ClipFill Automatic,
ColorFunction Automatic, ColorFunctionScaling True,
ColorOutput Automatic, Compiled True,
DefaultColor Automatic, DefaultFont $DefaultFont,
DisplayFunction $DisplayFunction, Epilog 8<,
FaceGrids None, FormatType $FormatType, HiddenSurface True,
ImageSize Automatic, Lighting True, LightSources
8881., 0., 1.<, RGBColor@1, 0, 0D<, 881., 1., 1.<, RGBColor@0, 1, 0D<,
880., 1., 1.<, RGBColor@0, 0, 1D<<, Mesh True,
MeshStyle Automatic, Plot3Matrix Automatic, PlotLabel None,
PlotPoints 25, PlotRange Automatic, PlotRegion Automatic,
Prolog 8<, Shading True, SphericalRegion False,
TextStyle $TextStyle, Ticks Automatic, ViewCenter Automatic,
ViewPoint 81.3, 2.4, 2.<, ViewVertical 80., 0., 1.<<
Mathematica5.nb
61
En la siguiente tabla mostramos algunas de las anteriores. Muchas de las opciones que
aparecen en la siguiente tabla son anlogas a otras ya vistas para grficos en 2D.
Opcin
Axes
AxesLabel
Mathematica5.nb
62
10
5
0
-5
-10
-10
0
10
5
0
-5
-5
0
5
10 -10
SurfaceGraphics
10
Valor 50
-5
-10
-10
0
10
5
-5
Tiempo
0 Profundidad
-5
5
10 -10
SurfaceGraphics
La opcin ViewPoint para Plot3D y Show nos permite cambiar el punto de vista
del observador. En muchas versiones de Mathematica existen otras maneras de elegir el punto
de vista interactivamente.
El punto de vista de la siguiente superficie es el tomado por defecto ({1.3, -2.4,
2}).
Mathematica5.nb
63
1
0.5
0
-0.5
-1
0
3
2
1
1
2
30
SurfaceGraphics
Tomemos un punto de vista justo en frente del eje OY. Ntese que se ha usado un efecto
en la perspectiva que hace la parte del fondo ms pequea que la delantera:
Show@%, ViewPoint 80, -2, 0<D
1
0
0.5
2 3
0
-0.5
-1
0
SurfaceGraphics
Los puntos de vista ligeramente por encima de la superficie suelen funcionar bien.
Generalmente es una buena idea tomar un punto de vista suficientemente cerca de la superficie.
Aadir la caja alrededor de la superficie nos ayuda a reconocer la orientacin de la superficie.
Mathematica5.nb
64
2
1
0
-2
2
1
0
-1
-1
0
1
2 -2
SurfaceGraphics
3
2
2
1
0
-2
2
1
0
-1
-1
0
1
2 -2
SurfaceGraphics
Mathematica5.nb
65
3
2
2
1
0
-2
2
1
0
-1
-1
0
1
2 -2
SurfaceGraphics
Para aadir un elemento extra de realismo, Mathematica simula una superficie iluminada. Por defecto, Mathematica asume que hay tres fuentes de luz sobre el objeto en la parte
superior derecha. No obstante, este efecto luminoso puede confundirnos en algunos casos. Si
seleccionamos la opcin Lighting -> False, entonces Mathematica no usar tal efecto
sino una escala de grises para sombrear la superficie en funcin de la altura del punto.
Plot3D@Sin@2 x yD, 8x, 0, 3<, 8y, 0, 3<D
1
0.5
0
-0.5
-1
0
3
2
1
1
2
30
SurfaceGraphics
Mathematica5.nb
66
1
0.5
0
-0.5
-1
0
3
2
1
1
2
30
SurfaceGraphics
Mathematica5.nb
67
1
0.5
0
-0.5
-1
0
3
2
1
1
2
30
SurfaceGraphics
Mathematica5.nb
68
p = 82, 0, 1<
v = 83, 1, 1<
ParametricPlot3D@p + v, 8, 2, 3<D
82, 0, 1<
83, 1, 1<
2
0
-2
0
2
5
0
10
-2
Graphics3D
Mathematica5.nb
69
w = 81, 3, 0<
ParametricPlot3D@p + v + w, 8, 5, 5<, 8, 5, 5<D
81, 3, 0<
20
2.5
0
-2.5
-5
10
0
-10
-10
0
10
20
-20
Graphics3D
Mathematica5.nb
70
Estadstica
Dedicamos este ltimo captulo a mostrar brevemente algunas de las aplicaciones que posee
Mathematica a la rama de la Estadstica. nicamente indicaremos algunos de los paquetes ms
importantes que el alumno podr utilizar para resolver muchos de los problemas que se encontrar en una asignatura con contenido estadstico.
Estadstica Descriptiva. Regresin y correlacin lineal
Para no extendernos demasiado, enunciaremos las rdenes estadsticas ms usuales y veremos
cmo se utilizan con un ejemplo. Las funciones que enunciamos a continuacin se encuentran
en el paquete Statistics`DescriptiveStatistics`, que debemos cargar previamente.
<< Statistics`DescriptiveStatistics`
Funcin
Mean[]
Mode[]
Median[]
Mathematica5.nb
Media geomtrica
Media armnica
Cuantiles n (entre 0 y 1)
Cuartiles
Rango
Varianza
Cuasivarianza
Desviacin estndar
Cuasidesviacin estndar
Coeficiente de variacin
Momento central de orden n
Coeficiente de asimetra
Coeficiente de Curtosis
71
GeometricMean[]
HarmonicMean[]
Quantile[datos,n]
Quartiles[]
SampleRange[]
VarianceMLE[]
Variance[]
StandardDeviationMLE[]
StandardDeviation[]
CoefficientOfVariation[]
CentralMoment[datos,n]
Skewness[]
KurtosisExcess[]
As, para nuestro ejemplo, la media, moda, mediana, el percentil 34, los cuartiles, la
desviacin estndar y el momento central de orden 3 son:
Mean@datosD
Mode@datosD
Median@datosD
Quantile@datos, 0.34D
Quartiles@datosD
StandardDeviationMLE@datosD
CentralMoment@datos, 3D
6.14
5.25
3.
83, 5.25, 8.9<
4.4996
104.745
Mathematica5.nb
72
En el caso de que nuestra variable sea bidimensional y queramos realizar una regresin
(lineal, cuadrtica o de cualquier otro tipo) y una correlacin, deberemos cargar previamente el
paquete Statistics`LinearRegression`. A continuacin, en primer lugar, introducimos los datos
y,
por
ltimo,
utilizamos
una
de
las
dos
siguientes
funciones:
Regress[datos,{1,f1(x),f2(x),...},x] o bien Fit[datos,{f1(x),f2(x),...},x].
A continuacin introducimos los datos de la variable bidimensional (X,Y) como una
lista de puntos en el plano:
<< Statistics`LinearRegression`
datos2 = 881, 1<, 81.2, 1.5<, 82, 1.8<, 82.1, 2<, 82.5, 3<, 83, 6<<
881, 1<, 81.2, 1.5<, 82, 1.8<, 82.1, 2<, 82.5, 3<, 83, 6<<
Estimate
1.53514
2.07719
SE
1.22479
0.587242
TStat
1.25339
3.5372
PValue
0.278327 ,
0.0240741
DF
1
4
5
SumOfSq
12.4839
3.99109
16.475
MeanSq
12.4839
0.997774
FRatio
12.5118
PValue
0.0240741
O bien:
Fit@datos2, 81, x<, xD
1.53514 + 2.07719 x
La diferencia entre Regress[] y Fit[] es evidente. Mientra que Fit[] nos proporciona la
recta de regresin de Y en funcin de X, la orden Regress[] realiza un estudio ms completo y
nos proporciona adems el coeficiente de determinacin (RSquared->0.757748) y, entre otras
cosas, la tabla del anlisis de la varianza (ANOVA).
Si, por ejemplo, nos interesa ms una regresin cuadrtica, bastar con aadir a la lista
de funciones el trmino x^2:
Mathematica5.nb
73
Estimate
4.63568
5.17166
1.85868
SE
1.25777
1.39881
0.354499
TStat
3.68564
3.69718
5.24312
PValue
0.0346212
,
0.034345
0.0135071
DF
2
3
5
SumOfSq
16.0823
0.392692
16.475
MeanSq
8.04115
0.130897
FRatio
61.431
PValue
0.00367993
Estimate
0.0883523
0.274219
SE
0.339534
0.0316264
TStat
0.260217
8.67056
PValue
0.807543
,
0.000973643
DF
1
4
5
O un ajuste hiperblico:
SumOfSq
15.6427
0.832296
16.475
MeanSq
15.6427
0.208074
FRatio
75.1786
PValue
0.000973643
Mathematica5.nb
74
Estimate
5.46902
SE
1.51611
TStat
3.60728
4.9435
2.37632
2.08032
PValue
0.0226113,
0.105985
DF
1
4
5
SumOfSq
8.56166
7.91334
16.475
MeanSq
8.56166
1.97833
FRatio
4.32771
PValue
0.105985
Clculo de Probabilidades
Para los casos en los que queramos manejar algn modelo de distribucin de probabilidad,
debemos cargar previamente el paquete Statistics`ContinuousDistributions` o bien Statistics`DiscreteDistributions` dependiendo de si nuestro modelo corresponde a una variable continua o
discreta, respectivamente.
As, si queremos definir una variable Normal de media 3 y desviacin tpica 1 haremos:
<< Statistics`ContinuousDistributions`
dist = NormalDistribution@3, 1D
NormalDistribution@3, 1D
Mathematica5.nb
75
0.3
0.2
0.1
Graphics
-10
-5
10
Graphics
Una vez definida la distribucin, podemos analizarla con muchas de las funciones
introducidas en la seccin anterior:
Mathematica5.nb
76
Domain@distD
Mean@distD
Variance@distD
Skewness@distD
Random@distD
Interval@8, <D
2.77339
Obsrvese que hemos utilizado dos rdenes nuevas que no habamos visto hasta ahora.
stas son Domain[] y Random[]. La primera nos calcula el dominio de la distribucin dist y la
segunda genera un nmero aleatorio segn la distribucin dist (luego cada vez que la ejecutemos nos proporcionar una nmero distinto).
Para el caso de las distribuciones discretas, ya hemos comentado que se debe cargar el
paquete Statistics`DiscreteDistributions` donde se encuentran cargadas las distribuciones discretas ms importantes, como:
BinomialDistribution[n,p]
GeometricDistribution[p]
HypergeometricDistribution[n,n1,n2]
NegativeBinomialDistribution[n,p]
PoissonDistribution[m]
Por ejemplo:
Distribucin binomial.
Distribucin geomtrica.
Distribucin hipergeomtrica.
Distribucin binomial negativa.
Distribucin de Poisson.
Mathematica5.nb
77
<< Statistics`DiscreteDistributions`
dist2 = BinomialDistribution@10, 0.3D
Domain@dist2D
Mean@dist2D
Variance@dist2D
Plot@CDF@dist2, xD, 8x, -1, 10<D
BinomialDistribution@10, 0.3D
80, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10<
3.
2.1
1
0.8
0.6
0.4
0.2
10
Graphics
Inferencia Estadstica
Finalizamos el captulo con otro breve comenteario sobre la Inferencia Estadstica. Destacamos
dos de los paquetes ms importantes que posee Mathematica dentro de esta rama. En primer
lugar, para calcular los intervalos de confianza usaremos el paquete Statistics`ConfidenceIntervals` y para los contrastes de hiptesis cargaremos previamente Statistics`HypothesisTests`.
Podemos calcular un intervalo de confianza para la media (con un nivel de confianza,
por defecto, del 95%) de unos datos que suponemos aleatorios y distribuidos normalmente
(tambin se supone la varianza desconocida) con la siguiente secuencia de rdenes:
Mathematica5.nb
78
<< Statistics`ConfidenceIntervals`
datos3 =
876, 73, 75, 73, 74, 74, 74, 74, 74, 77, 74, 72, 75, 76, 73, 71, 73, 80, 75, 75, 68, 72, 78, 74, 75<
876, 73, 75, 73, 74, 74, 74, 74, 74, 77, 74,
72, 75, 76, 73, 71, 73, 80, 75, 75, 68, 72, 78, 74, 75<
MeanCI@datos3D
873.2393, 75.1607<
VarianceCI@datos3D
83.3025, 10.4829<
Mathematica5.nb
79
MeanDifferenceCI@datos4, datos5D
81.00117, 7.39883<
Con respecto a los contrastes de hiptesis, comentaremos dos: el contraste para la media
y el contraste para la diferencia de medias.
Si queremos contrastar si la media de la distribucin normal que siguen los datos3 es,
por ejemplo, 74, obtenemos el p-valor
<< Statistics`HypothesisTests`
MeanTest@datos3, 74D
OneSidedPValue 0.335635
Como el p-valor es mayor que el nivel de significacin tomado por defecto, 0.05, llegamos a la conclusin de que no podemos rechazar que la media de la distribucin de datos3 sea
74.
Si queremos comprobar si la media de datos4 es mayor o igual que la media de datos5,
podemos realizar un contraste para ver si la diferencia de ambas medias es cero. Obtenemos:
MeanDifferenceTest@datos4, datos5, 0D
OneSidedPValue 0.00674533