Sunteți pe pagina 1din 68

elcurso.

nb

Pgina 1 de 68

Manual de prcticas de Mathematica

M. en C. Jos Luis Gmez Muoz


Departamento de Matemticas
Instituto Tecnolgico y de Estudios
Superiores de Monterrey
Campus Estado de Mxico
ndice
Contenido:
Advertencias
Introduciendo comandos en Mathematica
Los diferentes tipos de signo igual
Graficando funciones y ecuaciones en dos dimensiones
Funciones exponenciales, logartmicas, trigonomtricas e hiperblicas
Derivando e integrando en Mathematica
Usando los puntos crticos de una funcin para graficarla
Slidos de revolucin
Graficando funciones y ecuaciones en tres dimensiones
Graficando un potencial elctrico debido a dos lneas de carga
Graficando un potencial elctrico debido a dos cargas puntuales
Resolviendo Ecuaciones Diferenciales
Animaciones y exportacin a GIF animado
Enseando nuevos comandos a Mathematica
Diseando un comando para calcular impedancias
Construyendo libreras de comandos

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 2 de 68

Apndice: Mathematica dice que la raz cbica de -8 es compleja!

Advertencias
Advertencia sobre Mathematica
Mathematica es un paquete extraordinariamente poderoso para realizar matemticas por
computadora. Sin embargo al principio su uso puede ser realmente frustrante, ya que si uno
escribe Cos(x) en lugar de Cos[x], por ejemplo, Mathematica no realizar los clculos que
deseamos. Adems Mathematica trabaja con nmeros imaginarios y complejos, lo cul nos da
resultados a veces inesperados, como que la raz cbica de -8 no es -2 (ve el apndice). Sin
embargo, al ganar experiencia en su uso Mathematica se convierte en una poderosa herramienta
para el aprendizaje y aplicacin de las matemticas.
El mundo de Mathematica es muy vasto, hay varios libros, revistas internacionales y pginas de
internet dedicadas a su uso en Matemticas, Fsica, las diferentes ramas de la Ingeniera,
Economa y otras ciencias. Muchos de los problemas a los que quieres encontrar solucin ya han
sido enfrentados por otros usuarios y programadores, as que una importante recomendacin
cuando ests ante un problema nuevo al que quieras aplicar Mathematica es averiguar si ya existe
algn paquete o comando que realice lo que tu necesitas. Muchas veces el paquete o comando ya
est instalado en tu propia computadora junto con Mathematica, as que un buen lugar para
comenzar es navegando a travs de la ayuda del Mathematica, en el men "Help", en su "Master
Index". Por ejemplo, no es necesario usar complicadas frmulas paramtricas para dibujar un
slido de revolucin, ya que Mathematica ya cuenta con un sencillo paquete que te permite
dibujar ese tipo de slidos (a menos, por supuesto, que tu objetivo sea estudiar esas complicadas
frmulas paramtricas).

Advertencia sobre este manual


En este manual no encontrars detalles sobre la sintaxis de los comandos. Este tipo de detalles
pueden encontrarse en el men Help del propio Mathematica, donde entre otras cosas est metido
completo el libro "The Mathematica Book" de Stephen Wolfram, el creador de Mathematica.
La mayor parte de las secciones de este manual fueron concebidas como prcticas de laboratorio
para los alumnos de Matemticas I, II y III del Tecnolgico de Monterrey, Campus Estado de
Mxico, por ello en muchas de ellas se hace nfasis en los conceptos matemticos adems del uso
de Mathematica. Las prcticas son independientes, puedes resolver una de ellas sin haber resuelto
las anteriores, pero si es la primera vez que vas a utilizar Mathematica, comienza por la primer
prctica.
Bienvenido al mundo de Mathematica.
Jos Luis Gmez-Muoz

Introduciendo comandos en Mathematica


Clculo numrico usando slo el teclado
Mathematica es muy sensible al uso de maysculas, espacios, etctera. Debes copiar los ejemplos
exactamente, o Mathematica quizs no entienda lo que quieres calcular.
Mathematica puede utilizarse como una calculadora numrica muy poderosa.Por ejemplo,para
obtener el valor de Pi con 50 decimales escribe en Mathematica el siguiente comando
(exactamente,con todo y maysculas y minsculas) y despus oprime al mismo tiempo las teclas
Shift y Enter:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 3 de 68

Mathematica manipula algunas expresiones sin volverlas numricas para evitar la prdida de
informacin.Por ello hay que indicarle a Mathematica cuando deseamos un resultado
numrico.Por ejemplo introduce:

Si deseamos el resultado numrico podemos utilizar el comando N[ ] de la siguiente manera:

Otra forma de obtener resultados numricos es manejar los nmeros con punto decimal. As
podemos introducir:

Constantes matemticas desde el teclado


Mathematica conoce el valor de varias constantes importantes en matemticas, por ejemplo los
valore de , e, y el nmero imaginario i.
Escribe el siguiente comando para obtener el valor numrico de . La "P" debe ser mayscula y la
"i" debe ser minscula

Mathematica trabaja en radianes. El siguiente comando calcula el seno de /4 radianes:

Se pueden especificar los ngulos en grados utilizando "Degree". El siguiente comando calcula el

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 4 de 68

seno de 45 grados:

Aqu tenemos el valor de la constante "e", la cual es la base del logaritmo natural y de la
importante funcin exponencial. La "E" debe ser mayscula:

Aqu tenemos el valor de la constante "i", la cual es la raiz cuadrada de menos uno. La "i" que tu
escribes debe ser mayscula:

Esta es la raz cuadrada de un nmero negativo, que da como resultado un nmero imaginario:

Clculo numrico usando la paleta basicinput


Nota que adems de la pantalla blanca donde introduces los comandos, hay otra ventana
rectangular con diversos smbolos matemticos (si no tienes esa ventana, puedes abrirla
seleccionando en Mathematica el men File, luego Palettes y por ltimo BASICINPUT). Esta
ventana es la paleta de entradas bsicas. Vamos a utilizarla para crear comandos que usen
smbolos que no estn en el teclado.
Vamos a calcular 2 elevado a la 100. Primero con el ratn presiona en la paleta el smbolo:

Lo que escribas aparecer en el cuadro que est obscuro (seleccionado). Escribe un dos:

Ahora con el ratn selecciona el cuadrado pequeo para que se vuelva obscuro:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 5 de 68

Escribe el nmero 100:

ahora oprime shift-enter, mathematica debe producir el resultado de multiplicar 2 por si mismo
cien veces:

Ahora utiliza la paleta para calcular la raz dcima de 1024 (es decir, averiguar que nmero
multiplicado por si mismo diez veces da 1024)

Constantes matemticas desde la paleta "Basic Input"


Ahora vamos a introducir las constantes usando la paleta:
Usa la paleta para obtener el valor numrico de .

Usa la paleta para obtener el seno de /4 radianes:

Usa la paleta para escribir el cerito de grados y calcular el seno de 45 grados:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 6 de 68

