stringtranslate.com

Maxima (software)

Maxima ( / ˈmæksɪmə / ) es un potente paquete de software para realizar cálculos de álgebra computacional en matemáticas y ciencias físicas. Está escrito en Common Lisp y se ejecuta en todas las plataformas POSIX como macOS , Unix , BSD y Linux , así como en Microsoft Windows y Android . Es software libre publicado bajo los términos de la Licencia Pública General de GNU (GPL).

Historia

Maxima se basa en una versión de 1982 de Macsyma , que se desarrolló en el MIT con financiación del Departamento de Energía de los Estados Unidos y otras agencias gubernamentales. Bill Schelter mantuvo una versión de Macsyma desde 1982 hasta su muerte en 2001. En 1998, Schelter obtuvo permiso del Departamento de Energía para publicar su versión bajo la GPL. Esa versión, ahora llamada Maxima, es mantenida por un grupo independiente de usuarios y desarrolladores. Maxima no incluye ninguna de las muchas modificaciones y mejoras realizadas a la versión comercial de Macsyma durante 1982-1999. Aunque la funcionalidad principal sigue siendo similar, el código que depende de estas mejoras puede no funcionar en Maxima, y ​​los errores que se corrigieron en Macsyma aún pueden estar presentes en Maxima, y ​​viceversa. Maxima participó en Google Summer of Code en 2019 bajo el International Neuroinformatics Coordinating Facility . [2]

Cálculos simbólicos

Al igual que la mayoría de los sistemas de álgebra computacional, Maxima admite una variedad de formas de reorganizar expresiones algebraicas simbólicas, como factorización de polinomios , cálculo del máximo común divisor de polinomios , expansión, separación en partes reales e imaginarias y transformación de funciones trigonométricas en exponenciales y viceversa. Tiene una variedad de técnicas para simplificar expresiones algebraicas que involucran funciones trigonométricas, raíces y funciones exponenciales. Puede calcular antiderivadas simbólicas ("integrales indefinidas"), integrales definidas y límites . Puede derivar expansiones de series de forma cerrada , así como términos de series de Taylor-Maclaurin - Laurent . Puede realizar manipulaciones matriciales con entradas simbólicas.

Maxima es un sistema de propósito general y los cálculos de casos especiales como la factorización de números grandes , la manipulación de polinomios extremadamente grandes , etc. a veces se realizan mejor en sistemas especializados.

Cálculos numéricos

Maxima se especializa en operaciones simbólicas , pero también ofrece capacidades numéricas [3] como números enteros de precisión arbitraria , números racionales y números de punto flotante , limitados únicamente por restricciones de espacio y tiempo.

Programación

Maxima incluye un lenguaje de programación completo con sintaxis similar a ALGOL pero semántica similar a Lisp . Está escrito en Common Lisp y se puede acceder a él mediante programación y extenderlo, ya que se puede llamar al Lisp subyacente desde Maxima. Utiliza gnuplot para dibujar.

Para cálculos que utilizan predominantemente puntos flotantes y matrices, Maxima tiene traductores del lenguaje Maxima a otros lenguajes de programación (especialmente Fortran ), que pueden ejecutarse de manera más eficiente.

Interfaces

Captura de pantalla de la interfaz wxMaxima para Maxima

Hay varias interfaces gráficas de usuario (GUI) disponibles para Maxima:

Ejemplos de código Maxima

Operaciones básicas

Aritmética de precisión arbitraria

bfloat ( sqrt ( 2 )), fpprec = 40 ; 

Función

f ( x ) := x ^ 3 $y ( 4 );

Expandir

expandir (( a - b ) ^ 3 );

Factor

factor ( x ^ 2 - 1 );

Resolver ecuaciones

resolver ( x ^ 2 + a * x + 1 , x );     

Resolver ecuaciones numéricamente

buscar_raiz ( cos ( x ) = x , x , 0 , 1 );     

bf_find_root ( cos ( x ) = x , x , 0,1 ) , fpprec = 50 ;        

Integral indefinida

integrar ( x ^ 2 + cos ( x ), x );   

Integral definida

integrar ( 1 / ( x ^ 3 + 1 ), x , 0 , 1 ), ratsimp ;      

Integral numérica

quad_qags ( sin ( sin ( x )), x , 0 , 2 )[ 1 ];   

Derivado

diff ( cos ( x ) ^ 2 , x , 3 );  

Límite

límite (( 1 + sinh ( x )) / exp ( x ), x , inf );  

Teoría de números

primos ( 10 , 20 ); 

fibra ( 10 );

Serie

suma ( 1 / x ^ 2 , x , 1 , inf ), suma simple ;    

Expansión de la serie

taylor ( sin ( x ), x , 0 , 9 );   

niceindices ( series de potencias ( cos ( x ), x , 0 ));  

Funciones especiales

bessel_j ( 0 , 4.5 ); 

aireado_ai ( 1.5 );

Véase también

Referencias

  1. ^ "Anunciamos la versión 5.47.0". 1 de junio de 2023. Consultado el 2 de junio de 2023 .
  2. ^ "GSOC 2019 se completó con éxito » Neuroinformática belga".
  3. ^ Barnes, David J. y Chu, Dominique (2010). "Capítulo 5". Introducción al modelado para biociencias . Springer . ISBN 978-1-84996-325-1.
  4. ^ "wxMaxima, una interfaz basada en documentos para el sistema de álgebra computacional Maxima" . Consultado el 29 de noviembre de 2021 .
  5. ^ "Maxima-Jupyter". GitHub . 13 de octubre de 2021.
  6. ^ "GMaxima:: Inicio". Archivado desde el original el 28 de julio de 2018. Consultado el 2 de abril de 2014 .
  7. ^ "Cantor". cantor.kde.org . Consultado el 15 de enero de 2020 .
  8. ^ "Descargar Kayali". SourceForge . 19 de abril de 2013 . Consultado el 31 de mayo de 2015 .
  9. ^ "Flathub: una tienda de aplicaciones y un servicio de compilación para Linux". flathub.org . Consultado el 27 de septiembre de 2019 .
  10. ^ Mårtenson, Elias (27 de agosto de 2019), GitHub - lokedhs/maxima-client: cliente Maxima. , recuperado el 27 de septiembre de 2019

Lectura adicional

Enlaces externos