Mathics 0.9 — Совместимость с открытым исходным кодом Mathematica


Mathematica-это большой мощный математический пакет, но что вы делаете, когда не можете оправдать его стоимость? Mathics-это математический пакет с открытым исходным кодом, который только что достиг версии 0.9, и это возможная альтернатива.

Mathics 0.9

Проект Mathics невелик по сравнению с ресурсами, которые Вольфрам может бросить в Mathematica, поэтому не ожидайте полного клона коммерческой программы. Однако он достаточно близок для многих целей.

Он реализует язык сценариев Mathematica, который теперь часто называют языком Wolfram, с Sympy, символической библиотекой Python, в качестве бэкэнда. Если вы не можете сделать это в Симпатии, скорее всего, вы не сможете сделать это и в математике. Вы можете использовать его либо через командную строку, либо через веб-интерфейс Django. Командная строка отлично подходит для работы с символикой, а веб-интерфейс обеспечивает интерфейс в стиле ноутбука, используемый в Mathematica.

Установка проста, как только вы знаете, как это сделать, но приведенные инструкции вводят в заблуждение, поскольку они не были обновлены с более ранней версии. Итак, для выполнения этой процедуры:

Установите Python 2.7, загрузите и извлеките Mathics и используйте сценарий установки.

Установка под Windows не очень хорошо документирована, но она также проста. Установите Python 2.7 с https://www.python.org/downloads/

Это по умолчанию устанавливает Python в C:\Python27\

Загрузите ZIP-файл Mathics, извлеките его в каталог Python и установите с помощью:

C:\Python27\python.exe C:\Python27\setup.py установка

Вы можете запустить консольную версию с помощью:

C:\Python27\Scripts\mathics

и версия веб — браузера с использованием:

C:\Python27\Scripts\mathicsserver

Когда сервер запущен, вы можете использовать математику, указав свой браузер на:

http://localhost:8000/

С этого момента вы можете исследовать математику, которая способна делать много впечатляющих вещей. Например:

Он также может делать менее впечатляющие визуально вещи, такие как исчисление, линейная алгебра и общая алгебра. Он не так силен в сложных случаях, как Mathematica — вы найдете интегралы и дифференциальные уравнения, которые Mathematica может сделать, что математика не может, но это удивительно хорошо. Это похоже на использование Mathematica, за исключением пользовательского интерфейса, который очень ограничен по сравнению — например, нет палитр.

Также новым является IMathics 0.1, ядро Jupyter для математики. Jupyter, который раньше назывался IPython, в будущем должен обеспечить более богатую рабочую среду для математики. На данный момент это очень ранние дни, и графика не поддерживается.

Математика не представляет угрозы для продаж Mathematica, потому что Python слишком медленный, чтобы его можно было использовать для проектов промышленного уровня, но он достаточно хорош для образовательного и экспериментального использования. Как пользователь Mathmatica, который больше не может оправдывать покупку копии для случайного и очень некритичного использования, Mathics является желанным дополнением к моему рабочему столу. 

Это проект с открытым исходным кодом, который может использовать вашу помощь, если вы программист на Python, интересующийся математикой. 

Моя единственная оговорка о математике заключается в том, что она использует Python 2.7, который является последним в строке Python 2.x. Он будет доступен по крайней мере до 2020 года, но это не так уж далеко, и все больше и больше программистов на Python внедряют Python 3.x, тенденцию, которую, я думаю, следует поощрять. Одна из причин, по которой проекты не могли перейти на Python 3.x, заключалась в том, что библиотеки, на которые они полагались, не поддерживали его. В случае SymPy он поддерживает Python 3.x, и поэтому следует надеяться, что Mathics последует этому примеру в будущем ypdate.

Обновление: 

Похоже, я ошибся. Mathics действительно работает под Python 3, как уточняет электронное письмо от Ангуса Гриффита (ведущего разработчика Mathic) :

Недавний выпуск Mathics, версия 0.9, поддерживает Python 3! Это первый выпуск Mathics, который сделал это. Теперь мы поддерживаем Python 2.7 вместе с Python >= 3.3. Была одна небольшая библиотека, interruptingcow, которая блокировала наше обновление до Python3. Мы использовали эту библиотеку для управления тайм-аутами оценки на онлайн-зеркалах mathics, но этот раздел кодовой базы Mathics был переписан (также исправлены некоторые другие проблемы).


Добавить комментарий