Está en la página 1de 44

Práctica I: Introducción a

Wolfram Mathematica

Inst: Carmen Amanda Girón


Inst: Eros Daniel Rivera
Generalidades

Wolfram Mathematica es un sistema computacional


técnico cuyo kernel opera interpretando el lenguaje
Wolfram y la interfaz gráfica funciona como Notebook
Documents.
Los Notebook Documents son trabajados en divisiones conocidas como celdas que
ejecutan comandos de programación literaria.

Cada Corchete resaltado en gris y ubicado a la izquierda


representa una celda del nb (notebook). Y podemos ver
que incluso tenemos Celdas que contienen a otras, esto se
debe a jerarquías, que veremos mas adelante.

Cada celda nueva que se crea de forma


automática será una celda de Lenguaje Wolfram,
fácilmente identificable porque cada letra o palabra
sin valor asignado será resaltada en color azul.

Las celdas pueden ser de varias formas, entrada de


texto, de comando. Incluso las entradas de texto
vienen separadas para mayor facilidad (Título,
Subtítulo, etc.)
En una celda a operar bajo Wolfram, lo que se coloca es: comandos,
1 operaciones, o asignaciones de variables.

Mientras la variable que se introduce, no tenga valor asignado, estará


2 resaltada en azul, de lo contrario lo que se ingreso, o tiene un valor, o
es una palabra reservada del lenguaje.

Una vez tenemos una instrucción colocada en la celda, hacemos


3 que dicha instrucción sea efectuada por el sistema utilizando las
teclas Shift + Enter.

Una vez hemos puesto a “correr” una celda, podemos observar a


la izquierda de la celda, el prefijo In de cuando se introdujo al
sistema una instrucción, y un Out con lo que la instrucción retorna.

Algo a tener en cuenta, Wolfram diferencia entre minúsculas y


mayúsculas, por lo tanto, se tiene que especificar bien cuando se
asigne o llame a una variable o comando.
Los comandos en wólfram, requieren que se les introduzcan sus respectivos
parámetros, por lo tanto en su sintaxis, luego de llamar al comando a usar, lo
común es que los parámetros se coloquen dentro de corchetes “[ ]”.

Por defecto, Wolfram opera en Radianes.

Las letras griegas también pueden ser usadas como


variables, no tienen comportamiento “especial” solo por ser
un carácter diferente

En Wolfram se pueden introducir letras griegas de diversas


formas, pero así como se menciono antes, no solo tenemos
palabras como reservadas para el lenguaje, también hay
letras reservadas.
Valor Numérico y Simplificación
Podemos también reducir o simplificar diferentes expresiones ya sea que el sistema nos retorno
como alguna evaluación o cálculo, o una expresión que nosotros tenemos externamente y
deseamos reducir. Podemos Simplificar el ultimo valor obtenido, simplificar una expresión o
incluso el resultado que se obtendrá de alguna operación usando el comando FullSimplify.

Por defecto, Wolfram siempre busca dar una solución analítica a todo cálculo que se le pida
efectuar, pero si deseamos obtener el resultado numerico de cualquier operación tenemos dos
formas para hacerlo: Encontrando el valor de la ultima salida del software o usando el
comando en la operación a realizar.
Operaciones Básicas
Las operaciones pueden realizarse directamente con el teclado o haciendo uso de las
paletas del programa.

Suma

La multiplicación también puede


expresarse con solo un espacio. Sin
Resta
embargo este puede crear confusión a
veces.

Multiplicación

División
Una misma operación puede realizarse de varias maneras equivalentes.

Potencias Raíces

Teclado

Paletas

Comando
Todo comando que utilice tendrá la siguiente estructura básica:

El nombre del comando El argumento


• Siempre iniciará con mayúscula. • Siempre estará contenido entre
• Siempre será color negro. corchetes.
• Su formato específico
dependerá del comando.
Herramientas
Entre herramientas que la interfaz de Wolfram pone a
nuestra disposición, quizás de las mas útiles cuando se viene
1 empezando e incluso teniendo experiencia, vienen a ser las
Paletas de Ayudante.

Contamos con 3 tipos de “Ayudantes”: Ayudante


de Clase, Ayudante de Escritura y Ayudante de
Matematica Básica.

Probablemente, el de mayor utilidad para


nosotros en estos momentos, es el Ayudante de
Escritura.
A continuación tenemos el Ayudante de Escritura, esta
paleta cuenta con 3 diferentes menús:
2 1. Escribir y Formatear
2. Composición Tipográfica
3. Ayuda y Opciones

