Sage: строим полиномы Цернике

В данном топике забавы ради и понимания для мы построим в системе Sage полиномы Цернике, которые даны в виде функций в полярных координатах.

Форма и порядок полиномов Цернике (взято из книги Л.И. Балашевича Клиническая корнеотопография и аберрометрия):



По данной таблице можно определить номер полинома:

( Читать дальше )

Mathbuntu - очередное пополнение в рядах Бубунт

Заметил тут дистрибутивчик Mathbuntu для тех, кто испытывает слабость «к» или нужду «в» математическом ПО.

В состав входит:

LaTeX (набор текста, формул)
Scilab (MATLAB клон)
Maxima (алгебра)
wxMaxima (графический интерфейс для Maxima)
Octave (MATLAB клон)
QtOctave (графический интерфейс для Octave)
R (статистика)
RKWard (графический интерфейс для R)
Sage (математика, про него кстати я писал)
GeoGebra (геометрия и алгебра)
K3DSurf (генератор 3D поверхностей)
Xfig (векторная алгебра)
XPPAUT (решение дифференциальных уравнений)
IFS Tools (создание фракталов)
KmPlot (отрисовка математических функций)

Решаем уравнения с помощью Sage

Сегодня я покажу небольшой пример решения уравнения с помощью open source системы Sage. Sage позиционируется как открытая альтернатива Magma, Maple, Mathematica, MATLAB. Система может работать в режиме интерпретатора, открывать готовые файлы с выражениями, использоваться в коде на Python. Кроме того, Sage обладает веб интерфейсом, позволяющим хранить так называемые «рабочие листы» с расчетами (worksheets):



Пример онлайн интерфейса можно посмотреть здесь.

Вообще, система может работать на нескольких платформах, но я использовал OpenSUSE 11.4. Готовых пакетов под мой дистрибутив не было, были только для Fedora и Ubuntu, так что пришлось собирать из исходного кода (около 500 Мб). Для сборки нужно лишь выполнить в директории исходников команду make (должен быть установлен gcc и заголовочные файлы python). К слову на моем слабеньком нетбуке на сборку ушло около 15 часов.

Стоило ли? Стоило!

Привожу небольшой пример практического применения. Если не вдаваться в предметную область (а про нее здесь можно почитать здесь или копия здесь), то нужно было решить несложное, но очень громоздкое уравнение. Есть вот такой набор выражений:

( Читать дальше )