Usa la paleta para obtener el valor de la constante "e", No es la "e" del teclado, es la "e" de la
paleta:

Usa la paleta para obtener el valor de la constante "i", No es la "i" del teclado, es la "i" de la
paleta:

Usa la paleta para obtener el valor de la raz cuadrada de un nmero negativo, que da como
resultado un nmero imaginario:

Practicando con la paleta "Basic Input"


Primero nos aseguramos que no haya informacin previa ni valor alguno metido en los nombres
"x" y "m" que utilizaremos a continuacin.

Usando la misma paleta del inciso anterior, introduce la siguiente integral indefinida:

Ahora prueba introduciendo la siguiente integral:

Ahora prueba introduciendo la siguiente sumatoria:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 7 de 68

Los diferentes tipos de signos de igual


Que vamos a hacer en esta prctica?
Cuando hacemos matemticas con lpiz y ppel, el signo de igual "=" es utilizado indistintamente
para asignar valores a constantes (g=9.8 m/ ), para asignar valores a variables cuyo valor puede
cambiar despus (x=3.4), para definir funciones (f(x)=x+6) y para preguntar para que valores se
cumple una ecuacin ( +x-12=0). Sin embargo, en Mathematica cada uno de estos casos es
manejado con una notacin distinta. En esta prctica revisaremos brevemente esas diferencias en
notacin.

Asignando valores que no se actualizan y valores que s se actualizan.


Primero nos aseguramos que no haya informacin previa ni valor alguno metido en los nombres
"n", "p", "s", "z", "g","u","a", "b" y "c" que utilizaremos en esta prctica.

Si en Mathematica utilizamos un signo de igual "=", estamos asignando un valor fijo, es decir,
que no va a cambiar. En cambio, si utilizamos dos puntos y un igual ":=", estamos asignando un
valor que se va a estar actualizando cada vez que cambien las variables de las cuales depende. Por
ejemplo, escribe los siguiente comandos, nota que para "b" estamos utilizando slo un igual "="
mientras que para "c" estamos utilizando dos puntos ":=".
Escribe:

Mathematica produce el reultado que corresponde al ltimo rengln del comando. En memoria
quedaron guardados los valores de "a" , de "b" y de "c".
Podemos pedirle a Mathematica que muestre una lista cuyos elementos sean "a" ,"b" y "c".

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 8 de 68

El 3 corresponde al valor de "a", el primer 8 corresponde al valor de "b" y el segundo 8


corresponde al valor de "c". Hasta este momento, la asignacin con "=" y la asignacin con ":="
se comportan igual. La diferencia surge cuando cambiamos el valor de "a".
Escribe el siguiente comando:

Se ha cambiado el valor de "a", Cmo afecta eso a los valores de "b" y de "c"?
Para averiguarlo escribe el siguiente comando:

El 10 corresponde al valor de "a", el 8 al valor de "b" y el 15 al valor de "c". Como puedes notar,
cuando asignamos un valor con "=" este valor no se actualiza, por ello "b" sigue valiendo 8,
mientras que al asignar un valor con ":=" este valor cambia cuando cambian las variables de las
cuales depende. As, como "c:=a+5", cuando "a" vala 3 entonces "c" vala 8 y cuando "a"
cambi a "10" entonces "c" cambi automticamente a 15.

Comparando si dos expresiones son iguales.


Para comparar dos expresiones se utilizan dos signos de igual juntos "==". Por ejemplo,
preguntmosle a Mathematica si dos cuartos es igual a un medio.
Escribe:

Mathematica respondi "True", es decir, "Verdadero". Probemos ahora con una comparacin que
no sea verdadera.
Por ejemplo, escribe:

Mathematica respondi "False", es decir, "Falso".

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 9 de 68

Declarando Funciones
Como vimos en el primer inciso, si utilizo ":=" entonces tengo un valor que se va a estar
actualizando. Por ejemplo, si "c:=a+5", entonces cada vez que Mathematica necesite el valor de
"c" lo va a recalcular con el valor que tenga "a" en ese momento. Podramos cometer el error de
utilizar la variable "a" para otros clculos y afectar el valor de "c" en una parte del clculo donde
no debi ser afectada. Cmo tener al mismo tiempo una cantidad que se recalcule cada vez que
la utilice y que adems no dependa arriesgadamente de otras variables externas? La respuesta es
una funcin.
Al declarar una funcin en Mathematica, adems del ":=" tenemos que utilizar un guin "_" junto
al nombre de la variable de la cual depende la funcin. Esto le indica a Mathematica que ese
nombre no representa una variable externa, por el contrario, es una variable interna de la funcin.
Esto es mucho ms claro en un ejemplo. Construyamos una sencilla funcin.
Escribe el siguiente comando. ES MUY IMPORTANTE QUE COPIES EXACTAMENTE,
INCLUYENDO LOS GUIONES LARGOS _ SOLO EN EL LADO IZQUIERDO DEL IGUAL,
ASI COMO LOS DOS PUNTOS:

Ahora podemos hacer clculos usando la funcin g[ ]. Por ejemplo, vamos a pedirle a
Mathematica que escriba una lista con varios elementos que dependen de g[ ].
Escribe:

como se puede ver en el ejemplo anterior podemos evaluar g[ ] para diferente valores o incluso
expresiones algebricas. Observa que al crear la funcin "g[ ]" utilizamos la letra "u" para
representar el argumento. Al escribir "u_" con guin del lado izquierdo del ":=", le indicamos a
Mathematica que "u" es solamente un nombre interno de la funcin. De esa manera, si existe una
variable externa llamada "u", el valor de esta "u" externa no afecta a la funcin.
Por ejemplo, escribe:

Ahora hay una variable "u" que vale 13, sin embargo esta "u" no afecta al funcionamiento de la
funcin g[x].
Si vuelves a escribir:
{g[2], g[1/3], g[mivar], g[2+mivar]}
y oprimes shitf-enter, vuelves a obtener el mismo resultado que antes:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 10 de 68

Resolviendo ecuaciones.
Cuando resolvemos una ecuacin, como -x-6=0, estamos preguntando para que valores de "x"
es cierta la igualdad. Por eso las ecuaciones en Mathematica se representan con el doble signo
igual "==" que vimos en el segundo inciso.
Por ejemplo escribe: Solve[
que valores de z hacen verdadero que

]. Esta instruccin significa para Mathematica "obtn


-z-6 sea igual a cero".

Mathematica tambin puede resolver sistemas de ecuaciones.


Por ejemplo escribe:

La instruccin anterior significa para Mathematica "obtn que valores de n y de p hacen veradero
que n sea igual a 1+2*s*p y tambin que p sea igual a 9+2*n". Como ves, "s" fue tratada como
constante, as que se hizo la solucin simblica de un sistema de dos ecuaciones con dos
incgnitas, "n" y "p".

Ejercicio

Graficando funciones y ecuaciones en dos dimensiones


