Научная статья на тему 'ИСПОЛЬЗОВАНИЕ PYTHON ДЛЯ МАТЕМАТИЧЕСКИХ ВЫЧИСЛЕНИЙ'

ИСПОЛЬЗОВАНИЕ PYTHON ДЛЯ МАТЕМАТИЧЕСКИХ ВЫЧИСЛЕНИЙ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
390
65
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
PYTHON / МАТЕМАТИЧЕСКИЕ БИБЛИОТЕКИ / MATLAB / MATHCAD / MAPLE / MATH LIBRARY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Бахтин И. В.

В статье рассмотрена идея использования языка программирования Python для математических вычислений. Рассмотрены сильные и слабые стороны применения Python вместо MATLAB, Mathcad, Maple.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

USE OF PYTHON FOR MATHEMATICAL CALCULATIONS

The article discusses the idea of using the Python programming language for mathematical calculations. Considered the strengths and weaknesses of using Python instead of MATLAB, Mathcad, Maple.

Текст научной работы на тему «ИСПОЛЬЗОВАНИЕ PYTHON ДЛЯ МАТЕМАТИЧЕСКИХ ВЫЧИСЛЕНИЙ»

3 GitHub [Электронный ресурс]. - Режим доступа: https://ru.wikipedia.org/wiki/GitHub (дата обращения: 30.01.2019)

УДК 004.43

Бахтин И.В. студент 2 курса

09.03.02 Информационные системы и технологии

САФУ имени М.В. Ломоносова Россия, г. Архангельск ИСПОЛЬЗОВАНИЕ PYTHON ДЛЯ МАТЕМАТИЧЕСКИХ

ВЫЧИСЛЕНИЙ

Аннотация: В статье рассмотрена идея использования языка программирования Python для математических вычислений. Рассмотрены сильные и слабые стороны применения Python вместо MATLAB, Mathcad, Maple.

Ключевые слова: Python, Математические библиотеки, MATLAB, Mathcad, Maple.

Bakhtin I. V. the 2nd year student 09.03.02 Information systems and technologies NArFU named after M. V. Lomonosov Russia, Arkhangelsk

USE OF PYTHON FOR MATHEMATICAL CALCULATIONS

Abstract: The article discusses the idea of using the Python programming language for mathematical calculations. Considered the strengths and weaknesses of using Python instead of MATLAB, Mathcad, Maple.

Keywords: Python, Math library, MATLAB, Mathcad, Maple.

Python - мощный высокоуровневый язык программирования, который набрал большую популярность в 2018 году. Его используют в разных областях - включая веб-разработку, системные утилиты, машинное обучение, анализ данных благодаря открытому исходному коду. Данный язык программирования имеет достаточное количество библиотек, которые ускоряют и облегчают процесс разработки.

Если обратиться к рейтингу языков программирования по версии GitHub, то можно увидеть, что Python разместился на третьем месте в списке популярных языков программирования. Сайт Stackoverflow.com называет его «самым быстрорастущим языком программирования». Ознакомиться с ростом популярности ЯП можно на диаграмме:

А

Ä

Growth of major programming languages

Based on Stack Overflow question views in World Bank high-income countries

2012

2014

2016

2018

Time

Рисунок 1 - Тенденция роста Рассмотрим библиотеки, которые могут заменить такие популярные математические обеспечения как: Mattoad, MATLAB, Maple и другие.

Отличительной особенностью использования Python по сравнению с популярными программами является цена. Профессиональные программные обеспечения имеют довольно высокую стоимость. К примеру, подписка на базовую профессиональную лицензию «Mathcad Professional Individual» стоит примерно 40 тысяч рублей. Python же является бесплатным. Для его использования необходимо скачать python с официального сайта. Для более приятной работы, при желании, можно установить IDE (например, PyCharm) и подключить необходимые модули.

Для отображения каких-либо расчетов удобно использовать диаграммы и гистограммы. В основном, для визуализации информации используется библиотека «matplotlib». Синтаксис данной библиотеки похож на синтаксис MATLAB.

А

Ä

Рисунок 2 - Пример работы matplotlib Рассмотрим библиотеку «КитРу». Данная библиотека упрощает работу с векторами и матрицам. В ее функционале имеются методы для различных операций: расчет определителя, транспонирование, умножение и сложение матриц, также полезной функцией является решение линейных уравнений. Например, решим такую систему уравнений:

х± + 2х2 = 10,

23,

х2 + 2х3 — 13.

Для решения системы воспользуемся методом «Нпа^^оГуе» (таблица 1). Ответом будет вектор-строка [4, 3, 5]. Программный код представлен в таблице 1.

Таблица 1

решение системы_

import numpy as np left = np.array ([ [1, 2, 0] right = np.array ([10,23,13]) print(np.linalg.solve(left, right

[3, 2, 1], [0, 1, 2] ]

Рассмотрим еще одну библиотеку под названием «SciPy». Это библиотека для Python с открытым исходным кодом, предназначенная для научных и инженерных расчётов. Главным преимуществом данной

библиотеки являются возможности работы с интегралами, дифференциальными уравнениям, статистика, работа с генетическими алгоритмами.

Для демонстрации функционала библиотеки решим такой интеграл:

j x2dx

Ответ будет 21. Программный код представлен в таблице 2.

Таблица 2

_решение интеграла_

import numpy as np

from scipy.integrate import simps

def f1(x): return x**2

x = np.array([1, 3, 4])

y1=f1(x)

i1 = simps(y1,x) print(i1)

Таким образом, использование Python для математических вычислений имеет место быть. Главным преимуществом перед специализированным программным обеспечением является цена. Все библиотеки, которые были представлены в данной статье находятся в свободном доступе. Для использования необходимо использовать IDE, либо стандартный интерпретатор.

Использованные источники:

1 NumPy [Электронный ресурс]. - Режим доступа: https://pythonworld.ru/numpy (дата обращения: 03.02.2019)

2 matplotlib [Электронный ресурс]. - Режим доступа: https://matplotlib.org/ (дата обращения: 03.02.2019)

3 SciPy [Электронный ресурс]. - Режим доступа: https://docs.scipy.org/doc/scipy/reference/index.html (дата обращения: 30.01.2019)

А

i Надоели баннеры? Вы всегда можете отключить рекламу.