En cuanto al primer menú, tenemos opciones para cuando


las celdas que estamos manipulando son celdas de texto.

2.1 2.2
Podemos modificar la celda actual en la que estamos o tirar una
2.3 2.4
2.1
nueva, como una celda con características definidas por defecto,
como ser cierto tamaño y color de fuente para separar títulos y
subtítulos.

En celdas de Sección, no solo implica un tamaño y color de fuente,


también se coloca una separación visible en el caso de Sección, y
una sangría en el caso de subsecciones. Esto para mantener
2.2
definidas las jerarquías, por lo que es posible ocultar todo el texto en
una sección y solo mostrar su encabezado (en casos de notebooks
largos).

Las celdas de texto, principalmente ayudan para definir donde


2.3 colora texto plano en el notebook, o si desea agregar viñetas. Pero
también, le permite crear celdas dentro o fuera de jerarquías.

Las celdas matemáticas traen configuraciones para escribir con


2.4 mejor estética texto matemático, como alinear ecuaciones para
separar pasos en demostraciones. (Ojo, sigue siendo texto, no
comandos).
Ejemplo de Notebook
Celdas de Titulo, Sección y Jerarquías

En este caso, tenemos el mismo notebook que en la


izquierda, excepto que podemos tanto ocultar como mostrar
lo que se encierra en cada sección. Ademas, también
podemos extender una sección y ocultar las subsecciones.
Referente al menú de Composición Tipográfica, lo que este
nos ayuda principalmente con texto matemático sea para
correr los comandos o para escribir texto plano.

Tenemos diferentes opciones, como ser


superíndices(potencias), subíndices, fracciones,
radicales. El punto relleno indica donde estaría
nuestra ingreso de texto actual, y el recuadro sin
relleno, donde nos va a permitir añadir escritura.

Y es bastante útil también cuando se quieren definir


matrices y se dificulta entender como funciona la
escritura en código, por lo que podemos añadir una
ayuda visual y colocar nuestros elementos
manualmente.
Como bien se observa, el menú de composición tipográfica
tiene múltiples pestañas. No hablaremos de todas, pero si es
bueno mencionar la segunda pestaña, la de Cáracteres
Especiales.

No hay mucho que decir aca, excepto que nos muestra


multiples símbolos y letras griegas que pueden ayudar a
desarrollar un notebook con mejor estética y legibilidad.

Ademas que no necesitamos mencionar las demás


pestañas, dado que en esta, al final, observamos una
opción extra que dice “Todos los caracteres y símbolos
especiales” en dicha opción, están contenidos los elementos
de las demás pestañas.

Entre los demás elementos, son de bastante utilidad cuando


se tienen teclados cuya configuración de idioma, no
permite que se utilicen operadores matemáticos como
“mayor o menor que” y además incluyo el resto de
operadores matemáticos y lógicos.
Evaluación
Algo a tener en cuenta, es que muchas veces cerramos y
volvemos a abrir un notebook, y tenemos un trabajo sin finalizar. Lo
primero que notamos, es que todas nuestras variables que
habíamos definido, han sido limpiadas.

Obviamente, volver a evaluar cada celda usando Shift


+ Enter sería algo tedioso. Por eso Wolfram trae una
opción en su menú de “Evaluación” que nos ayuda en
este caso.

Dicha opción es “Evaluar Cuaderno” y como su


nombre indica, evalúa todas las casillas que
ingresan datos para que Wolfram las corra.

Considerar también, “Anular Evaluación” esto nos viene a bien


cuando por algún motivo, se esta evaluando una celda con
algún problema en su definición, de forma que la evaluación
tardara demasiado o no terminara.
Limpiar Variables
Algo importante es considerar, dado que inventamos variables y les
asignamos valores, es si es posible reutilizar las variables, o asignarles
otros valores.

Lo cierto es que si podemos, fácilmente podemos reescribir la misma


variable y asignarle un valor nuevo. Pero a veces, tras múltiples
evaluaciones de celdas, la variable suele entrar en un conflicto de
memoria y no estar seguro de cual es su valor asignado, lo que suele
guiar a obtener valores erróneos en nuestros cálculos.

Acá es donde, tenemos un comando que viene a servir de


maravilla en este tipo de situaciones, el comando Clear[ ], con
este comando, podemos borrar cualquier valor que asignamos
a nuestra variable, y así dejarla libre para asignarle un valor
nuevo sin peligro de ningún conflicto de memoria.
Ahora, también puede venir a resultar tedioso, tener que
escribir todas las variables a las que les asignamos valor e ir
limpiado los valores de cada una de ellas.