Funciones explcitas

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 11 de 68

La frmula explcita de una funcin permite calcular la variable dependiente (usualmente "y")
cuando se conoce el valor de la variable independiente (usualmente x). Por ejemplo la frmula y=
.
Primero nos aseguramos que no haya informacin previa ni valor alguno metido en los nombres
"x" y "y" que utilizaremos en esta prctica.

Dibujando ambas funciones con distintos estilos podemos distinguirlas

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 12 de 68

Tambin podemos dibujarlas con distintos grosores

Tambin podemos dibujarlas con distintos colores

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 13 de 68

Ecuaciones
En las funciones explcitas, la variable dependiente "y" est despejada, de tal manera slo se
obtiene un valor de la variable dependiente "y" para cada valor de la independiente "x". En
cambio las ecuaciones son relaciones entre las dos variables en las cuales para cada valor de "x"
puede haber muchos valores de "y".
Es necesario ejecutar el siguiente comando para cargar en la memoria de la computadora los
comandos para graficar ecuaciones. Ten cuidado de usar las comillas correctas

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 14 de 68

Funciones exponenciales, logartmicas, trigonomtricas e


hiperblicas
En esta seccin se ilustra el uso de algunas de las funciones no algebricas que estn incluidas en
Mathematica

Exponenciales
Problema:
Una poblacin de bacterias se tripica cada 4 horas. Si se comenzn con 100 bacterias, grafique la
poblacin como funcin del tiempo y aveige cuanto hay que esperar para tener 5000 bacterias.
Solucin:
La frmula que obedece las condiciones del enunciado es:
p=(100)( )
A continuacin se grafica la poblacin como funcin del tiempo para las primeras ocho horas:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 15 de 68

A continuacin averiguamos cuando habr 5000 bacterias (recuerda que debes usar dos signos
igual):

Recuerda que en Mathematica "Log" significa logaritmo natural. El valor numrico es:

Es decir, hay que esperar 14.2435 horas para tener 5000 bacterias

La Exponencial base e
Aqu est la grfica de la funcin exponencial base e. Recuerda que debes utilizar la "e" de la
paleta, no la "e" del teclado.

En lugar de la e de la paleta puede usarse la "E" MAYSCULA del teclado:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 16 de 68

Tambin puede usarse la notacin "Exp[x]"

Funciones logartmicas
En Mathematica, Log[ ] representa el logaritmo natural, es decir, la funcin inversa del
exponencial base e

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 17 de 68

Para especificar un logaritmo con otra base, se escribe


Log[base,numero]
Por ejemplo, para averiguar a que nmero se tiene que elevar 3 para obtener 81 escribe

Es decir, para obtener 81 es necesario multiplicar 3 por si mismo cuatro veces:


3*3*3*3=81
Aqu se grafica el logaritmo base 10 de "x"

Funciones trigonomtricas
Aqu se grafica la funcin seno:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 18 de 68

Podemos hacer que Mathematica marque las divisiones en el eje "x" como mltiplos de /2 y en
el eje "y" slo en -1 y en 1

A continuacin estn las otras funciones trigonomtricas bsicas:


La funcin coseno

La funcin tangente

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 19 de 68

La funcin cosecante

La funcin secante

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 20 de 68

La funcin ArcoSeno (ahora el eje "y" es el que debe estar en mltiplos de )

Funciones hiperblicas
Esta es la grfica de la funcin seno hiperblico

Esta es la grfica de la funcin coseno hiperblico, tambin llamada catenaria

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 21 de 68

Tambin estn definidas en Mathematica las funciones hiperblicas inversas. Esta es la grfica
del Arcocoseno hiperblico

Derivando e integrando en Mathematica


En esta seccin se muestran brevemente los comandos para derivar e integrar en Mathematica.
Estos comandos tambin sern usados en las siguiente secciones.
Primero nos aseguramos que los nombres "x" y "u" no contiene ningn valor

Para derivar una funcin se utiliza el comando D[ ]:

A continuacin se deriva usando el smbolo de derivada de la paleta

El comando D[ ] asume que todas las letras que no correspondan a la variable de derivacin
representan constantes, como en una derivada parcial

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 22 de 68

En cambio, el comando Dt asume que todas las letras son funciones de la variable de derivacin,
como en una derivada total

Usando la paleta podemos calcular integrales indefinidas (antiderivadas)

Tambin se pueden calcular integrales definidas (reas bajo curvas)

El nmero resultado del clculo anterior es el rea bajo la curva desde 1.5 hasta 3.5
Podemos ver dibujada esta rea usando el comando FilledPlot
Primero es necesario cargar la libreria con el comando FilledPlot

Aqu graficamos la funcin junto con el rea bajo la curva. El dibujo se guarda con el nombre
"fp"

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 23 de 68

Aqu mejoramos el aspecto del dibujo:

Usando los puntos crticos de una funcin para graficarla


Que vamos a hacer en esta prctica?
En esta prctica de Mathematica aprenders algunos comandos relacionados con la definicin,
graficacin y derivacin de funciones, as como la solucin de ecuaciones, y el uso de toda esta
informacin para encontrar los rangos de valores en los ejes coordenados que permiten realizar la
mejor grfica de una funcin.

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 24 de 68

Definiendo y graficando una funcin.


Primero nos aseguramos que no haya informacin previa ni valor alguno metido en el nombre "f",
que es el que vamos a utilizar para nuestra funcin. Tambin vamos a limpiar los nombres "x",
"dibujo1", "dibujo2" y "derivada" que utilizaremos en esta prctica.

ES MUY IMPORTANTE QUE COPIES EXACTAMENTE, INCLUYENDO EL GUION


LARGO _ SOLO EN EL LADO IZQUIERDO DEL PRIMER COMANDO ASI COMO LOS
DOS PUNTOS Y EL PUNTO Y COMA EN SU LUGAR:

lo que hicimos en el primer rengln fue definir la funcin "f", mientras que en el segundo rengln
el comando plot sirve para graficarla. Nota que se especific que se graficara en el dominio de 0 a
10 dentro del comando plot.

Averiguando si hay un mejor dominio para graficar la funcin


En la grfica que se obtuvo, la funcin parece continuar creciendo y creciendo conforme los
valores de "x" aumentan. Ser esta una descripcin adecuada de esta funcin?. Para averiguarlo,
podemos calcular los valores crticos de la funcin, que son los valores de "x" en los cuales la
derivada de la funcin vale cero. Los valores crticos son mximos, mnimos o puntos de
inflexin de la funcin.
Primero obtenemos la derivada de la funcin mediante el comando D[ ], escribe:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 25 de 68

este resultado a quedado guardado en la memoria de la computadora bajo el nombre "derivada".


Nota que la definicin de la funcin est en memoria bajo el nombre "f" y por eso pudimos
utilizarla en el comando D[ ].
Ahora vamos a averiguar los valores de "x" para los cuales la derivada es cero mediante el
comando Solve[ ].
ES IMPORTANTE USAR EN ESTE COMANDO DOS SIGNOS DE IGUAL "==".

