SciPy — відкрита бібліотека високоякісних наукових інструментів для мови програмування Python. SciPy містить модулі для оптимізації, інтегрування, спеціальних функцій, обробки сигналів, обробки зображень, генетичних алгоритмів, розв'язування звичайних диференціальних рівнянь та інших задач, які розв'язуються в науці і при інженерній розробці. Бібліотека розробляється для тієї ж аудиторії, що і MATLAB та Scilab. Для візуалізації при використанні SciPy часто застосовують бібліотеку Matplotlib, яка є аналогом засобів виводу графіки MATLAB. В даний час SciPy поширюється під ліцензією BSD і його розробники спонсоруються Enthought[en].

SciPy
Тип розширення мови Python
Розробник Проект спільноти
Стабільний випуск 0.17.1[1] (12 травня, 2016; 7 років тому (2016-05-12))
Операційна система Крос-платформова
Мова програмування Python[2], C, Fortran, C++ і Cython
Ліцензія Ліцензія BSD
Репозиторій github.com/scipy/scipy
Вебсайт scipy.org

Структури даних ред.

Основною структурою даних в SciPy є багатовимірний масив, реалізований модулем NumPy (старіші версії SciPy використовували з цією метою Numeric).

Модулі ред.

Огляд ред.

Доступні підпакети

Додаткова функціональність ред.

Основна функціональність SciPy розширюється за рахунок інших інструментів[4]. Наприклад:

  • Графіка. На даний момент рекомендованим пакетом для рисування двомірної графіки є Matplotlib, однак існує велика кількість інших, наприклад, HippoDraw[en], Chaco, і Biggles. Також популярними є Python Imaging Library і MayaVi[en] (для 3D візуалізації).
  • Оптимізація. Хоча SciPy має свій пакет для оптимізації, OpenOpt має доступ до більшої кількості оптимізаційних пакетів і розв'язувачів.
  • Розширений аналіз даних. За допомогою RPy, SciPy забезпечує інтерфейс до статистичному пакету R, призначеному для складного аналізу даних.
  • База даних. SciPy може взаємодіяти з [1] [Архівовано 14 серпня 2015 у Wayback Machine.] PyTables, ієрархічною базою даних, розробленою для ефективного керування великими об'ємами даних, що зберігаються у файлах формату HDF5[en].
  • Інтерактивна оболонка. IPython це інтерактивне середовище, яке забезпечує зневадження і створення коду в стилі, близькому до MATLAB.
  • Символьна математика. Існує декілька бібліотек для Python, таких як PyDSTool[недоступне посилання з лютого 2019], Symbolic і SymPy[en], які дозволяють працювати із символьною математикою.

Історія ред.

У 1990-х роках Python було розширено, щоби включити тип масиву для числових обчислень під назвою Numeric (Цей пакет було врешті-решт замінено Тревісом Оліфантом[en], який написав NumPy 2006 року як змішування Numeric і Numarray, що було розпочато ще 2001 року). Станом на 2000 рік, зростала кількість модулів розширення та зростав інтерес до створення повноцінного середовища для науково-технічних обчислень. 2001 року Травіс Оліфант, Ерік Джонс (Eric Jones) та Піру Петерсон (Pearu Peterson) об'єднали написаний ними код і назвали отриманий пакет SciPy. Новостворений пакет забезпечив стандартний збір загальних числових операцій над структурою даних числового масиву. Незабаром після цього Фернандо Перес (Fernando Pérez) випустив IPython, вдосконалену інтерактивну оболонку, яка широко застосовувалася в технічному обчислювальному співтоваристві, а Джон Хантер (John Hunter) випустив першу версію Matplotlib, бібліотеку 2D-графіки для технічних обчислень. Відтоді середовище SciPy продовжує зростати завдяки збільшенню кількості пакетів та інструментів для технічних обчислень.[5][6][7]

Див. також ред.

Примітки ред.

  1. PyPi SciPy. Архів оригіналу за 29 червня 2016. Процитовано 6 червня 2016.
  2. The scipy Open Source Project on Open Hub: Languages Page — 2006.
  3. SourceForge.net: SciPy: Scientific Library for Python: Files. Архів оригіналу за 8 листопада 2012. Процитовано 31 липня 2015.
  4. Topical Software. Архів оригіналу за 16 січня 2013. Процитовано 31 липня 2015.
  5. History of SciPy. Архів оригіналу за 9 липня 2015. Процитовано 4 листопада 2019. (англ.)
  6. Guide to NumPy (PDF). Архів оригіналу (PDF) за 19 жовтня 2013. Процитовано 4 листопада 2019. (англ.)
  7. Python for Scientists and Engineers. Архів оригіналу за 19 лютого 2019. Процитовано 4 листопада 2019. (англ.)

Література ред.

  • Bressert, E. SciPy and NumPy. — O'Reilly, 2012. — 57 p. — ISBN 9781449305468.
  • Blanco-Silva, F.J. Learning SciPy for Numerical and Scientific Computing. — Packt Publishing, Limited, 2013. — 150 p. — ISBN 9781782161639.

Посилання ред.