Введение
Компьютерная алгебра Maxima ('/m//æ//k//s//ɪ//m//ə/) — мощный программный пакет для выполнения вычислений в области математики и физики. Он написан на Common Lisp и работает на всех POSIX-совместимых платформах, таких как macOS, Unix, BSD и Linux, а также под Microsoft Windows и Android. Это свободное программное обеспечение, распространяемое по лицензии GNU General Public License (GPL).
Maxima ('/m//æ//k//s//ɪ//m//ə/) is a powerful software package for performing computer algebra calculations in mathematics and the physical sciences. It is written in Common Lisp and runs on all POSIX platforms such as macOS, Unix, BSD, and Linux, as well as under Microsoft Windows and Android. It is free software released under the terms of the GNU General Public License (GPL).
История
Maxima основана на версии Macsyma 1982 года, разработанной в MIT при финансировании Министерства энергетики США и других государственных учреждений. Билл Шелтер поддерживал версию Macsyma с 1982 года до своей смерти в 2001 году. В 1998 году Шелтер получил разрешение от Министерства энергетики опубликовать свою версию под лицензией GPL. Эта версия, ныне известная как Maxima, поддерживается независимым сообществом пользователей и разработчиков. Maxima не включает в себя многочисленные модификации и улучшения, внесённые в коммерческую версию Macsyma в период с 1982 по 1999 год. Несмотря на то, что основная функциональность остаётся схожей, код, зависящий от этих улучшений, может не работать в Maxima, а ошибки, исправленные в Macsyma, могут сохраняться в Maxima, и наоборот. В 2019 году Maxima участвовала в программе Google Summer of Code под эгидой Международного координационного центра нейроинформатики.
Символические расчеты
Как и большинство систем компьютерной алгебры, Maxima поддерживает различные способы преобразования символьных алгебраических выражений, такие как разложение многочленов на множители, вычисление наибольшего общего делителя многочленов, раскрытие скобок, разделение на действительную и мнимую части, а также преобразование тригонометрических функций в экспоненциальные и обратно. В Maxima реализованы различные методы упрощения алгебраических выражений, содержащих тригонометрические функции, корни и экспоненциальные функции. Она может вычислять символьные первообразные ("неопределенные интегралы"), определенные интегралы и пределы. Maxima способна получать разложения в ряды в замкнутой форме, а также члены рядов Тейлора, Маклорена и Лорана. Она позволяет выполнять матричные операции с символьными элементами. Maxima – это система общего назначения, и некоторые специализированные вычисления, такие как факторизация больших чисел или работа с очень большими многочленами, иногда лучше выполнять в специализированных системах.
Числовые вычисления
Максима специализируется на символьных операциях, но также предоставляет численные возможности, включая целые, рациональные числа и числа с плавающей точкой произвольной точности, ограниченные лишь объемом памяти и временем вычислений.
Программирование
Maxima включает в себя полноценный язык программирования с синтаксисом, напоминающим ALGOL, но семантикой, подобной Lisp. Он написан на Common Lisp и может быть использован программно и расширен, так как базовый Lisp может быть вызван из Maxima. Для построения графиков используется gnuplot. Для вычислений, интенсивно использующих числа с плавающей точкой и массивы, Maxima имеет трансляторы с языка Maxima на другие языки программирования (в частности, Fortran), которые могут выполняться более эффективно.
Специальные функции
Бессель J(0, 4.5); Эйри Ai(1.5);