Para graficar de -1 a 61 escribe:

Podemos notar que la funcin tiene ms estructura de la que se veia en el inciso anterior. Sin
embargo, esta grfica an se puede mejorar, como se muestra en el siguiente inciso.

Mejorando visualmente el dominio y el rango de la funcin.


La grfica del inciso anterior ya incluye los valores crticos en los cuales la derivada es cero. Pero
tambin es necesario saber como se comporta la grfica antes y despus de esos valores, as que
grafiquemos desde un nmero anterior al -1 hasta otro posterior al 61. Si escogemos graficar del 2 al 62 es poco probable que obtengamos ms informacin, as que grafiquemos desde el -51
(restndole 50 al primer valor crtico) hasta el 111 (sumndole 50 al segundo valor crtico):

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 26 de 68

En esta grfica ya se alcanza a observar que el valor crtico -1 corresponde a un mnimo local de
la funcin, mientras que el valor crtico 61 corresponde a un mximo local. Tambin observa que
Mathematica grafic una lnea casi vertical en x=30. Esta lnea es incorrecta, ya que no forma
parte de la funcin, porque la funcin tiene una asntota vertical en x=30 (revisa la definicin de
la funcin en el primer inciso).
Observa que Mathematica decidi que el eje "Y" debe ir de -400 a 400. Quizs se obtenga una
grfica que resalte ms la forma de la funcin si graficamos en un rango ms pequeo, por
ejemplo, le podemos indicar a Mathematica que grafique con un rango en "Y" desde -250 a 100
mediante la opcin PlotRange adentro del comando Plot:

Eliminando la lnea casi vertical de la grfica


Al dibujar una grfica, Mathematica va uniendo con lneas a los puntos (x,f[x]). Por ello, al unir
un punto a la izquierda del x=30 con otro punto a la derecha del x=30, Mathematica produce la
lnea casi vertical que cruza en x=30. De hecho, la funcin tiene una asntota en x=30 (ve la
definicin de la funcin en el primer inciso). Podramos quedarnos con la grfica del inciso
anterior, recordando que la lnea casi vertical no es parte de la funcin, ms bien es
aproximadamente la asntota.
Por otro lado, si deseamos eliminar esta lnea del dibujo para quedarnos unicamente con el dibujo
correcto de la funcin, podemos realizar dos dibujos, uno de -51 hasta 30, al cual llamaremos
dibujo1, y otro de 30 hasta 111, al cual llamaremos dibujo2, y luego le indicamos a Mathematica

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 27 de 68

que los muestre juntos:

Como observaste obtuvimos tres grficas, las cuales son dibujo1, dibujo2 y por ltimo las dos
juntas.

Ejercicio

Para que valores de x tiene asntotas verticales la funcin? (Es decir, para que valores de x se

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 28 de 68

vuelve cero el denominador de la fraccin)


Encuentra la derivada de la funcin con respecto a x. Para qu valores de x se vuelve cero la
derivada?
Realiza una grfica de la funcin. Escoge el dominio (valores en x) y el rango (valores en y) para
que la grfica muestre claramente todas las caractersticas de la funcin (asntotas, mximos,
mnimos, curvatura, etc.)
Realiza una grfica como la anterior pero que las asntotas no sean dibujadas.

Slidos de revolucin
Primero nos aseguramos que los nombres "x" y "u" no contiene ningn valor

Esta es una funcin que usaremos como ejemplo:

Primero cargamos la librera de Mathematica con los comandos para dibujar superficies de
revolucin:

Esta es la superficie generada cuando hacemos girar la funcin alrededor del eje y:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 29 de 68

Esta es la superficie generada cuando hacemos girar la funcin alrededor del eje x:

Ejemplo de un slido de revolucin: Fabricando una pieza de ajedrez


Supn que estamos fabricando una pieza de ajedrez. Una de las piezas se puede generar al hacer
girar la siguiente funcin alrededor del eje x:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 30 de 68

Primero define la funcin seccionada usando el comando "which"

Aqu puedes ver el dibujo de la funcin seccionada que creamos

Esta es la pieza de ajedrez generada cuando la funcin gira alrededor del eje "x":

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 31 de 68

Supn que necesitamos conocer la cantidad de material necesaria para construir la pieza de
ajedrez. Esa cantidad de material es el volumen, que se puede calcular con las siguientes
integrales (revisa "slidos de revolucin" en tu libro de clculo):

Si todas las unidades de la pieza de ajedrez estn en centmetros, entonces el volumen calculado
est en centmetros cbicos.

Ejercicio: La botella de refresco


Ejercicio:
a) Crea la frmula de una funcin seccionada tal que cuando sea girada alrededor del eje x se
genere la figura de una botella de refresco, como se muestra la figura ms abajo. Tu botella de
refresco debe ser de 24 centmetros de largo
b) Dibuja la botella usando el comando SurfaceOfRevolution
c) Calcula el volumen de la botella en centmetros cbicos
d) Convierte el volumen de la botella a litros

Graficando funciones y ecuaciones en tres dimensiones


Graficando funciones que dependen de dos variables
Una funcin "z" que depende de dos variables "x","y", es una frmula que permite calcular "z" si
se conocen "x" y "y". Es decir, "z" est despejada.

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 32 de 68

Primero nos aseguramos que los nombres "x", "y", "z" no tengan nada

Otra forma de visualizar la funcin es obtener el diagrama de contorno, que es como un mapa
topogrfico, lo ms obscuro est ms abajo:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 33 de 68

Graficando ecuaciones de tres variables


Una ecuacin de tres variables, "x", "y", "z", es una relacin en la cual la variable "z" no est
necesariamente despejada,y a diferencia de la funcin, pueden haber diferentes valores de "z"
para el mismo (x,y)
Es necesario ejecutar el siguiente comando para cargar en la memoria de la computadora los
comandos para graficar ecuaciones con tres variables. Ten cuidado de usar las comillas correctas

Hay varias opciones que permiten cambiar el aspecto del dibujo:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 34 de 68

Aqu est el dibujo de otra cudrica:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 35 de 68

Graficando un potencial elctrico debido a dos lneas de


carga
Que vamos a hacer en esta prctica?
Utilizaremos el potencial elctrico provocado por dos lneas de carga de distinto signo en un
espacio bidimensional para mostrar diferentes formas de graficar una funcin f(x,y) que depende
de dos variables.

Definiendo un potencial elctrico que depende de dos variables producido por


una lnea de carga
En un espacio limitado a dos dimensiones, el potencial elctrico que cumple la ley de Gauss, que
es medido en un punto (xa,ya) y que es provocado por una lnea de carga situada en (xc,yc) tiene
la siguiente frmula:
p=-ln[
] (en unidades arbitrarias).
A continuacin se ve un esquema de la situacin, (x,y) representan la posicin desde donde se
observa el campo debdio a la lnea de carga.