Aquí, es donde tenemos una extensión de el comando Clear,


y ese es: ClearAll [“Global`*”] usando este comando,
limpiamos los valores asignados a todas nuestras variables.
Documentación de Wolfram

Una de las grandes herramientas que tenemos los usuarios de Wolfram, es su Documentación, en
muchos casos no se le presta la suficiente atención, pero es bastante completa y muy bien realizada,
contiene múltiples ejemplos en los que desarrolla sus comandos además de explicar cada parámetro
que este posee y ejemplos en los que es utilizado.
La forma mas común de usar la documentación
es colocar el comando del cual se desea
conocer su funcionamiento en el buscador.

Lo primero que se nos muestra, es las diferentes formas en


que podemos correr el comando, según los parámetros
que disponemos para definir.

Luego, nos muestra ejemplos corriendo el


comando bajo diferentes parámetros y
podemos observar el comportamiento del
comando según lo que le es ingresado

Además que tenemos a nuestra


disposición bastante información para
escoger sobre el funcionamiento de
cualquier comando.
Funciones

Para una función dependiente de dos o más


variables, simplemente colocar las variables
entre corchetes, separándolas por comas:
Para evaluar la función, sustituimos entre los corchetes el valor(es) para el que
queremos evaluar:

La función no necesariamente tiene que evaluarse en un valor numérico:

Recuerde: El guión bajo se utiliza solo cuando se


define la función inicialmente, no cuando se está
evaluando.
Resolución de sistemas de ecuaciones
Vectores
Para definir los vectores en Wolfram, colocamos cada
componente separada por comas, dentro de llaves

Algo importante a tener en cuenta, es que el producto


escalar lo podemos expresar de dos formas diferentes, una es,
llamando las variables involucradas y utilizar el símbolo del
punto ( . ) y la otra, es usando el comando Dot [ ].

Respecto al producto vectorial o producto cruz, se tiene una


similitud con el producto escalar, tenemos un comando para
efectuarlo, Cross [ ] y también hay una forma utilizando
símbolo, solo que no suele usarse con regularidad puesto que
el símbolo debe añadirse desde la paleta o llamándolo.
Para calcular gradientes, lo hacemos con el comando Grad
donde primero ingresamos la función que nos interesa, sea
colocándola manualmente o en una variable donde fue
guardada, y los parámetros son las dimensiones de dicha
funcion

Podemos a los vectores que hemos definido, calcular el rotacional


de estos. Para ello usamos el comando Curl, donde el primer
parámetro que ingresamos es nuestro vector, y seguido, cuales son
sus coordenadas.

Algo a tomar en cuenta, es que si trabajamos en otro sistema de


coordenadas, podemos especificar el mismo al momento de
ejecutar el comando, como en el caso mostrado, usando
coordenadas Polares.
Finalmente, tenemos el caso de la Divergencia, su
calculo es idéntico al del rotacional, nada mas
que el comando a emplear es Div.

Por defecto, Wolfram trabaja bajo coordenadas


cartesianas, pero si vamos a trabajar todo un
desarrollo en otro sistema de coordenadas,
podemos definir dichos sistema como el base
utilizando el comando SetCoordinates [ ] y usamos
como parámetro el sistema que deseamos

Si tenemos coordenadas de un sistema, y


deseamos convertirlas a otro, tenemos para ello, el
comando CoordinateTransform con los parámetros
“Coord. Inicial” -> “Coord. Deseada”, {variables}
Gráficas Valor mínimo y máximo
de la variable
independiente.

Función a graficar en
términos de la variable
independiente.

La gráfica, por defecto, será


mostrada en azul.
Nombre de los ejes

Color del gráfico

Leyenda Nombre del gráfico


Los puntos deben guardarse como una lista de pares ordenados
agrupados por llaves y separados por comas.

Controla el tamaño de los puntos


La leyenda se mostrará automáticamente para
aquellas gráficas que ya tenían leyenda. No
puede definirse en el comando Show.

Show mostrará varios gráficos


superpuestos, sean estos
funciones, puntos, o una
combinación de ambos.

Se puede personalizar la gráfica de la


misma manera como se hace con los
gráficos individuales.

Cualquier parámetro que no haya sido


redefinido en Show, será mostrado de
acuerdo a como fue definido en la
gráfica del primer argumento (Gr0 en
este caso).
Función que depende de
dos variables

Puede rotar la vista de la


gráfica para comprenderla
mejor.
Paleta de colores del
Nombre de los ejes
gráfico

Nombre del gráfico

Leyenda

Un Gráfico de Contorno es una


representación bidimensional de
una superficie tridimensional en
“tajadas,” como curvas de nivel.
Los contornos unen puntos con el
mismo valor de la función.
Observación: Vemos que si
rotamos la gráfica en 3D de este
función que habíamos realizado
anteriormente, de manera que la
veamos directamente desde arriba,
ésta coincide con ContourPlot. De
manera, que es evidente que las
curvas de contorno no son más que
curvas de nivel que usan
tonalidades de colores para mostrar
en dos dimensiones un
comportamiento que realmente es
tridimensional.
Ya que en electomagnetismo se trata con campos vectoriales, tales como el campo eléctrico y
magnético, es importante poder graficarlos.
Para ello, utilizamos el comando StreamPlot, siguiendo los mismo principios que en las gráficas
anteriores.
Tema del Gráfico

El tema del gráfico en realidad abarca mucho más


que el color. En este caso, genera la leyenda
también. Para entender lo que abarca el tema que
desea seleccionar, consulte la documentación del
programa.
Gráficos de Discrepancia
Ajustes de Datos
Ahora, para lo principal que vamos a utilizar
wólfram, es para encontrar Ajustes a nuestros
Datos

Lo primero, es que debemos saber como transcribir los


datos que tenemos recopilados de nuestras mediciones.
El formato es { {X1,Y1, {X2,Y2}, {X3,Y3} …. }
El comando que usaremos para encontrar nuestro
ajuste es: LinearModelFit este comando es si
Si nuestro ajuste linear, será uno sin intercepto,
deseamos encontrar un ajuste Lineal. Bajo sus
agregamos una opción mas al comando, la opción
parámetros tenemos: nuestros datos, los
IncludeConstantBasis –> False
coeficientes, y la variable de la que depende dicha
función
Ahora, algo a tener encuenta, es que el comando
LinearModelFit retorna mucha mas información que
solo el polinomio de ajuste. Podemos obtener mas
información de lo que se obtuvo usando el
comando [“ParameterTable”]

De momento, lo que nos interesa de la tabla de


parámetros, son las primeras dos columnas, estas
son los valores estimados de el ajuste, y el error
asociado a cada uno.

Como LinearModelFit nos da mucha mas


información, también entonces, debemos usar
comandos para aislar las partes que nos interesan,
en este caso, la forma de la función de ajuste. Para
ello usamos el comando Normal a la variable en la
que hemos guardado la información del ajuste
Ahora, en Wolfram, no podemos calcular
solamente ajustes lineales, también podemos
encontrar funciones de ajuste de cualquier otra
forma

Tenemos dos formas para encontrar ajustes, uno


de ellos es el comando FindFit.

Variable que almacena los datos

Forma del ajuste que deseo, en este caso un


polinomio cuadrático.

Coeficientes de la función de ajuste

Variable de la que depende la función de ajuste


Y el otro comando que disponemos, es
NonlinearModelFit

Variable que almacena los datos

Forma del ajuste que deseo, en este caso un


polinomio cuadrático.

Coeficientes de la función de ajuste

De igual forma que el comando LinearModelFit


este también retorna mucha mas información de Variable de la que depende la función de ajuste
lo que muestra originalmente, por ello es que
siempre retorna un resultado encerrado en un
recuadro. Y podemos usar los mismos comandos
para extraer mas información de lo que retorno.
Cálculo
Se puede derivar e integrar ya sea usando comandos o las paletas.

Derivadas

En el caso de querer derivar una


función que ya hemos definido,
dependiente de una sola variable,
colocamos “ ‘ "
Integrales Variable respect a la
cual se está integrando.

En el caso de una integral


definida, agregamos al segundo
argumento el intervalo para el
cual estamos integrando:

Se puede escribir la función


directamente o llamar por su
nombre una función que ya se
había definido.
En algunos casos, Mathematica puede indicarnos que si no establecemos
condiciones al problema, éste puede no estar definido:

En este caso, el mensaje nos indica que el problema solo tiene solución si n es un
valor real menor que cero.
Para evitar este problema y para agilizar el tiempo de procesamiento para funciones
más complejas, establecemos de antemano las condiciones del problema:
Para integrales múltiples definidas e indefinidas, lo más sencillo es realizarlas con las
paletas:
Todo esto también lo podemos aplicar a vectores:

También podría gustarte