Scroll to navigation

MAXIMA(1L) MAXIMA(1L)

НАЗВАНИЕ

Maxima - Common Lisp версия символьного математического пакета MACSYMA, выпущенного под Общественной лицензией GNU

Xmaxima - графическая версия maxima

КРАТКАЯ СВОДКА

maxima [options]

xmaxima [options]

ОПИСАНИЕ

Maxima - модифицированная для работы под Common Lisp версия системы MACSYMA, разработанной в Массачусетском технологическом институте. Это диалоговая экспертная система и среда программирования для символьных и численных математических преобразований. Написанная на Lisp, она позволяет дифференцировать, интегрировать, решать линейные или полиномиальные уравнения, производить факторизацию многочленов, разлагать функции в ряды Лорана или Тейлора, вычислять ряды Пуассона, производить матричные и тензорные преобразования, двухмерная и трехмерная графика. Процедуры могут быть записаны с помощью ALGOL-подобного синтаксиса; предусмотрены как Lisp-подобные функции, так и средства сопоставления с образцом. Файлы, содержащие объекты Maxima, могут читаться и записываться на диск. Предварительно записанные команды Maxima могут читаться из файла и выполняться в пакетном режиме.

КЛЮЧИ

Обработать file в пакетном режиме.
Обработать Lisp файл file в пакетном режиме.
Обработать string в пакетном режиме.
Вывести информацию о директориях Maxima.
Отключить поддержку readline.
Включить Lisp отладчик.
Вывести краткую информацию об использовании.
Использовать реализацию Lisp lisp. Используйте --list-avail для вывода списка возможных значений.
Вывести список доступных версий Lisp и Maxima.
Предварительно загрузить lisp_file.
Не выводить стартовое сообщение Maxima.
Обработать string в диалоговом режиме Maxima.
Запустить сервер Maxima на порту port.
Запустить Maxima версии version. Используйте --list-avail для вывода списка возможных значений.
Вывести дополнительную информацию из сценария запуска Maxima.
Вывести установленную версию (по умолчанию).
Не выводить метки выражений и стартовое сообщение Maxima.

ВВОДНЫЕ ИНСТРУКЦИИ

При инициализации maxima выводит стартовое сообщение, после чего появляется приглашение командной строки:

(%i1)

Все команды Maxima должны завершаться:

1)
точкой с запятой (в этом случае результат выполнения команды выводится на экран в строке, начинающейся с %o , к которой добавляется номер команды), или
2)
знаком доллара, подавляющим печать строки с результатом.

ПРИМЕР

(%i1) diff(sin(x),x);

(%d1) cos(x)

(%i2) integrate(%o1,x);

(%o2) sin(x)

Пользователь вводит команды, создающие объекты Maxima (такие как функции и системные переменные) и выполняющие действия над ними.

В UNIX может оказаться предпочтительным запускать Maxima под управлением GNU Emacs или XEmacs. Это можно сделать вызвав командный режим из emacs, а затем ввести maxima. Желательно установить maxima.el из дистрибутива и использовать команду:

M-x maxima

Главное преимущество работы внутри emacs - то, что он предоставляет полную историю ввода/вывода. Выполнив команду

display2d:false ,

Вы получите возможность использовать вывод для ввод с помощью операций вырезки/вставки.

Lisp встроен в Maxima. Функция to_lisp() входит в цикл чтения-вычисления-вывода Lisp. Функция Lisp (run) может использоваться для возврата в Maxima. Кроме того, одиночные команды Lisp могут быть вызваны при запуске в командной строке с ключом :lisp.

ВСТРОЕННАЯ СПРАВКА

В систему встроена обширная диалоговая документация. Описание заданной команды можно получить с помощью команды

describe(command);

или, проще,

? command,

которая ищет в списке функций строку command. Демонстрационные файлы, предоставляющие полные примеры решения задач с помощью Maxima, могут быть вызваны командой demo(command);. Дополнительно поставляется библиотека командных файлов, созданных пользователями ("разделяемая библиотека"), предлагающая решения разнообразных задач.

ДРУГАЯ ДОКУМЕНТАЦИЯ

Полная документация поставляется в форматах info и html.

КОМАНДЫ ДЛЯ НАЧИНАЮЩИХ

Этот список включает только те команды, которые могут быть полезны начинающим пользователям, до изучения справочного руководства.

Выполняет содержимое файла myfile, который должен содержать команды Maxima.
Закрывает файловый сеанс, открытый командой writefile (см. ниже).
Выполняет содержимое файла myfile, который должен содержать команды Maxima, по одной.
Выводит содержимое всех доступных информационных списков.
Выводит список имен определенных к данному моменту функций.
Выводит список различных доступных информационных списков.
Удаляет объект(ы), записанные внутри круглых скобок. kill(all) удаляет все объекты, созданные пользователем, восстанавливая начальное состояние Maxima.
Выход из Maxima.
Сбрасывает все управляющие параметры Maxima в значения по умолчанию.
Выводит список имен переменных, содержащих скалярные значения.
Начинает запись сеанса в файл myfile; одновременно может быть открыт только один файл, а команда closefile должна быть вызвана до выхода из Maxima для сброса буфера.

ГРАФИЧЕСКИЕ КОМАНДЫ

Maxima способна строить двухмерные и трехмерные графики. Ниже приведены простой двумерный

plot2d (sin(x), [x, -2*%pi, 2*%pi]);

