Новость из категории: Информация

SymPy

Содержание:
1. Axiom;
2. Yacas;
3. MathPiper;
4. SymPy (Вы читаете данный раздел).
SymPy

Несмотря на объективные трудности разработки CAS с нуля, такие попытки не прекращаются. Несколько лет назад появилась совершенно новая и независимая свободная CAS SymPy (http://code.google.com/p/sympy), полностью написанная на языке Python. Основная задача проекта SymPy - создать открытую CAS, исходный код которой был бы максимально простым, понятным и доступным для модификации и создания расширений. Другими словами, авторы проекта пытаются сгладить барьер колоссальной сложности кода, который тормозит развитие проектов-ветеранов, написанных на языках низкого уровня с использованием приемов программирования, которые устарели десятилетия назад. Аналитическое ядро SymPy полностью написано на Python, не используя никаких оберток для существующих символьных пакетов и является обыкновенным модулем Python. SymPy не имеет никаких внешних зависимостей кроме необязательных библиотек для построения графиков и LaTeX для красивого форматирования формул. SymPy не является конкурентом системы Sage, также написанной на Python, а рассматривается как альтернативное аналитическое ядро для нее. По аналитическим возможностям SymPy уже вполне сопоставима с Maxima и со временем может заменить ее в Sage. SymPy присутствует в репозиториях многих популярных дистрибутивов GNU/Linux. Ubuntu она устанавливается командой:
sudo apt-get install python-sympy

С точки зрения пользователя SymPy и Sage во многом выглядят очень похоже за исключением того, что в SymPy нет интерфейса документа. Вместе с SymPy устанавливается специальная модифицированная версия консоли ipython, вызываемая командой isympy, в которой автоматически загружены все нужные модули. В SymPy объекты-символы отличаются от обычных объектов Python и должны объявляться явно:
In [1]: a = Symbol('a')
In [2]: x,y,z = symbols('xyz')

SymPy

Как и в Sage, поддерживается процедурный и объектно-ориентированный синтаксис:
In [1]: diff(cos(x+2*x),x)
Out[1]: -3*sin(3*x)
In [2]: sin(x**2).diff(x)
Out[2]: 2*x*cos(x**2)

SymPy
Поддерживаются обычные, полярные и параметрические графики, различные стили линий и заливки

Двумерные и трехмерные графики в SymPy строятся с помощью единой команды Plot и отображаются в отдельном окне с возможностью интерактивного масштабирования, вращения и перемещения. Поддерживаются обычные, полярные и параметрические графики, различные стили линий и заливки (см. рис. выше). Качество графики - хорошее, но возможности форматирования очень аскетичны.

Документация SymPy - исключительно англоязычная, но достаточно подробная и понятная. Исключение составляет графика, которая описана очень кратко и отсылает пользователя к многочисленным файлам примеров, которые устанавливаются вместе с системой.

Выводы

Кроме таких «гигантов», как Maxima и Sage, существует несколько альтернативных свободных CAS. Они могут успешно использоваться в тех случаях, когда применение Maxima и Sage невозможно или не оправдано. Система MathPiperlDE ориентирована на обучение математике и программированию «с нуля», тогда как другие CAS не очень дружественны к новичкам. Для быстрого выполнения нескольких аналитических преобразований «на лету» прекрасно подходит интернет-сервис Yacas, не требующий регистрации. Axiom будет работать даже на самом слабом компьютере, которых до сих пор немало в школах и вузах. SymPy является практически полным аналогом Sage в режиме интерпретатора, но, в отличие от громадного и сложного в установке Sage, занимает мало места на диске и элементарно устанавливается локально.



Итак, с математическими языками программирования мы разобрались, а теперь давайте поговорим про программу (http://windows7all.ru/load/soft/multimedia_dlja_windows_7/skachat_drug_vokrug_na_kompjuter_besplatno/6-1-0-411) с ярко выраженной социальной направленностью - "Друг Вокруг"! Впрочем, вот Вам обзор программы Друг Вокруг, из которого Вы узнаете все необходимое!

Рейтинг статьи

Оценка
5/5
голосов: 2
Ваша оценка статье по пятибальной шкале:
 
 
   

Поделиться

Похожие новости

Комментарии

^ Наверх