Sage

Sage (англ. мудрец) — система компьютерной алгебры, покрывающая много областей математики, включая алгебру, комбинаторику, вычислительную математику и матанализ.
Первая версия Sage была выпущена 24 февраля 2005 года в виде свободного программного обеспечения с лицензией GNU GPL. Первоначальной целью проекта было «создание открытого программного обеспечения альтернативного системам Magma, Maple, Mathematica, и MATLAB». Разработчиком Sage является Уильям Стейн — математик Университета Вашингтона.

  • Возможности:
  • Интерфейс notebook для просмотра и повторного использования введённых команд и полученных результатов, включая графики и текстовые аннотации, доступный из большинства современных веб-браузеров. Доступно защищённое соединение через протокол HTTPS, когда конфиденциальность имеет значение. Так же Sage может выполняться как локально, так и удалённо.
  • Интерфейс ввода на основе командной строки, с использованием мультипарадигменного языка Python.
  • Поддержка параллельных вычислений с использованием как многоядерных процессоров, так и многопроцессорных систем и систем распределённых вычислений.
  • Матанализ реализован на основе систем Maxima и SymPy.
  • Линейная алгебра реализована на основе систем GSL, SciPy и NumPy.
  • Библиотеки элементарных и специальных математических функций.
  • Плоские и трёхмерные графики для функций и данных.
  • Средства работы с матрицами и массивами данных с поддержкой разрежённых массивов.
  • Различные статистические библиотеки функций, использующие функциональность R и SciPy.
  • Набор инструментов для добавления собственного пользовательского интерфейса к вычислениям и приложениям.
  • Средства для обработки изображений с использованием pylab и Python.
  • Средства визуализации и анализа теории графов.
  • Процедуры для импорта и экспорта различных форматов данных: изображений, видео, аудио, САПР, ГИС, документов и медицинских форматов.
  • Поддержка комплексных чисел, символьных и вычислений с произвольной точностью.
  • Подготовка научно-технической документации с использованием редактора формул и возможностью встраивания Sage в документацию формата LaTeX.
  • Сетевые инструменты для соединения с базами данных SQL, поддержка сетевых протоколов, включая HTTP, NNTP, IMAP, SSH, IRC, FTP.
  • Программные интерфейсы для работы с системами Mathematica, Magma, и Maple.
  • Хотя это не представлено непосредственно, Sage может быть вызван из интерфейса Mathematica.

Исходный код и исполняемые файлы Sage доступны для скачивания. Если компиляция производится на конечном компьютере, многие входящие в комплект библиотеки будут автоматически настроены для оптимальной работы на данном оборудовании, принимая в расчёт количество процессоров, размер кэш-буферов и поддержку специальных наборов инструкций, например SSE.

Сайт программы