Para definir enMathematicauna nueva funcin que calcule el potencial,que en esta ocasin
llamaremos pot2d,escribe el siguiente comando (ES MUY IMPORTANTE QUE COPIES
EXACTAMENTE, INCLUYENDO GUIONES, MINUSCULAS Y MAYUSCULAS):

Mathematica no produce ningn resultado, pero ya tiene en su memoria la definicin de la

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 36 de 68

funcin pot2d.
As, para obtener la expresin del potencial en el punto (x,y) debido a una carga situada en el
punto (3,5) escribe el siguiente comando:

Este resultado es el potencial producido por una lnea de carga que cruza el plano en el punto
(3,5).

Definiendo un potencial producido por dos lneas de carga


Vamos a definir otra funcin que calcule el potencial que se "siente" en un punto (xb,yb) de un
plano debido a dos lneas de carga DE SIGNO DISTINTO, una situada en el punto (-1,0) y otra
situada en el punto (1,0), como se ve en la figura:

Para construir el potencial utilizamos la funcin pot2d que definimos en el inciso anterior.
Escribe el siguiente comando:

Mathematica no produce ningn resultado, pero ya tiene en su memoria la definicin de la


funcin pot2cargas2d.

Este es el potencial producido por las cargas puntuales DE SIGNO DISTINTO localizadas en (1,0) y (1,0).

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 37 de 68

Graficando el potencial producido por dos lneas de carga


Nuestra funcin "pot2cargas2d" depende de dos variables, (x,y), las cuales dan la posicin en la
cul se est "midiendo" o "sintiendo" el potencial. Una grfica de esta funcin nos puede indicar
en que puntos el potencial produce una fuerza elctrica mayor (que es en donde el potencial
cambia bruscamente) y donde una fuerza menor (que es en donde el potencial cambia muy poco).
Mathematica ofrece varias opciones para graficar. Exploremos primero la "grfica de densidad".
Escribe:

En la grfica de densidad, los cuadros ms claros tienen valores mayores de potencial y los
cuadros ms obscuros tienen valores menores. Este tipo de grfica suele ser util para hacer
comparaciones con imgenes producidas por equipo de laboratorio (un ejemplo que no es de
potencial elctrico, es el de las imgenes de los bebs antes de nacer producidas por los equipos
de ultrasonido).
Otro tipo de grfica es la grfica de contornos.
Escribe:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 38 de 68

En electricidad, a las lneas de contorno de un potencial se les llama "equipotenciales", ya que a


lo largo de toda una lnea el potencial es constante. La fuerza elctrica que sentiria una tercera
carga debido a las dos cargas iniciales sera perpendicular a las lineas equipotenciales. Si en lugar
de un potencial fuera un mapa topogrfico, las lneas de contorno seran las lineas de igual altura.
Un tercer tipo de grfica es la grfica de tres dimensiones.
Escribe:

En este dibujo, la altura de la superficie corresponde al valor del potencial en ese punto. La altura
o la profundidad deberan ser infinitas exactamente en los puntos en donde estn situadas las
cargas que producen el potencial. En lugar de eso, el muestreo que Mathematica hizo para
producir la grfica produce una pequea montaa y un pequeo valle en donde estn localizadas
las cargas.

Graficando el gradiente de una funcin


El gradiente de una funcin "f " que depende de dos variables esta dado por el vector:
f=

Este vector apunta en la direccin que "f " cambia ms rapidamente. Para un potencial, esta es
tambin la direccin en que apunta la fuerza producida por el potencial. As, una grfica del

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 39 de 68

gradiente del potencial elctrico es de hecho una grfica del campo de fuerza elctrico
correspondiente a ese potencial.
Primero cargamos los comandos necesarios para graficar el gradiente

A continuacin se dibuja el gradiente. Los parmetros ScaleFactor y MaxArrowLength sirven


para evitar que algunas flechas sean demasiado grandes o demasiado pequeas.

Ejercicio
Define la funcin pot3 la cual de el potencial debido a tres lneas de carga, una positiva en el
punto (-1,0), otra negativa en (0,1) y otra positiva en (2,2).
Haz los dibujos de densidad, de contorno y de tres dimensiones del potencial pot3 que acabas de
definir
Haz el dibujo del campo de fuerza de ste potencial. Ajusta los parmetros ScaleFactor y
MaxArrowLength tal manera que las flechas se vean mejor.

Graficando un potencial elctrico debido a dos cargas


puntuales
Que vamos a hacer en esta prctica?

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 40 de 68

Utilizaremos el potencial elctrico provocado por dos cargas de distinto signo para mostrar como
se puede graficar un campo de fuerza presente en un espacio de tres dimensiones. Usaremos
tambin animacin para visualizar mejor la forma del campo.

Definiendo un potencial producido por una carga


En el espacio tridimensional, el potencial elctrico que cumple la ley de Gauss, que es medido en
un punto (xa,ya,za) y que es provocado por una carga puntual situada en (xc,yc,zc) tiene la
siguiente frmula:
p=

(en unidades arbitrarias).

Para definir en Mathematica una nueva funcin, a la cual llamaremos pot3d, que calcule este
potencial, escribe en Mathematica el siguiente comando (ES MUY IMPORTANTE QUE
COPIES EXACTAMENTE, INCLUYENDO GUIONES, MINUSCULAS Y MAYUSCULAS):

Mathematica no produce ningn resultado, pero ya tiene en su memoria la definicin de la


funcin pot3d.
As, para obtener la expresin del potencial en el punto (x,y,z) debido a una carga situada en el
punto (3,5,1) escribe el siguiente comando:

el cual es el potencial producido por una carga puntual localizada en (3,5,1).

Definiendo un potencial producido por dos cargas puntuales


Vamos a definir otra funcin que calcule el potencial que se "siente" en un punto (xb,yb,zb)

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 41 de 68

debido a dos cargas DE SIGNO DISTINTO, una situada en el punto (-1,0,0) y otra situada en el
punto (1,0,0). Para ello utilizamos la funcin pot3d que definimos en el inciso anterior.

Escribe el siguiente comando:

Mathematica no produce ningn resultado, pero ya tiene en su memoria la definicin de la


funcin pot2cargas3d.
As, para obtener la expresin del potencial en el punto (x,y,z) debido a las dos cargas, escribe el
siguiente comando:

el cual es el potencial producido por las cargas puntuales DE SIGNO DISTINTO localizadas en
(-1,0,0) y (1,0,0).

Graficando el gradiente de una funcin de tres variables

Para cargar en la memoria de la computadora el paquete que permite graficar un gradiente en tres,

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 42 de 68

escribe el siguiente comando:

Mathematica no produce ningn resultado, pero ya tiene en memoria los comandos que
necesitamos.
Escribe ahora:

Con el comando ContourPlot3D podemos graficar las superficies equipotenciales (superficies de


nivel) del potencial:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 43 de 68

