SciPy – свободная библиотека для языка программирования Python с открытым исходным кодом, предназначенная для выполнения научных и инженерных расчётов.
Основной структурой данных в SciPy является многомерный массив, реализованный модулем NumPy (более старые версии SciPy использовали модуль Numeric).
Библиотека SciPy доступна для операционных систем Microsoft Windows, Linux, Debian, Ubuntu и Fedora.
Возможности SciPy
Целевая аудитория – пользователи продуктов MATLAB и Scilab.
Для визуализации результатов расчётов часто применяется библиотека Matplotlib, являющаяся аналогом средств вывода графики MATLAB.
Библиотека SciPy распространяется по условиям лицензии BSD. Разработчиков финансирует фирма «Enthought».
Модули SciPy
Доступные субпакеты:
- constants
Физические константы и коэффициенты пересчёта (с версии 0.7.0).- cluster
Векторное квантование.- fftpack
Дискретные алгоритмы преобразования Фурье.- integrate
Инструменты для интегрирования.- interpolate
Инструменты для интерполяции.- io
Ввод-вывод данных.- lib
Работа со сторонними библиотеками.- linalg
Линейная алгебра.- misc
Разное.- optimize
Средства оптимизации.- sandbox
Экспериментальный код.- signal
Обработка сигналов.- sparse
Поддержка разреженных матриц.- special
Специальные функции.- stats
Статистические функции.- weave
Использование кода, написанного на языках C и C++.
Функциональность библиотеки SciPy можно расширить с помощью других инструментов. Примеры.
- Графика
Для отрисовки двухмерной предназначено несколько библиотек: Matplotlib (рекомендуется), HippoDraw, Chaco, Biggles, Python Imaging Library, MayaVi (поддерживает трёхмерную графику).- Оптимизация
Библиотеки для оптимизации: optimize (модуль встроен в SciPy), OpenOpt (предоставляет больше пакетов и решателей).- Анализ данных
Модуль RPy позволяет выполнять анализ данных с помощью языка программирования R.- База данных
Библиотека SciPy может взаимодействовать с PyTables – иерархической базой данных, разработанной для управления большими объёмами данных; данные хранятся в файлах формата HDF5.- Интерактивная оболочка
IPython – это интерактивная среда для ввода и отладки кода, аналог оболочки MATLAB.- Символьная математика
Библиотеки для символьных вычислений: PyDSTool, Symbolic и SymPy.
Ссылки