{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# SciPy\n", "\n", "\n", "\n", "[SciPy](https://scipy.org/scipylib/index.html) - библиотека, в которой реализовано множество процедур и численных алгоритмов для решения таких задач, как численное интегрирование, интерполяция, оптимизация, линейной алгебры, статистики и т.д. Если в рамках вашей научной деятельности возникает необходимость применить какой-то численный алгоритм, то стоит проверить не реализован ли он уже в `SciPy`. \n", "\n", "## Установка SciPy\n", "\n", "Чтобы установить `SciPy`, наберите в `Anaconda Prompt` команду\n", "```zsh\n", "conda install scipy\n", "```\n", "или \n", "```zsh\n", "python -m pip install scipy\n", "```\n", "## Импортирование SciPy\n", "\n", "SciPy состоит из подмодулей для решения похожих задач определенного вида. Отметим ряд из них:\n", "- [scipy.integrate](https://docs.scipy.org/doc/scipy/reference/integrate.html#module-scipy.integrate): численное интегрирование, численное решение ОДУ;\n", "- [scipy.interpolate](https://docs.scipy.org/doc/scipy/reference/interpolate.html#module-scipy.interpolate): интерполяция;\n", "- [scipy.linalg](https://docs.scipy.org/doc/scipy/reference/linalg.html#module-scipy.linalg): линейная алгебра, решение СЛАУ, задачи на собственные числа, сингулярное разложение и многое другое;\n", "- [scipy.optimize](https://docs.scipy.org/doc/scipy/reference/optimize.html#module-scipy.optimize): оптимизационные алгоритмы, поиск корней уравнения, аппроксимация данных, задачи линейного программирования и др.;\n", "- [scipy.special](https://docs.scipy.org/doc/scipy/reference/special.html#module-scipy.special): специальные функции;\n", "- [scipy.constants](https://docs.scipy.org/doc/scipy/reference/constants.html#module-scipy.constants): константы (в том числе и физические);\n", "- [scipy.stats](https://docs.scipy.org/doc/scipy/reference/stats.html#module-scipy.stats): статистка;\n", "\n", "Более подробно про эти и остальные подмодули можно почитать в [документации](https://docs.scipy.org/doc/scipy/reference/tutorial/index.html#user-guide), [курсе лекций по `SciPy`](http://scipy-lectures.org/intro/scipy.html) или в книге [Elegant SciPy](https://github.com/elegant-scipy/notebooks).\n", "\n", "Пространство имен в `SciPy` устроено не совсем обычным образом. Принято импортировать не библиотеку целиком, а только её подмодули (`submodule`) или даже определенные функции этих подмодулей. Подробнее об `API` можно почитать [здесь](https://docs.scipy.org/doc/scipy-0.14.0/reference/api.html).\n", "\n", "```python\n", "from scipy import optimize\n", "from scipy import integrate\n", "from scipy.stats import distributions\n", "```" ] } ], "metadata": { "interpreter": { "hash": "8617202e12f254480e1fae3258716b685f1a56bcbf234a446366b4fd3345ed22" }, "kernelspec": { "display_name": "Python 3.8.10 64-bit", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 2 }