Maple es un entorno de computación simbólica y numérica , así como un lenguaje de programación multiparadigma . Abarca varias áreas de la computación técnica, como las matemáticas simbólicas, el análisis numérico, el procesamiento de datos, la visualización y otras. Una caja de herramientas, MapleSim , añade funcionalidad para el modelado físico multidominio y la generación de código.
Los usuarios pueden introducir operaciones matemáticas en notación matemática tradicional . También se pueden crear interfaces de usuario personalizadas. Se admiten cálculos numéricos con precisión arbitraria, así como cálculos simbólicos y visualización. A continuación se ofrecen ejemplos de cálculos simbólicos.
Maple es compatible con MathML 2.0, que es un formato W3C para representar e interpretar expresiones matemáticas, incluida su visualización en páginas web. [4] También hay una funcionalidad para convertir expresiones de notación matemática tradicional a marcado adecuado para el sistema de composición tipográfica LaTeX .
Arquitectura
Maple se basa en un pequeño núcleo , escrito en C , que proporciona el lenguaje Maple. La mayor parte de la funcionalidad la proporcionan las bibliotecas, que provienen de una variedad de fuentes. La mayoría de las bibliotecas están escritas en el lenguaje Maple; estas tienen código fuente visible. Muchos cálculos numéricos se realizan mediante las bibliotecas numéricas NAG , las bibliotecas ATLAS o las bibliotecas GMP .
Las distintas funciones de Maple requieren datos numéricos en distintos formatos. Las expresiones simbólicas se almacenan en la memoria como gráficos acíclicos dirigidos . La interfaz estándar y la interfaz de la calculadora están escritas en Java .
Historia
El primer concepto de Maple surgió de una reunión a finales de 1980 en la Universidad de Waterloo . [5] Los investigadores de la universidad deseaban comprar un ordenador lo suficientemente potente como para ejecutar el sistema de álgebra computacional basado en Lisp Macsyma . En su lugar, optaron por desarrollar su propio sistema de álgebra computacional, llamado Maple, que pudiera ejecutarse en ordenadores de menor coste. Con el objetivo de lograr la portabilidad, comenzaron a escribir Maple en lenguajes de programación de la familia BCPL (inicialmente utilizando un subconjunto de B y C , y más tarde solo C). [5] Una primera versión limitada apareció después de tres semanas, y versiones más completas entraron en uso generalizado a principios de 1982. [6] A finales de 1983, más de 50 universidades tenían copias de Maple instaladas en sus máquinas. [ cita requerida ]
En 1984, el grupo de investigación acordó con Watcom Products Inc. licenciar y distribuir la primera versión disponible comercialmente, Maple 3.3. [6] En 1988 se fundó Waterloo Maple Inc. (Maplesoft). El objetivo original de la empresa era gestionar la distribución del software, pero con el tiempo creció hasta tener su propio departamento de I+D, donde se lleva a cabo la mayor parte del desarrollo de Maple en la actualidad (el resto se realiza en varios laboratorios universitarios [7] ).
En 1989, se desarrolló la primera interfaz gráfica de usuario para Maple y se incluyó en la versión 4.3 para Macintosh . Las versiones X11 y Windows de la nueva interfaz siguieron en 1990 con Maple V. En 1992, Maple V Release 2 introdujo la "hoja de trabajo" de Maple que combinaba texto, gráficos y salida de entrada y composición tipográfica. [8] En 1994 se publicó una edición especial de un boletín creado por desarrolladores de Maple llamado MapleTech . [9]
En 1999, con el lanzamiento de Maple 6, Maple incluyó algunas de las bibliotecas numéricas NAG . [10] En 2003, se introdujo la interfaz "estándar" actual con Maple 9. Esta interfaz está escrita principalmente en Java (aunque partes, como las reglas para la composición tipográfica de fórmulas matemáticas, están escritas en el lenguaje Maple). La interfaz Java fue criticada por ser lenta; [11] se han realizado mejoras en versiones posteriores, aunque la documentación de Maple 11 [12] recomienda la interfaz anterior ("clásica") para usuarios con menos de 500 MB de memoria física.
Entre 1995 y 2005, Maple perdió una importante cuota de mercado frente a sus competidores debido a una interfaz de usuario más débil. [13] Con Maple 10 en 2005, Maple introdujo una nueva interfaz de "modo de documento", que desde entonces se ha desarrollado aún más en varias versiones.
En septiembre de 2009, Maple y Maplesoft fueron adquiridos por el minorista de software japonés Cybernet Systems. [14]
Historial de versiones
Maple 1.0: enero de 1982
Maple 1.1: Enero de 1982
Maple 2.0: Mayo de 1982
Maple 2.1: junio de 1982
Arce 2.15: Agosto de 1982
Maple 2.2: Diciembre de 1982
Maple 3.0: Mayo de 1983
Maple 3.1: Octubre de 1983
Maple 3.2: Abril de 1984
Maple 3.3: marzo de 1985 (primera versión disponible al público)
myfac := proc ( n::nonnegint ) local out , i ; out := 1 ; para i de 2 a n do out := out * i fin do ; out fin proc ;
También se pueden definir funciones simples utilizando la notación de flecha "mapas a":
myfac := n -> producto ( i , i = 1. . n ) ;
Integración
Encontrar
.
int ( cos ( x / a ) , x ) ;
Producción:
Determinante
Calcular el determinante de una matriz.
M := Matriz ([[ 1 , 2 , 3 ] , [ a , b , c ] , [ x , y , z ]]) ; # ejemplo Matriz
Álgebra lineal: - Determinante (M);
Expansión de la serie
serie ( tanh ( x ) , x = 0,15 )
Resolver ecuaciones numéricamente
El siguiente código calcula numéricamente las raíces de un polinomio de orden superior:
f := x ^ 53 - 88 * x ^ 5 - 3 * x - 5 = 0fsolve ( f )- 1.097486315 , -. 5226535640 , 1.099074017
El mismo comando también puede resolver sistemas de ecuaciones:
f := ( cos ( x + y )) ^ 2 + exp ( x ) * y + cot ( x - y ) + cosh ( z + x ) = 0 :g := x ^ 5 - 8 * y = 2 :h := x + 3 * y - 77 * z = 55 ; fsolve ( { f , g , h } ) ;{ x = - 2,080507182 , y = - 5,122547821 , z = - 0,9408850733 }
Trazado de una función de una sola variable
Gráfico con rango de -10 a 10:
gráfica ( x * sin ( x ) , x = - 10. . 10 ) ;
Trazado de función de dos variables
Trazar con y que van desde -1 a 1:
plot3d ( x ^ 2 + y ^ 2 , x = - 1. . 1 , y = - 1. . 1 ) ;
Animación de funciones
Animación de función de dos variables.
gráficos : - animar ( subs ( k = 0.5 , f ) , x = - 30. . 30 , t = - 10. . 10 , numpoints = 200 , cuadros = 50 , color = rojo , grosor = 3 ) ;
Animación de funciones de tres variables
gráficos : - animate3d ( cos ( t * x ) * sin ( 3 * t * y ) , x = - Pi..Pi , y = - Pi..Pi , t = 1..2 ) ;
Animación de vuelo a través de gráficos 3D. [31]
M := Matriz ([[ 400 , 400 , 200 ] , [ 100 , 100 ,- 400 ] , [ 1 , 1 , 1 ]] , tipo de dato = float [ 8 ]) : plot3d ( 1 , x = 0. . 2 * Pi , y = 0. . Pi , ejes = ninguno , coordenadas = esféricas , punto de vista = [ ruta = M ]) ;
ecuación := f ( x ) - 3 * Int (( x * y + x ^ 2 * y ^ 2 ) * f ( y ) , y =- 1. . 1 ) = h ( x ) : intsolve ( ecuación , f ( x )) ;
Uso del motor Maple
El motor Maple se utiliza en varios otros productos de Maplesoft :
MapleNet permite a los usuarios crear páginas JSP y subprogramas Java . MapleNet 12 y versiones posteriores también permiten a los usuarios cargar y trabajar con hojas de cálculo de Maple que contienen componentes interactivos.
MapleSim , una herramienta de simulación de ingeniería. [32]
El paquete de química cuántica Maple de RDMChem calcula y visualiza las energías electrónicas y las propiedades de las moléculas. [33]
A continuación se enumeran productos comerciales de terceros que ya no utilizan el motor Maple:
Las versiones de Mathcad lanzadas entre 1994 y 2006 incluían un motor de álgebra derivado de Maple (MKM, también conocido como Mathsoft Kernel Maple), aunque las versiones posteriores utilizan MuPAD .
La caja de herramientas de matemáticas simbólicas de MATLAB contenía una parte del motor Maple 10, pero ahora utiliza MuPAD (a partir de la versión MATLAB R2007b+). [34]
Las versiones anteriores del editor matemático Scientific Workplace incluían Maple como motor computacional, aunque las versiones actuales incluyen MuPAD .
^ "Comunicados de prensa de Maplesoft". www.maplesoft.com . Consultado el 12 de mayo de 2024 .
^ "Soporte de idiomas internacionales en Maple". Maplesoft . Consultado el 2 de junio de 2016 .
^ Poder de dos Archivado el 6 de julio de 2010 en Wayback Machine Bitwise Magazine
^ "Bienvenido a la página de inicio de Maplesoft MathML". www.maplesoft.com .
^ ab MacCallum, Malcolm AH (2018). "Álgebra computacional en la investigación de la gravedad". Living Reviews in Relativity . 21 (1): 6. Bibcode :2018LRR....21....6M. doi : 10.1007/s41114-018-0015-6 . ISSN 2367-3613. PMC 6105178 . PMID 30174551.
^ ab "Historia del arce". 15 de diciembre de 1998. Consultado el 6 de abril de 2020 .
^ Maple 6.0 Archivado el 18 de junio de 2008 en Wayback Machine Macworld, febrero de 2001
^ Capturando conocimiento con matemáticas puras, Scientific Computing World.
^ Guía de instalación de Maple 11 Maplesoft
^ Entrevista a Gaston Gonnet, cocreador de Maple Archivado el 29 de diciembre de 2007 en Wayback Machine , SIAM History of Numerical Analysis and Computing, 16 de marzo de 2005
^ "Comunicados de prensa de Maplesoft". www.maplesoft.com .
^ "Blog de MaplePrimes: Maple 13 y MapleSim 2 ya están disponibles" . Consultado el 28 de abril de 2009 .
^ "Blog de MaplePrimes: anunciamos Maple 14 y MapleSim 4" . Consultado el 29 de abril de 2010 .
^ "Blog de MaplePrimes: presentación de Maple 15" . Consultado el 11 de abril de 2011 .
^ "Blog de MaplePrimes: Maple 16 ya está aquí" . Consultado el 28 de marzo de 2012 .
^ "Blog de MaplePrimes: presentación de Maple 17" . Consultado el 13 de marzo de 2013 .
^ "Blog de MaplePrimes: anunciamos Maple 18" . Consultado el 5 de marzo de 2014 .
^ "Blog de MaplePrimes: ¡Maple 2015 ya está disponible!" . Consultado el 4 de marzo de 2015 .
^ "Blog de MaplePrimes: anunciamos Maple 2016" . Consultado el 2 de marzo de 2016 .
^ "Blog de MaplePrimes: anunciamos Maple 2017" . Consultado el 25 de mayo de 2017 .
^ "Blog de MaplePrimes: ¡Maple 2018 ya está aquí!" . Consultado el 21 de marzo de 2018 .
^ "Blog de MaplePrimes: anunciamos Maple 2019" . Consultado el 14 de marzo de 2019 .
^ "Blog de MaplePrimes: ¡Se lanzó Maple 2020!" . Consultado el 20 de marzo de 2020 .
^ "Blog de MaplePrimes: presentación de Maple 2021" . Consultado el 2 de marzo de 2024 .
^ "Blog de MaplePrimes: Unboxing de Maple 2022" . Consultado el 2 de marzo de 2024 .
^ "Blog de MaplePrimes: ¡Maple 2023 ya está aquí!" . Consultado el 2 de marzo de 2024 .
^ "¿Qué es Maple? Características del producto - Software de matemáticas e ingeniería - Maplesoft". www.maplesoft.com .
^ Cómo usar la nueva función Fly-through en Maple 13 Maplesoft
^ Mahmud, Khizir; Town, Graham E. (junio de 2016). "Una revisión de las herramientas informáticas para modelar los requisitos energéticos de los vehículos eléctricos y su impacto en las redes de distribución de energía". Energía aplicada . 172 : 337–359. doi :10.1016/j.apenergy.2016.03.100.
^ "Blog de MaplePrimes: presentación de la caja de herramientas de química cuántica de Maple" . Consultado el 6 de mayo de 2019 .
^ "Notas de la versión de Symbolic Math Toolbox". MathWorks . Consultado el 10 de julio de 2014 .
Enlaces externos
Wikimedia Commons alberga una categoría multimedia sobre Maple (software) .
Wikilibros tiene un libro sobre el tema: Arce
Maplesoft, una división de Waterloo Maple, Inc. – sitio web oficial