Manual Wolfram Mathematic
Manual Wolfram Mathematic
Introducción a la Programación
en Mathematica
Francisco A. Lozano Mondragón
Jessica Ramírez Camacho
Abraham Duarte Ramírez
Manual: Funciones básicas de programación en el lenguaje de programación
Mathematica.
Universidad Politécnica de
Querétaro
Estancia I
27/11/2014
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
ÍNDICE DE CONTENIDO
1. Introducción 2
2. Instalación de Wolfram Mathematica 3
3. Entorno de trabajo 7
3.1 Ventana de Inicio 7
3.2 Barra de Menús 7
3.3 Paletas 8
3.4 ¡Empecemos! 9
4. Introducción al lenguaje Mathematica 11
4.1 Sintaxis general y declaración de variables 11
4.2 Operadores aritméticos 13
4.3 Operadores lógicos 13
4.4 Uso de paréntesis, corchetes y llaves 14
4.5 Ciclos 16
4.6 Listas 16
5. Funciones 18
6. Gráficas 26
1
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
1. INTRODUCCIÓN
Este manual pretende mostrar al usuario el entorno de trabajo del Wolfram Mathematica,
partiendo de la idea que este tiene conocimientos previos en algún otro lenguaje de
programación, ya sea Java, C, C++, Visual Basic, entre otros; así como conocimientos en
matemáticas.
Se debe aclarar que esto no es un manual para aprender a programar desde cero, ni tiene
la intención de adentrarse en los campos de la matemática aplicada. Dicho esto, se reitera
al usuario que el uso de este material didáctico tiene como finalidad enseñar la sintaxis
básica del lenguaje de programación funcional Mathematica, para que pueda
implementarlo en sus estudios, en algún proyecto o a nivel profesional posteriormente.
Aviso legal: Este material tiene como único fin el de servir como material de apoyo haciendo uso de software ajeno a los autores del
manual. Wolfram Mathematica pertenece a sus respectivos creadores y cuenta con todos los derechos reservados.
2
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
3
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
4
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Resta elegir una carpeta para guardar los archivos que se irán generando durante el uso
del software Wolfram Mathematica. Este paso es opcional, puede o no puede hacerlo. Si
desea omitirlo, seleccione la casilla en la parte inferior izquierda con la opción de “No crear
folder de menú inicio” y damos en “Siguiente”. La próxima pantalla serán las
especificaciones que hemos elegido para crear el programa, damos “Siguiente” y la
instalación comenzará.
5
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
6
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
3. ENTORNO DE TRABAJO
La barra de menús nos da distintas herramientas que podremos usar a lo largo de nuestro
trabajo en Mathematica. Desde los menús básicos como “Archivo” y “Editar” hasta los
menús propios del programa como los son “Celda” o “Gráficas”. Cada uno con opciones
que nos facilitarán el uso del programa y mejorarán nuestra experiencia.
7
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
3.3 PALETAS
La mayoría de los programas manejan barras de herramientas que ofrecen gran cantidad
de opciones para mejorar y agilizar los procesos para los cuales fueron creados. En este
nuevo entorno, esas barras de herramientas se encuentran como paletas, que se
presentan en forma de ventanas individuales para que el usuario les dé el uso que desee.
Para abrir estas paletas, vaya al menú “Paletas” que se encuentra en la barra de menús.
8
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Asistente de Clase
3.4 ¡EMPECEMOS!
10
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Cuando tengamos abierto un nuevo libro, podremos empezar a trabajar. Este lenguaje
maneja una sintaxis con variadas diferencias respecto a la programación general
(estructurada u orientada a objetos) que se maneja actualmente. Si debemos compararlo,
podríamos decir que los inicios de Mathematica fueron de sintaxis estructurada; sin
embargo este lenguaje también puede aplicarse a la programación orientada a objetos.
La diferencia más notoria es en la forma en que compila y ejecuta el código que vamos
desarrollando. Ya que trabaja mediante entradas y salidas. Estas entradas y salidas, a su
vez se manejan en algo llamado celdas, que es la manera en la que el cuaderno de trabajo
se va dividiendo conforme ingresamos datos en él. Las celdas se aprecian en el borde
derecho de la ventana del cuaderno de trabajo, a manera de llaves, que encierran
fragmentos de nuestro código.
11
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Existen diversas formas de entrada, todas ellas se encuentran en el menú celda. Por
default, al empezar a escribir, la forma de entrada se llama Forma Estándar, pero puede
cambiarse la forma de entrada dependiendo las necesidades del usuario. Sólo debe
seleccionar el texto o la celda con los datos de los cuales quiera cambiar la forma de
entrada, ir al Menú Celda/Convertir a y seleccionar el tipo de entrada a mostrar.
Ingresar texto:
Se coloca el texto deseado.
Selecciona la celda donde ingresaste el texto.
Presionamos las teclas Alt+7
Alt+7
Declaración de variables:
Para la declaración de una variable en el entorno de Mathematica se ocupa la misma
sintaxis que se maneja en la mayoría de los lenguajes de programación. A continuación se
muestra dicha sintaxis y un ejemplo de declaración.
Nombre_variable = Valor_variable; + <Shift>+<Enter>
12
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Suma +
Resta -
*
Multiplicación (o un espacio
en blanco)
División /
Potencia ^
Con este tipo de operadores podemos combinar expresiones de tipo relacional dando lugar
a expresiones lógicas. Se ocupan los mismos operadores lógicos que en un lenguaje de
programación cualquiera, en este apartado, la sintaxis tampoco cambia mucho.
Valor + Relación + Valor + Operador_lógico + Valor + Relación + Valor + <Shift>+<Enter>
13
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Disyunción “o” ||
Disyunción
[,]
exclusiva
Negación !
Ordenes:
Al programar en Mathematica debes considerar la siguiente información:
Es necesario escribir con mayúscula la primera letra de todas las funciones, órdenes,
opciones y constantes propias de Mathematica.
Es conveniente usar sólo minúsculas para definir nuestras propias variables y
funciones.
Mathematica interpreta un espacio en blanco como la operación de multiplicar. Por esto,
no se deben dejar espacios en blanco dentro del nombre de una función o variable.
Este criterio lo sigue Mathematica en sus propias funciones y órdenes.
14
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Las llaves, { }, se usan para la definición de listas de elementos, que pueden ser de
cualquier tipo y se separan por comas. También se pueden interpretar como vectores o
matrices.
La creación de listas es muy útil al usar Mathematica, pues gracias a ellas podremos
presentar nuestros datos en matriz o de una forma gráfica, para que los datos tengan una
interpretación más clara. Profundizaremos más adelante en este tema.
Los paréntesis, (), dividen y delimitan una función, para darle prioridad a los procesos que
estén entre paréntesis.
15
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
4.5 CICLOS
Mathematica implementa el uso de los ciclos igual que en otros lenguajes. Aquí los ciclos
se manejan como funciones, y todas las funciones en Mathematica empiezan con
mayúscula. No profundizaremos en la definición de ciclo en programación, queremos
aterrizar mejor el manejo de esos ciclos en el entorno de trabajo.
Ciclo Modo sugerido Ejemplo
Do Do[expr,imax]
While While[test,body]
For For[start,test,incr,body]
Tabla 3. Ciclos
4.6 LISTAS
En el apartado 4.4 se explicó que los paréntesis se ocupaban para denotar una lista. A
continuación la sintaxis y un ejemplo.
16
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Se pueden generar listas de listas, es decir, una lista cuyos elementos son listas más
pequeñas.
17
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
5. FUNCIONES
Exponencial:
N[Exp[valor]] <Shift>+<Enter>
Logaritmo en base: Para calcular el algoritmo natural con alguna base especifica en
mathematica debemos usar la siguiente sintaxis:
Funciones Trigonométricas:
N[Función Trigonométrica[valor]] <Shift>+<Enter>
18
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Valor Absoluto: Este nos permite cambiar cualquier número imaginario a un número real,
la sintaxis para esta función es:
Abs[ Valor] <Shift>+<Enter>
Redondeo de valores
Round [Valor] <Shift>+<Enter>
Módulos:
n módulo m (resto de la división de n entre m)
Mod [n, m] <Shift>+<Enter>
19
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Factor Integrante:
Factores primos de n
FactorInteger [Valor] <Shift>+<Enter>
Print
Para escribir mensajes en pantalla durante la salida de un programa, se usa la orden
Print. Si lo que deseamos escribir es un texto debe ir entre comillas.
Resolución de ecuaciones:
Para resolver una ecuación algebraica en una variable podemos utilizar el comando Solve
Solve [ecuación, variable] <Shift>+<Enter>
20
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Derivadas:
Solución de una derivada
D[Ecuación, variable] <Shift>+<Enter>
Integrales:
Solución de una integral
Integrate [Ecuación, variable] <Shift>+<Enter>
Función: Esta función puede definirla para posteriormente trabajar con su argumento.
f [ x_] : = función <Shift>+<Enter>
21
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Map: Se cuenta con una función y map realiza un mapeo en la expresión en muchos casos
una lista y realiza la función en todas las partes de la expresión o lista.
Map [ función, {valor2, valor2… }] <Shift>+<Enter>
Expand:
Desarrolla productos y potencias, escribiendo el resultado como suma de términos
Expand [Expresión] <Shift>+<Enter>
Expand all:
Aplica Expand por todas partes de la expresión:
ExpandAll [Expresión] <Shift>+<Enter>
22
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Factor:
Reduce una expresión a producto de factores.
Factor [Expresión] <Shift>+<Enter>
Coefficient:
Extrae los coeficientes de una expresión dependiendo su variable
Coefficient[expresión, variable] <Shift>+<Enter>
Sum:
Realiza una sumatoria hasta llegar a un límite dado
Sum[(Expresión)^ i , { i, limite }] <Shift>+<Enter>
23
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Product:
Realiza una serie de productos hasta llegar al limite dado
Product [ (Expresión + i, { i, 1, 4}) ]
Join:
Junta pequeñas listas en una sola lista:
Join[lista1,lista2,lista3] <Shift>+<Enter>
24
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
TABLAS:
Para la realización de una tabla necesitas un índice que se expresa con la letra “i”
Seguido del inicio y termino de la tabla.
Table [ i, { i, termino de la tabla }] <Shift>+<Enter>
Valores
numéricos
25
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
6. GRAFICAS
26
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Matrices:
Podemos convertir una tabla en una matriz con la siguiente sintaxis:
MatrixForm [nombre de la tabla] <Shift>+<Enter>
27
MANUAL DE INTRODUCCIÓN A MATHEMATICA
Por: Francisco Alejandro Lozano Mondragón, Jessica Ramírez Camacho y Abraham Duarte Ramírez
Bibliografía
Wolfram Research. The Mathematica Book.
28