и трехмерный примеры

plot3d (2^(-u^2+v^2), [u, -5, 5], [v, -7, 7]);

По умолчанию построение графиков осуществляется программой gnuplot . Есть и другие способы построения графиков; см. "? plot_options". Для более подробной информации о построении графиков, см. "? plot".

ФАЙЛЫ

/usr/lib/maxima/5.48.1/binary-lisp
Скомпилированные файлы для реализации Lisp lisp
/usr/info
первичный каталог документации, содержащий info-файлы, используемые командой `describe', с возможностью просмотра в emacs и других программах для просмотра info-файлов.
/usr/share/maxima/5.48.1/doc/html
HTML-версия документации.
/usr/share/maxima/5.48.1/demo
Демонстрационные файлы Maxima.
/usr/share/maxima/5.48.1/emacs
Файлы Elisp для использования с Emacs или XEmacs.
/usr/share/maxima/5.48.1/share
Дополнительные внешние пакеты.
/usr/share/maxima/5.48.1/doc/share
Документация для дополнительных внешних пакетов.
/usr/share/maxima/5.48.1/src
Полные исходные тексты Maxima.
/usr/share/maxima/5.48.1/tests
Набор тестов.
/usr/share/maxima/5.48.1/xmaxima
Файлы поддержки Xmaxima.
/usr/libexec/maxima/5.48.1/
Сценарии сопутствующих Maxima утилит.

ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ

Указывает на каталог с файлами пользовательских настроек. По умолчанию пути поиска Maxima включают MAXIMA_USERDIR. Значение по умолчанию: $HOME/.maxima.
Свои входные файлы Maxima ищет в каталоге, указанном во время компиляции, /usr. Maxima можно переместить в другой каталог до тех пор пока сценарий maxima поддерживает то же относительное положение по отношениею к входным файлам Maxima. Если, в силу каких-то причин, сценарий maxima перемещается отдельно, для указания вершины дерева, содержащего входные файлы системы, необходимо установить значение MAXIMA_PREFIX.
MAXIMA_DIRECTORY экивалентна MAXIMA_PREFIX. Включена только для обратной совместимости с предыдущими версиями Maxima.

Maxima использует несколько дополнительных переменных окружения для взаимодействия между сценарием maxima и образом Lisp-системы. Все эти переменные начинаются с MAXIMA_ и не должны меняться пользователем.

ФАЙЛЫ НАСТРОЕК

maximarc загружается скриптом maxima при запуске системы. Он должен быть расположен в каталоге $MAXIMA_USERDIR (см. выше). maximarc можно использовать, например, для изменения выбранной по умолчанию реализации Lisp на CMUCL включением строки "MAXIMA_LISP=cmucl".
При запуске Maxima загрузит Lisp-файл maxima-init.lisp, если найдет его в каталогах для поиска. Для пользовательской настройке, maxima-init.lisp должен располагаться в $MAXIMA_USERDIR (см. выше). Поскольку Maxima обычно имеет системный файл maxima-init.lisp, пользователь может скопировать содержимое системного maxima-init.lisp в свой личный файл.
При запуске Maxima загрузит Maxima-файл maxima-init.mac, если найдет его в каталогах для поиска. Для пользовательской настройке, maxima-init.mac должен располагаться в $MAXIMA_USERDIR (см. выше).

ССЫЛКИ

Старая ссылка: MACSYMA. Справочное руководство (тома 1 и 2). Группа Mathlab, Лаборатория компьютерных наук, МТИ. Версия 10. Январь 1983 г.

Новые ссылки: http://maxima.sourceforge.net

ОШИБКИ

Maxima - сложная система, содержащая как известные, так и неизвестные ошибки. Используйте ее на свой страх и риск. База ошибок Maxima доступна по адресу

https://sourceforge.net/p/maxima/bugs/

Новые сообщения об ошибках всегда приветствуются. Пожалуйста, включайте в сообщение вывод функции Maxima "build_info()".

АВТОРЫ

MACSYMA (Проект MAC's SYmbolic MAnipulation System) была разработана группой Mathlab в лаборатории компьютерных наук МТИ (первоначально известной как Проект MAC) в 1969-1972 гг. Эта работа была поддержана грантами NSG 1323 NASA, N00014-77-C-0641 Исследовательского агентства ВМС, ET-78-C-02-4687 Министерства энергетики США и F49620-79-C-020 ВВС США. Затем MACSYMA была модифицирована для использования под операционной системой UNIX (на компьютерах DEC VAX и рабочих станциях Sun) Ричардом Фейтманом и его коллегами из Калифорнийского университета в Беркли; эта версия MACSYMA известная как VAXIMA. Настоящая версия развивается из переработки общедоступной MIT MACSYMA для GNU Common Lisp, выполненной Уильямом Шелтером (Техасский университет в Остине), который развивал ее до своей кончины в 2001 г. Она содержит многочисленные дополнения, расширения и улучшения относительно оригинала. Оригинальная версия этой справочной страницы была написана Р.П.К. Роджерсом (rodgers@maxwell.mmwb.ucsf.edu) из Фармацевтической школы Калифорнийского университета (Сан-Франциско, CA 94143) в 1989 г., и существенно переработана Джеймсом Амундсоном в 2002 г.

Сейчас Maxima развивается и поддерживается проектом Maxima <http://maxima.sourceforge.net>.

September 10, 2005