Aqu se han modificado algunas opciones para resaltar las superficies:

Creando los cuadros de una pelcula animada del campo


Los dibujos del inciso anterior pueden ser un poco confusos. El movimiento o la rotacin de una

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 44 de 68

figura tridimensional puede facilitar su interpretacin, debido al movimiento relativo entre los
diferentes componentes de la figura. En este inciso crearemos los cuadros de una "pelcula" que
mostrar al campo rotando.
Para cargar en la memoria de la computadora el paquete que permite crear los cuadros de la
pelcula, escribe el siguiente comando:

Mathematica no produce ningn resultado, pero ya tiene en memoria los comandos que
necesitamos.
Usaremos la grfica "g" de la seccin anterior (Frames da el nmero de cuadros de la pelcula.
Entre ms cuadros uses mejor se ver la pelcula pero ms memoria requerir):

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

Pgina 45 de 68

23/07/2003

elcurso.nb

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

Pgina 46 de 68

23/07/2003

elcurso.nb

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

Pgina 47 de 68

23/07/2003

elcurso.nb

Pgina 48 de 68

Animando la pelcula
Una vez que Mathematica haya terminado de dibujar todos los cuadros, oprime dos veces con el
ratn sobre uno de los cuadros. Mathematica mostrar la pelcula. Si la pelcula es demasiado
rpida, observa que abajo a la izquierda en la ventana de Mathematica aparecen unos botones con
los cuales puedes disminuir o aumentar la velocidad. Puedes visualizar las lneas de fuerza
saliendo de una carga y entrando en la otra?

Ejercicio
Utilizando la funcin pot3d que definimos en el primer inciso, grafica el gradiente del campo
producido por una partcula colocada en el punto (0,0,0). Es decir, grafica el gradiente de pot3d
[{0, 0, 0}, {x, y, z}] .
Haz una pelcula de 30 cuadros del gradiente de pot3d[{0, 0, 0}, {x, y, z}] girando.

Resolviendo Ecuaciones Diferenciales


En esta seccin se muestra el uso bsico de los comandos para resolver ecuaciones diferenciales
Primero nos aseguramos que los nombres de variables que vamos a usar en esta prctica estn
limpios:

Soluciones generales

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 49 de 68

Aqu se resuelve la ecuacin diferencial especificando que la constantes de integracin deben ser
"K" en lugar de "C"

Aqu se resuelve una ecuacin diferencial de segundo orden usando C[1] y C[2] como las
constantes de integracin:

Ejercicio
Obtn la solucin general de la ecuacin diferencial:

Problemas de valor inicial

Para resolver la ecuacin diferencial escribe el siguiente comando:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 50 de 68

Podemos dibujar la solucin:

Podemos estudiar el comportamiento a largo plazo de la solucin:

La funcin se aproxima a 108.889 para valores grandes del tiempo "t"

Soluciones numricas de problemas de valor inicial


Algunas ecuaciones diferenciales no pueden ser resueltas en forma exacta. Se recurre entonces a
soluciones numricas, las cuales no dan una frmula pero si pueden dar grficas y valores
numricos aproximados.
El comando para la solucin numrica de ecuaciones diferenciales en Mathematica es NDSolve
[]

La solucin numrica es un tipo de objeto de Mathematica llamado InterpolatingFunction.


Para poder graficar la solucin, la ponemos dentro del nombre funcion[ ]:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 51 de 68

Ahora ya podemos evaluar y graficar la solucin numrica:

Las soluciones numricas dependen de muchos parmetros, y pueden ser muy inexactas si estos
parmetros no son los asecuados. Por ello es recomendable estudiar el comando NDSolve en la
ayuda de Mathematica y tambin estudiar libros de mtodos numricos para estar seguro de que
la solucin numrica nos est dando informacin realmente til.

Animaciones y exportacin a GIF animado


Que vamos a hacer en esta prctica?
En esta prctica se muestra el ejemplo de una animacin de un objeto tridimensional (un
elipsoide) que despus es exportada a un archivo GIF animado, el cual a su vez puede utilizarse
en pginas de internet
Los siguientes comandos dibujan un elipsoide y lo guardan con el nombre "figura"

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 52 de 68

Los siguientes comandos crean una lista de imgenes rotadas. La lista se guarda con el nombre
"listarotacion"

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

Pgina 53 de 68

23/07/2003

elcurso.nb

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

Pgina 54 de 68

23/07/2003

elcurso.nb

Pgina 55 de 68

Una vez que Mathematica haya terminado de dibujar todos los cuadros, oprime dos veces con el
ratn sobre uno de los cuadros. Mathematica mostrar la pelcula. Si la pelcula es demasiado
rpida, observa que abajo a la izquierda en la ventana de Mathematica aparecen unos botones con
los cuales puedes disminuir o aumentar la velocidad.
El siguiente comando exporta la animacin a un archivo GIF animado que puede ser mostrado en
una pgina de internet. Algunos programas de dibujo slo mostrarn la primera imagen de la
animacin, sin movimiento, pero si abres el archivo GIF con un navegador de internet podrs ver
la animacin. Adems existen otros programas que pueden convertir los archivos GIF animados
en archivo AVI de video

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 56 de 68

Enseando nuevos comandos a Mathematica


Que vamos a hacer en esta prctica?
Es posible ensearle a Mathematica nuevas funciones. En esta prctica supondremos que
Mathematica no sabe integrar, entonces crearemos una nueva funcin, "integral", a la cul le
daremos poco a poco las propiedades de la integracin

La nueva funcin "integral"


Mathematica puede hacer integrales mediante su poderoso comando "Integrate". Sin embargo,
supongamos que Mathematica no supiera integrar, y que se lo vamos a ensear creando una
nueva funcin a la cual llamaremos "integral". Nota que el nombre de esta nueva funcin
comienza con minscula. Es una buena idea que las nuevas funciones y variables que creamos
en Mathematica comiencen con minsculas, para distinguirlas facilmente de las funciones
y variables originales de Mathematica, las cuales comienzan con mayscula.
Primero nos aseguramos que no haya informacin previa ni valor alguno metido en el nombre
"integral", que es el que vamos a utilizar para nuestra funcin. Tambin vamos a limpiar los
nombres de variables que utilizaremos en esta prctica.

Para comprobar que no hay nada con el nombre "integral", le solicitamos a Mathematica
informacin sobre la funcin "integral". Escribe el siguiente comando:

