Python Вычисление интегралов правильным способом

Python Вычисление интегралов

Улучшите свою интегральную игру с помощью Python

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

Фото от Jeswin Thomas на Unsplash

В этом коротком посте я хочу продемонстрировать 3 способа вычисления интеграла одномерной функции в Python. Мы разделим подходы на 2 случая:

  • Первый случай: вычисление интеграла от выборочной функции
  • Второй случай: вычисление интеграла от общей функции

В первом случае функция, которую мы хотим интегрировать, уже была выборочно отсэмплирована до некоторых точек, и у нас нет доступа к подлежащей “истинной” функции. Например, мы не знаем “формулу” этой функции и не можем выбирать другие точки этой функции. Другими словами, у нас есть только массивы значений x и соответствующих значений y.

Во втором случае мы предполагаем, что у нас есть объект функции, к которому мы можем передать выборочную точку, и он вернет значение этой функции в этой точке. Это идеальный подход, потому что у нас есть доступ ко всей информации о функции.

Обратите внимание, что мы всегда можем использовать выборочный подход: если у нас все еще есть доступ к функции, мы можем выбрать точки выборки и использовать их для выборки функции и использовать первый подход. Но, как мы увидим, выбор этих точек выборки – это именно то, что важно для вычисления чистых интегралов.

Определение интеграла

В этом первом посте мы сосредоточимся на функции одной переменной, которая возвращает одно значение. Интеграл, который мы хотим вычислить, является стандартным определением:

Теперь нашей целью является вычисление I с максимальной точностью – в пределах нашего знания о функции “f”. В качестве примера мы попробуем вычислить следующий интеграл:

Используя простую математику, вы можете показать, что значение этого интеграла равно

В этом посте мы увидим различные подходы к вычислению интеграла и увидим, насколько близки мы к истинному значению.

Первый подход: Вычисление интеграла выборочных функций

Предположим, что мы получаем данные от выборочной функции в виде массива X и соответствующих значений в массиве Y…