Автор (ы) оригинала | Трэвис Олифант , Пиру Петерсон, Эрик Джонс |
---|---|
Разработчики) | Проект общественной библиотеки |
Первый выпуск | Около 2001 г. |
Стабильный выпуск | 1.6.3 [1] / 25 апреля 2021 г . |
Репозиторий | |
Написано в | Python , Fortran , C , C ++ [2] |
Операционная система | Кроссплатформенность |
Тип | Технические вычисления |
Лицензия | BSD-новая лицензия |
Веб-сайт | scipy |
SciPy (произносится / ев aɪ р aɪ / «вздыхать пирог» [3] ) является свободным и открытым исходным кодом Python библиотека , используемая для научных вычислений и технических вычислений. [4]
SciPy содержит модули для оптимизации , линейной алгебры , интеграции , интерполяции , специальных функций , БПФ , обработки сигналов и изображений , решателей ODE и других задач, распространенных в науке и технике.
SciPy - это также семейство конференций для пользователей и разработчиков этих инструментов: SciPy (в США), EuroSciPy (в Европе) и SciPy.in (в Индии). [5] Enthought является инициатором конференции SciPy в США и продолжает спонсировать многие международные конференции, а также размещать веб-сайт SciPy.
Библиотека SciPy в настоящее время распространяется под лицензией BSD , а ее разработка спонсируется и поддерживается открытым сообществом разработчиков. Он также поддерживается NumFOCUS , общественным фондом поддержки воспроизводимой и доступной науки.
Компоненты [ править ]
Пакет SciPy, содержащий ключевые алгоритмы и функции, лежащие в основе научных вычислительных возможностей Python. Доступные подпакеты включают:
- кластер : иерархическая кластеризация, векторное квантование, K-средних
- константы : физические константы и коэффициенты преобразования
- fft : алгоритмы дискретного преобразования Фурье
- fftpack : устаревший интерфейс для дискретных преобразований Фурье
- интегрировать : процедуры численного интегрирования
- интерполировать : инструменты интерполяции
- io : ввод и вывод данных
- linalg : процедуры линейной алгебры
- разное : разные утилиты (например, примеры изображений)
- ndimage : различные функции для обработки многомерных изображений
- ODR: классы и алгоритмы ортогональной дистанционной регрессии
- optimize : алгоритмы оптимизации , включая линейное программирование
- signal : инструменты обработки сигналов
- sparse : разреженные матрицы и связанные алгоритмы
- пространственные : алгоритмы для пространственных структур, таких как деревья kd , ближайшие соседи, выпуклые оболочки и т. д.
- special : специальные функции
- stats : статистические функции
- weave : инструмент для написания кода C / C ++ в виде многострочных строк Python (теперь устарел в пользу Cython [6] )
Структуры данных [ править ]
Базовая структура данных, используемая SciPy, представляет собой многомерный массив, предоставляемый модулем NumPy . NumPy предоставляет некоторые функции для линейной алгебры, преобразования Фурье и генерации случайных чисел , но не с общностью эквивалентных функций в SciPy. NumPy также можно использовать как эффективный многомерный контейнер данных с произвольными типами данных. Это позволяет NumPy легко и быстро интегрироваться с широким спектром баз данных. В более старых версиях SciPy в качестве типа массива использовался Numeric, который теперь устарел в пользу нового кода массива NumPy. [7]
История [ править ]
В 1990-х годах Python был расширен за счет включения типа массива для числовых вычислений под названием Numeric (этот пакет в конечном итоге был заменен Трэвисом Олифантом, который написал NumPy в 2006 году как смесь Numeric и Numarray, которая была начата в 2001 году). По состоянию на 2000 год росло число модулей расширения и возрастал интерес к созданию полноценной среды для научных и технических вычислений. В 2001 году Трэвис Олифант, Эрик Джонс и Пиару Петерсон объединили написанный ими код и назвали получившийся пакет SciPy. Вновь созданный пакет предоставляет стандартный набор общих числовых операций поверх структуры данных числового массива. Вскоре после этого Фернандо Перес выпустил IPython., усовершенствованная интерактивная оболочка, широко используемая в сообществе технических вычислений, и Джон Хантер выпустил первую версию Matplotlib , библиотеки 2D-графиков для технических вычислений. С тех пор среда SciPy продолжала расти с появлением большего количества пакетов и инструментов для технических вычислений. [8] [9] [10]
См. Также [ править ]
- Сравнение программ численного анализа
- Список программного обеспечения для численного анализа
- Сравнение статистических пакетов
- SageMath
Заметки [ править ]
- ^ "Выпуск 1.6.3" . 25 апреля 2021 . Проверено 26 апреля 2021 года .
- ^ Команда SciPy. «Как может SciPy быть быстрым, если он написан на интерпретируемом языке, таком как Python?» . Проверено 23 декабря 2013 .
- ^ https://scipy.org/ "SciPy (произносится как" Вздох-пирог ")"
- ^ Паули Виртанен; Ральф Гоммерс; Трэвис Э. Олифант ; и другие. (3 февраля 2020 г.). «SciPy 1.0: фундаментальные алгоритмы для научных вычислений на Python» (PDF) . Методы природы . 17 (3): 261–272. DOI : 10.1038 / S41592-019-0686-2 . ISSN 1548-7091 . PMC 7056644 . PMID 32015543 . Викиданные Q84573952 . (опечатка)
- ^ "Конференции SciPy" .
- ^ «Примечания к выпуску SciPy 0.15.0 - Справочное руководство SciPy v1.6.2» . docs.scipy.org . Проверено 13 апреля 2021 .
- ^ "Домашняя страница NumPy" .
- ^ "История SciPy" .
- ^ "Руководство по NumPy" (PDF) .
- ^ «Python для ученых и инженеров» .
Дальнейшее чтение [ править ]
- Нуньес-Иглесиас, Хуан; ван дер Вальт, Стефан; Дашноу, Харриет (2017). Elegant SciPy: Искусство научного Python . О'Рейли. ISBN 978-1-4919-2287-3.
Внешние ссылки [ править ]
- Официальный веб-сайт