Global`integral

Mathematica nos indic que el nombre "integral" no contiene ningn valor.


Para ver que hace Mathematica con una funcin desconocida, escribe el comando:

es decir, Mathematica da como resultado el mismo comando como introducimos, ya que no tiene

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 57 de 68

ninguna informacin acerca de las propiedades de la funcin "integral". Como ves, hemos elegido
que nuestra funcin integral tenga dos argumentos, el primero ser la expresin a integrar y el
segundo la variable de integracin.

Introduciendo la linealidad en la funcin "integral"


Ahora vamos a ensearle a Mathematica que la integral de una suma es igual a la suma de las
integrales. Es decir, vamos a ensearle a Mathematica que .
ESCRIBE EL SIGUIENTE COMANDO, RECUERDA QUE ES MUY IMPORTANTE QUE
COPIES EXACTAMENTE, INCLUYENDO LOS GUIONES LARGOS _ SOLO EN EL LADO
IZQUIERDO DEL IGUAL, ASI COMO LOS DOS PUNTOS.

En este caso Mathematica no produce ningun resultado, pero ahora Mathematica sabe esta nueva
regla.
Para comprobarlo, escribe el comando:

Mathematica convirti a la integral de la suma en la suma de las integrales. Ahora vamos a


ensearle a Mathematica que una constante multiplicando sale de la integral, es decir

=c

.
Escribe el siguiente comando:

Este comando intruye a Mathematica a sacar multiplicando a las constantes que no dependen de
x. Mathematica no produce ningun resultado, pero ahora Mathematica sabe esta nueva regla.
Para comprobarlo, escribe el comando:

Mathematica convirti a la integral de la suma en la suma de las integrales y luego sac las
constantes. Juntas, ambas reglas constituyen la propiedad de linealidad:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 58 de 68

,con a y b constantes.

Integracin de una constante


Ahora le ensearemos a Mathematica que

Escribe el siguiente comando:

Mathematica no produce ningn resultado, pero ya sabe como integrar una constante.

Integracin de

con n diferente de -1

Ahora le ensearemos a Mathematica que

para "n" diferente de "-1".

Escribe el siguiente comando (ES IMPORTANTE EL PUNTO PEGADO AL GUION EN LA


ENE: "n_.", PARA QUE SE INCLUYA EL CASO EN QUE ENE VALE UNO):

Mathematica no produce ningn resultado, pero ya sabe como integrar

Para comprobarlo escribe el comando:

Integracin de 1/(a * x + b)
Ahora le ensearemos a Mathematica que

para "a" y "b" constantes

Escribe el siguiente comando (ES IMPORTANTE EL PUNTO PEGADO AL GUION EN LA A:


"a_." Y EN LA B: "b_." , PARA QUE SE INCLUYAN LOS CASOS EN QUE A VALE UNO
Y/O B VALE CERO):

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 59 de 68

Mathematica no produce ningn resultado, pero ya sabe como integrar 1/x.


Para comprobarlo escribe el comando:

Nota: En caso de que no obtengas el resultado correcto, quizs hayas introducido alguna regla
equivocada. La forma ms sencilla de corregir es repetir todo desde el Clear[integral], que borra
toda la informacin en el nombre integral, y escribiendo y evaluando otra vez todas las reglas.

Probando la nueva funcin "integral"


Con las reglas que se han incluido en la funcin "integral" es ahora posible integrar expresiones
como

Escribe el siguiente comando

Vamos a solicitar informacin acerca de la funcin integral


Oprime Shift-Enter, Qu resultado da Mathematica?

Global`integral

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 60 de 68

Ejercicio
Enseale a Mathematica que

; SIEMPRE Y CUANDO "a" Y "b" NO

DEPENDAN DE "x".
Integra algunas funciones ejemplo para mostrar que le enseaste bien a Mathematica.

Diseando un comando para calcular impedancias


Que vamos a hacer en esta prctica?
Exploraremos el uso de los comandos "Map" y "Apply". Los usaremos para definir una funcin
que calcule impedancias de circuitos electricos en serie, en paralelo y en combinaciones.

El comando Apply
El comando "Apply" permite aplicar una funcin a una lista. Como ejemplo, para aplicar
"mifuncion" a la lista "{a,b,c}"
Primero nos aseguramos que no haya informacin previa ni valor alguno metido en los nombres
"a","b" y "c" que utilizaremos en esta prctica.

un caso particular importante es cuando aplicamos la funcin "Plus", que indica una suma.
Escribe:

Es diferente de cuando se uso "mifuncion"? De hecho es lo mismo, solo que Plus[a,b,c] es la


manera en que Mathematica representa internamente a+b+c. Cuando Mathematica muestra al
usuario los resultados, los transforma de su notacin simblica (Plus[a,b,c]) en notacin
matemtica (a+b+c).

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 61 de 68

El comando Map
El comando Map es similar al comando Apply, pero aplica la funcin a cada miembro de la lista.
Como ejemplo escribe:

Compara este resultado con el resultado que se habia obtenido con "Apply" en el inciso anterior.
Escribe el siguiente comando

Para crear una lista en la que cada elemento sea del tipo "mifuncion[mivar,a]" en lugar de
"mifuncion[mivar][a]" hay que introducir un comando como el siguiente:

Propiedades de la impedancia elctrica


Vamos a crear una funcin que pueda calcular la impedancia de un circuito formado por
resistencias, capacitores e inductancias. La impedancia de elementos en serie es la suma de sus
impedancias:
z=
La impedancia de elementos conectados en paralelo est dada por
z=
La impedancia de un resistor es z=R; la de un capacitor es
z=
y la de una inductancia es
z=iL.

Definicin de los smbolos que utilizaremos


Vamos a representar una resitencia de "r" Ohms por el smbolo "resistor[r]". As una resistencia
de 8 Ohms sera "resistor[8]". De forma similar tendremos los smbolos "capacitor[c]" y tambin
"inductor[L]". Elementos conectados en serie sern representados por "serie[{e1,e2,e3...}]" y los

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 62 de 68

elementos conectados en paralelo sern representados por "paralelo[{e1,e2,e3...}]".


Con lo anterior, un circuito que tenga dos resistencias "r1" y "r2" en paralelo y estas a su vez en
serie con un capacitor "c" ser representado por el siguiente smbolo:
serie[{capacitor[c], paralelo[{resistor[r1], resistor[r2]}]}].
Cmo es el dibujo de este circuito?
La funcin para calcular impedancias la llamaremos "impedancia[e,w]", en donde el primer
parametro "e" ser de hecho una combinacin de elementos en serie y paralelo, y el segundo
parmetro "w" es la frecuencia de corriente alterna a la cual est funcionando el circuito.
As, la impedancia del circuito anterior a una frecucencia "w" sera: impedancia[serie[{capacitor
[c], paralelo[{resistor[r1],resistor[r2]}]}], w]

Creando la funcin impedancia


Ahora hay que decirle a Mathematica como debe funcionar la funcin impedancia.
Asegurmonos que el nombre "impedancia" no contiene nada:

Primero indiquemosle como funcionar ante elementos en serie. Escribe (Reconoces como
trabajan en este caso los comandos Apply y Map?):

Mathematica no produce ningn resultado pero ya sabe como calcular impedancias en serie.
Para comprobarlo escribe el siguiente ejemplo:

Para introducir la regla para elementos en paralelo escribe:(Reconoces como trabajan en este
caso los comandos Apply y Map?).

