Введение
Euler (теперь Euler Mathematical Toolbox или EuMathT) — бесплатный программный пакет с открытым исходным кодом для численных расчетов. Он включает в себя матричный язык, графический интерфейс в стиле блокнота и окно для построения графиков. Euler предназначен для решения задач высшей математики, таких как математический анализ, оптимизация и статистика. Программное обеспечение поддерживает работу с вещественными, комплексными и интервальными числами, векторами и матрицами, позволяет создавать 2D/3D графики и использует Maxima для символьных вычислений. Программное обеспечение можно скомпилировать под Windows. Версии для Unix и Linux не содержат подсистему компьютерной алгебры.
История
Euler Math Toolbox возник в 1988 году как программа для Atari ST. В то время программа называлась просто Euler, но это оказалось слишком общим названием для использования в Интернете. Основной целью программы было создание инструмента для тестирования численных алгоритмов, визуализации результатов и демонстрации математического материала в учебном классе. Euler Math Toolbox использует матричный язык, аналогичный MATLAB, система разработки которого началась в 1970-х годах. Рене Гротманн, математик из Католического университета Эйхштетт-Ингольштадта (Германия), является главным разработчиком Euler как тогда, так и сейчас. В 2007 году Euler был интегрирован с системой компьютерной алгебры Maxima. Были добавлены символьные выражения и другие функции для взаимодействия с Maxima и достижения высокой степени интеграции с числовым ядром Euler.
Обзор
Ядро Эйлера – это числовая система, написанная на C/C++. Оно обрабатывает вещественные, комплексные и интервальные значения, а также матрицы этих типов. Другие доступные типы данных – это разреженные, сжатые матрицы, длинный аккумулятор для точного вычисления скалярного произведения и строки. Строки используются для выражений, имен файлов и т. д. На основе этого ядра реализованы дополнительные функции в языке матриц Эйлера, который является интерпретируемым языком программирования в стиле продвинутого диалекта BASIC. Эйлер содержит библиотеки для статистики, точных численных вычислений с интервальными включениями, дифференциальных и жестких дифференциальных уравнений, астрономических функций, геометрии и многого другого. Удобный интерфейс состоит из текстового и графического окон. Текстовое окно содержит полностью редактируемые блокноты, а графическое окно – графический вывод. Графику можно добавлять в окно блокнота или экспортировать в различные форматы (PNG, SVG, WMF, буфер обмена). Типы графиков включают линейные, столбчатые или точечные диаграммы в 2D и 3D, включая анаглифные графики 3D-поверхностей и другие 3D-графики. Эйлер имеет API для использования открытого трассировщика лучей POV-Ray. Эйлер выполняет символьные вычисления с помощью Maxima, которая загружается как отдельный процесс и взаимодействует с Эйлером через каналы. Обе программы могут обмениваться переменными и значениями. Фактически, Maxima используется в различных функциях Эйлера (например, в методе Ньютона) для вычисления производных, разложений в ряд Тейлора и интегралов. Более того, Maxima может вызываться при определении функции Эйлера. LaTeX можно использовать внутри Эйлера для отображения формул. Для экспорта формул в HTML можно использовать либо сгенерированные изображения LaTeX, либо MathJax. Специальная опция экспорта позволяет экспортировать всю графику в SVG. Эйлер также включает в себя Tiny C Compiler, который позволяет компилировать подпрограммы на C и включать их через Windows DLL. Эйлер имеет много общего с MATLAB и его бесплатными клонами (GNU Octave), но он несовместим с ними.