Maple (software)

(Redirigido desde «Maple»)

Maple es un programa orientado a la resolución de problemas matemáticos, capaz de realizar cálculos simbólicos, algebraicos y de álgebra computacional.

Maple
Información general
Tipo de programa Software matemático
Desarrollador Maplesoft
Lanzamiento inicial 1982
Licencia Propietario
Idiomas Inglés
Información técnica
Programado en C, Java, Maple
Plataformas admitidas x86, x86-64
Versiones
Última versión estable 2019 ( 14 de marzo de 2019)
Archivos legibles
  • STL
  • Maple Common Binary (Amiga)
  • Maple compressed Worksheet
Archivos editables
  • Maple Common Binary (Amiga)
  • Maple compressed Worksheet
Enlaces

Fue desarrollado originalmente en 1981 por el Grupo de Cálculo Simbólico en la Universidad de Waterloo en Waterloo, Ontario, Canadá. Desde 1988 ha sido mejorado y vendido comercialmente por Waterloo Maple Inc. (también conocida como Maplesoft), compañía canadiense con sede en la misma localidad. La última versión es Maple 2020.

Maple se basa en un pequeño núcleo escrito en C, que proporciona el lenguaje Maple. Maple es un lenguaje de programación interpretado. Las expresiones simbólicas son almacenadas en memoria como grafos dirigidos sin ciclos. La mayoría de funcionalidades son proporcionadas por bibliotecas: unas escritas en lenguaje Maple, con acceso a su código fuente; pero también hace uso de otras bibliotecas bien conocidas como las NAG, ATLAS o GMP.

Origen del nombre

editar

Su nombre es una abreviatura o un acrónimo de la frase en inglés Mathemathic Pleasure (‘placer de las matemáticas’), también se debe a que Maple fue hecho en Canadá, cuya bandera tiene una hoja de arce (maple en inglés).

Código de ejemplo en Maple

editar
  • Las siguientes líneas de código calculan la solución exacta de una ecuación diferencial ordinaria de segundo orden:
 

Sujeto a las condiciones iniciales:

 
dsolve( {diff(y(x),x, x) - 3*y(x) = x, y(0)=0, D(y)(0)=2}, y(x) );
evalf( sqrt(2), 21 );
 
simplify( 35/42 - 5/30 );
 
solve( 3*x^2 + b*x = 7, x );
 
f := x -> tan(x)*sqrt(x);
D(f)(x);
 
Int( sin(x)^2, x );
 
value( % );
 
int( sin(x)^2, x = 0..Pi/2 );
 
  • Evaluación de ecuaciones diferenciales lineales en forma simbólica y numérica:
DGL := diff( y(x), x, x ) - 3*y(x) = x:
DGL;
 
dsolve( { DGL, y(0) = 1, D(y)(0) = 2 }, y(x) );
 

Historial de versiones

editar
  • Maple 2020: marzo de 2020
  • Maple 2019: marzo de 2019
  • Maple 2018: marzo de 2018
  • Maple 2017: mayo de 2017
  • Maple 2016: marzo de 2016
  • Maple 2015: marzo de 2015
  • Maple 18: marzo de 2014
  • Maple 17: marzo de 2013
  • Maple 16: marzo de 2012
  • Maple 15: abril de 2011
  • Maple 14: abril de 2010
  • Maple 13: abril de 2009
  • Maple 12: junio de 2008
  • Maple 11: febrero de 2007
  • Maple 10: mayo de 2005
  • Maple 9.5: abril de 2004
  • Maple 9: junio de 2003
  • Maple 8: abril de 2002
  • Maple 7: julio de 2001
  • Maple 6: diciembre de 1999
  • Maple V R5: noviembre de 1997
  • Maple V R4: enero de 1996
  • Maple V R3: marzo de 1994
  • Maple V R2: noviembre de 1992
  • Maple V: agosto de 1990
  • Maple 4.3: marzo de 1989
  • Maple 4.2: diciembre de 1987
  • Maple 4.1: mayo de 1987
  • Maple 4.0: abril de 1986
  • Maple 3.3: marzo de 1985 (primera versión disponible públicamente)
  • Maple 3.2: abril de 1984
  • Maple 3.1: octubre de 1983
  • Maple 3.0: mayo de 1983
  • Maple 2.2: diciembre de 1982
  • Maple 2.15: agosto de 1982
  • Maple 2.1: junio de 1982
  • Maple 2.0: mayo de 1982
  • Maple 1.1: enero de 1982
  • Maple 1.0: enero de 1982

Desde 1994, MathCad ha incluido un motor de álgebra derivado de Maple, Núcleo Mathsoft de Maple MKN por sus siglas en inglés (MKN, Mathsoft Kernel Maple).

Características

editar