Mathematica no produce ningn resultado pero ya sabe como calcular impedancias en paralelo
Para comprobarlo escribe el siguiente ejemplo:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 63 de 68

Ahora introduzcamos el funcionamiento de la funcin impedancia para los elementos


individuales.
Escribe (La letra "i" tiene que ser la de la paleta, que es el imaginario "i"):

Ahora Mathematica ya tiene toda la informacin para calcular impedancias. Por ejemplo, para
calcular la impedancia de un circuito que tenga dos resistencias "r1" y "r2" en paralelo y estas a
su vez en serie con un capacitor "c"
Escribe:

Ejercicio
Usa la funcin creada en esta prctica para calcular la impedancia de un circuito con una
inductancia s=4 en paralelo con una capacitancia c=3, y todo eso en serie con una resistencia r=2,
y todo el circuito esta conectado a una fuente de corriente alterna de frecuencia w=60.
Crea otros dos circuitos junto con sus dibujos y calcula sus impedancias.
Describe como funcionan los comandos Map y Apply en la definicin de impedancias en serie y
en paralelo.

Construyendo libreras de comandos


Los nuevos comandos que le aadimos al Mathematica pueden ser guardados en librerias o
paquetes. Esta seccin muestra un paquete de ejemplo. En la computadora en la que se est
escribiendo esta seccin existe un directorio (carpeta, folder) llamada "C:\misprogramas", en la
cual a su vez hay un archivo llamado "miarchivo.m" que contiene la definicin de un nuevo
comando que permite dibujar flechas en tres dimensiones.
Primero cambiamos al directorio (carpeta) llamado "C:\misprogramas"

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 64 de 68

Con el comando FileNames[ ] obtenemos un listado de los archivos (documentos) en el directorio

El listado de nombres incluye un archivo llamado "miarchivo.m". Este archivo tiene la definicin
de un comando para dibujar flechas en tres dimensiones.
El archivo "miarchivo.m" fue creado con un editor de textos ASCII (el Notepad). Para ver su
contenido en pantalla se utiliza el comando !!

BeginPackage["dibujaflecha`"]
(* Comentario: Autor Jos Luis Gmez-Muoz *)
flecha::usage =
"flecha[{x1, y1, z1}, {x2, y2, z2}] "<>
"es una primitiva de grficas "<>
"en tres dimensiones que representa "<>
"una flecha que va "<>
"desde {x1,y1,z1} hasta {x2,y2,z2}. "<>
"Flecha[{x, y, z}] representa "<>
"la flecha desde el origen {0,0,0} "<>
"hasta {x,y,z}. Esta primitiva "<>
"funciona mejor con PlotRange->All"
Begin["`Private`"]
(* Comentario: Este es el programa para dibujar la flecha *)
flecha[{x1_, y1_, z1_}, {x2_, y2_, z2_}] :=
Module[{ anchocabeza, largocabeza, mag, magnitud,
vectorunit, perpend, binormal, punto1},
anchocabeza = 1/50;
largocabeza = 0.10;
mag[{a_, b_, c_}] = Sqrt[a^2 + b^2 + c^2];
magnitud = mag[{x2 - x1, y2 - y1, z2 - z1}];
vectorunit = {x2 - x1, y2 - y1, z2 - z1}/magnitud;
perpend = Cross[vectorunit, {0, 0, 1}];
perpend = (magnitud*anchocabeza)*perpend/mag[perpend];
binormal = Cross[perpend, vectorunit];
binormal = (magnitud*anchocabeza)*binormal/mag[binormal];
punto1 = {x1, y1, z1} + (1 - largocabeza)*magnitud*vectorunit;
{ Polygon[{{x2, y2, z2}, punto1 + perpend, punto1 + binormal}],
Polygon[{{x2, y2, z2}, punto1 + perpend, punto1 - binormal}],
Polygon[{{x2, y2, z2}, punto1 - perpend, punto1 + binormal}],
Polygon[{{x2, y2, z2}, punto1 - perpend, punto1 - binormal}],
Line[{{x1, y1, z1}, {x2, y2, z2}}]
}]
(* Comentario: Con el siguiente comando si se omite el primer punto se asume que
flecha[{x_, y_, z_}] := flecha[{0,0,0}, {x, y, z}];
End[ ]
EndPackage[ ]

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 65 de 68

Antes de cargar los comandos contenidos en miarchivo.m, averigemos que librerias (paquetes)
estn ya en la memoria de la computadora en este momento:

Ahora cargamos los comandos contenidos en miarchivo.m en memoria:

Volvemos a preguntar por las libreras (paquetes) que estn en la memoria de la computadora:

Del comando anterior podemos observar que hay una nueva librera, llamada dibujaflecha. Con el
comando Names[ ] averiguamos que comandos nuevos hay en esa librera

Hay un nuevo comando llamado flecha. Con el signo de interrogacin le pedimos informacin a
Mathematica acerca de ese comando:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 66 de 68

Aqu est un ejemplo de cmo se usa este nuevo comando flecha. Se usa la opcin PlotRange>All como sugiere la informacin sobre el comando

Haciendo modificaciones al contenido de este archivo de ejemplo, puedes construir tus propias
libreras de comandos

Apndice: Mathematica dice que la raz cbica de -8 es


compleja!
Aqu tenemos el clculo de una raz cuadrada

Aqu tenemos el clculo de una raz cuadrada de un nmero negativo

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 67 de 68

Todo va bien, un nmero negativo tiene una raz cuadrada imaginaria. Sin embargo nosotros
sabemos que las races cbicas son reales, por ejemplo la raz cbica de -8 es -2, ya que
(-2)(-2)(-2)=-8
as que esperamos que Mathematica nos diga que la raz cbica de -8 es -2
Sin embargo...

Mathematica report un nmero complejo!


Esto es porque en nmeros complejos todo nmero tiene tres races cbicas, y en el caso de los
nmeros negativos su raz cbica principal es un nmero complejo.
Para obtener las tres races cbicas de -8 ejecuta los siguientes comandos. Es muy importante
que escribas dos signos de igual juntos!

Supongamos que construyes un programa o comando en Mathematica donde es necesario que al


calcular la raz cbica de -8 se obtenga -2. Puedes forzar a Mathematica a reportar nmeros reales
cargando el paquete RealOnly
Escribe el siguiente comando y oprime Shift-Enter. Ten cuidado de usar las comillas correctas.

Mathematica no produce ningn resultado al cargar la librera (a menos que hayas escrito algo
incorrecto), pero ahora cambian los resultados de sus clculos:

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

elcurso.nb

Pgina 68 de 68

ADVERTENCIA: Mathematica necesita trabajr con nmeros complejos, por ello al cargar la
librera RealOnly otros comandos pueden funcionar mal. En otras palabras, usa la librera
RealOnly slo si es realmente necesario
Converted by Mathematica

July 11, 2003

file://D:\Mis Documentos\Cursos\Curso_Mathematica\elcurso\index.html

23/07/2003

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