Estas son algunas de las características más relevantes del software:

  • Permite el desarrollo de cálculos matemáticos de manera simbólica y numérica con precisión arbitraria
  • Bibliotecas para funciones matemáticas básicas y avanzadas
  • Manejo de números complejos y sus diversas operaciones
  • Aritmética, álgebra, operaciones para desarrollo de polinomios multivariados
  • Límites, series y sucesiones
  • Bases Groebner
  • Álgebra diferencial
  • Herramientas para la manipulación de matrices, incluyendo matrices dispersas
  • Herramientas para gráficos y animaciones matemáticas
  • Sistemas de solución para ecuaciones diferenciales en sus diferentes variedades (ODE, DAE, PDE, DDE)
  • Herramientas simbólicas y numéricas para cálculo discreto y continuo, incluye integración definida e indefinida, diferenciación
  • Optimización con restricciones y sin restricciones
  • Herramientas estadísticas que incluyen adaptación a diversos modelos, pruebas de hipótesis y distribuciones probabilísticas
  • Herramientas para la manipulación, visualización y análisis de datos
  • Herramientas para la resolución de problemas en el campo de la probabilidad
  • Herramientas para el uso de series de tiempo
  • Conexión a datos en línea, recopilados para aplicaciones financieras y económicas
  • Herramientas para cálculos financieros, incluyendo: bonos, anualidades, etc.
  • Cálculos y simulaciones para procesos aleatorios
  • Herramientas para el procesamiento de señales
  • Herramientas para el desarrollo de sistemas lineales y no lineales
  • Incluye matemáticas discretas
  • Herramientas para visualizar y analizar gráficos
  • Importación y exportación de filtros para datos, imágenes, sonido, CAD y documentos
  • Procesamiento de texto, incluyendo fórmulas matemáticas
  • Herramientas para agregar interfaces de usuario para el desarrollo de cálculos y aplicaciones
  • Herramientas para conectarse a SQL, Java, .NET, C++, Fortran y http
  • Herramientas para la generación de códigos en lenguajes C, C++, Fortran, Java, JavaScript, Julia, Matlab, Perl, Python, R y Visual Basic.
  • Herramientas para programación paralela.

Versiones disponibles

editar

Maplesoft vende Maple tanto en versiones profesionales como de estudiantes. (En EE. UU. desde US$ 99 para estudiantes, hasta US$ 1995 en versiones profesionales).

Desde la versión 6 y más recientes, las versiones para estudiantes no tienen limitaciones en poder de cómputo, pero sí vienen con menos documentación impresa. La situación es bastante similar para el programa Mathematica.

En versiones anteriores a la 6, la versión de estudiante tenía las siguientes limitaciones:

  • Un máximo de uso de 100 dígitos en punto flotante para cálculos
  • Un tamaño máximo de 8000 para cualquier objeto algebraico (8000 en objetos o largo de palabras máquina)
  • Un máximo de 3 para los arreglos vectoriales (arrays)

Comandos en Maple

editar

Tipos de "árboles de expresión" en Maple

editar

Las funciones son reconocidas por Maple como árboles de expresión. Maple reconoce los siguientes tipos de funciones (o sea árboles de expresión): string, integer, fraction, float, '+', '*', indexed y function. Si se pretende saber qué tipo de árbol de expresión es una función, se puede escribir el comando whattype( ).

Supóngase que se tiene una función x^2+4*x+4, y se quiere saber qué tipo de árbol de expresión es para maple. Primero se escribe la función, y luego se usa el comando whattype:

p:= x^2+4*x+4
whattype(p)

Si se quiere saber si una determinada función es un determinado árbol de expresión, se usa la función type( , ). Por ejemplo, se quiere saber si la función p:= x^2+4*x+4 es un entero (integer). Primero se escribe la función y luego se usa el comando type:

p:= x^2+4*x+4
type(p, integer)

Escribir una función

editar

Supóngase una función igual a x^2+4*x+4, a la cual se llame p. En Maple se debe escribir:

p:= x^2+4*x+4


Si se desea saber cuál es el valor de esa función cuando x es 3, se escribe:

x:= 3
p;

Cabe destacar que si ya no se quiere usar el valor asignado a x, se lo puede borrar de la siguiente manera:

x:= 'x'

Hallar la antiderivada o integral

editar

Supóngase que se tiene una función igual a x^2+4*x+4 llamada p. Se pretende encontrar la antiderivada.

p:= x^2+4x+4
int(p,x)

Maple mostrará la antiderivada. Obviamente int significa integral.

Las funciones nops y op

editar

La función nops es usada en Maple para determinar el número de operandos de una expresión. Por ejemplo, supóngase que se tiene la función x^2+4*x+4, y se quiere saber su cantidad de operandos. Primero se define la función y luego se le aplica el comando nops:

p:= x^2+4*x+4;
nops(p);  (arrojaría el valor 3)

La función op es utilizada para conocer el operando que está en una posición indicada. Por ejemplo, supóngase que se tiene la función x^2+4*x+4, y se quiere encontrar el segundo operando. Primero se define la función y luego se le aplica el comando op:

p:= x^2+4*x+4;
op(2,p);  (arrojaría el valor 4x)

Escribir un bucle (loop)

editar

Para crear un bucle, se debe seguir la siguiente estructura: [for "nombre de la expresión" ] [from "expresión" ] [by "expresión"] [to "expresión"] [while "expresión"] do "declaración de sequencia" end do [by "expresión"] por defecto es 1.

Supóngase que se quiere programar bucle que imprima los cuadrados del 1 al 10. La expresión en Maple sería:

for i from 1 by 1 to 10 do print(i^2) end do;

Véase también

editar

Enlaces externos

editar