Содержание

§ 7. Численное интегрирование

Численное интегрирование — это совокупность методов, которые позволяют вычислить определенный интеграл на компьютере. Иногда формулы, используемые в численном интегрировании, называют квадратурами.

Для того чтобы разобраться, как работают методы численного интегрирования, рассмотрим интеграл Римана

abf(x)dx=limmaxΔxi0i=1nf(xi)Δxi.\int\limits_a^b f(x) \, dx = \underset{\text{max}\,\Delta x_i \rightarrow 0}{\lim} \sum\limits_{i=1}^n f(x_i^*) \Delta x_i .

Здесь xix_i^* — произвольная точка на промежутке Δxi\Delta x_i, а выражение, предел которого мы вычисляем, называется суммой Римана. Методы численного интегрирования строятся на основе суммы Римана, то есть на основе конечной суммы и промежутков конечной длины, а подинтегральную функцию часто заменяют аппроксимацией с помощью полиномов.

Метод прямоугольников

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

abf(x)dxi=1nf(xixi12)(xixi1).\int\limits_a^b f(x) \, dx \approx \sum\limits_{i=1}^n f(\frac{x_i-x_{i-1}}{2}) (x_i-x_{i-1}) .

Выражение под знаком суммы является площадью прямоугольника. Размер каждого промежутка может быть разным.

Метод трапеций

Этот метод отличается от предыдущего тем, что на каждом промежутке функция аппроксимируется не одной точкой, а отрезком, соединяющим концы промежутка. Тогда выражение под знаком суммы является площадью трапеции. Математически это записывается как

abf(x)dxi=1nf(xi)+f(xi1)2(xixi1).\int\limits_a^b f(x) \, dx \approx \sum\limits_{i=1}^n \frac{f(x_i)+f(x_{i-1})}{2} (x_i-x_{i-1}) .

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

Формулы Ньютона—Котеса

В общем случае функция аппроксимируется на каждом промежутке полиномом степени nn. Полином записывается в форме Лагранжа, а получившиеся формулы интегрирования называются формулами Ньютона—Котеса. В случае n=2n=2 получается

abf(x)dxi=1nxixi16(f(xi1)+4f(xi1+xi2)+f(xi)).\int\limits_a^b f(x) \, dx \approx \sum\limits_{i=1}^n \frac{x_i-x_{i-1}}{6} \left( f(x_{i-1}) + 4 f(\frac{x_{i-1}+x_i}{2}) + f(x_i)\right) .

В этом случае на каждом промежутке функция аппроксимируется полиномом второй степени (параболой), используя крайние точки и точку посередине. В случае n=3n=3 получается

abf(x)dxi=1n38Δxi(f(xi1)+3f(xi1+Δxi)+3f(xi1+2Δxi)+f(xi)),Δxi=xixi13.\int\limits_a^b f(x) \, dx \approx \sum\limits_{i=1}^n \frac{3}{8} \Delta x_i \left( f(x_{i-1}) + 3 f(x_{i-1} + \Delta x_i) + 3 f(x_{i-1} + 2\Delta x_i) + f(x_i)\right),\\ \Delta x_i = \frac{x_i-x_{i-1}}{3}.

Оба случая именуются методом Симпсона и отличаются лишь степенью полинома. Эти формулы получаются путем подстановки полинома Лагранжа нужной степени в качестве подинтегральной функции и упрощения получившегося выражения с помощью правил интегрирования.

Квадратуры Гаусса

Квадратурой называется формула вычисления интеграла. Идея квадратур Гаусса состоит в том, чтобы найти такие абсциссы, взвешенная сумма значений функции в которых даст точное значение интеграла при степени полинома не превышающей 2n12n-1:

abW(x)f(x)dx=i=1nwif(xi).\int\limits_{a}^{b}W(x)f(x)\,dx = \sum\limits_{i=1}^{n} w_i f(x_i).

Здесь W(x)W(x) — весовая функция. Гаусс нашел такие абсциссы для функции, которую можно представить в виде полинома:

11f(x)dx=i=1nwif(xi),wi=2(1xi2)(Pn(xi))2.\int\limits_{-1}^{1}f(x)\,dx = \sum\limits_{i=1}^{n} w_i f(x_i), \qquad w_i = \frac{2}{\left(1-x_i^2\right)\left(P_n'(x_i)\right)^2}.

Здесь a=1a=-1, b=1b=1, W(x)=1W(x)=1, wiw_i — веса, xix_i являются корнями полинома PnP_n, а PnP_n — полином Лежандра степени nn.

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

Подинтегральная функция может сильно осциллировать, из-за чего аппроксимация ее полиномом даст большую погрешность. В таких случаях используют квадратуры Гаусса с отличной от единицы весовой функцией (не путайте ее с весами из правой части). В таком случае формулы для весов из правой части будут отличаться, а также будет отличаться вид полинома и пределы интегрирования. Все это проще всего найти в справочнике.

🌊🌊🌊

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

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

Задания

Полиномы1 балл

Реализуйте вещественнозначную функцию Оуэна с помощью формул Ньютона—Котеса для полиномов третьей степени по десяти точкам. Функция описана в следующем задании.

Квадратуры2 балла

Реализуйте вещественнозначную функцию Оуэна с помощью квадратуры Гаусса—Лежандра по десяти точкам. Веса можно найти в интернете. Функция имеет следующий вид.

T(h,a)=12π0aexp(12h2(1+x2))1+x2dx.T(h,a) = \frac{1}{2\pi} \int\limits_{0}^{a} \frac{\exp\left(-\frac{1}{2}h^2(1+x^2)\right)}{1 + x^2} \, dx.

Здесь aa — параметр. Не забудьте про пределы интегрирования. Проверить себя можно с помощью Wolfram Alpha.

Уравнение теплопроводности3 балла

Уравнение теплопроводности имеет аналитическое решение

T(x,t)=12παtT(x,0)exp((xx)22αt)dx,T(x,t) = \frac{1}{2\sqrt{\pi\alpha t}} \int\limits_{-\infty}^{\infty} T(x',0) \exp\left(-\frac{(x-x')^2}{2\alpha t}\right) dx',

где T(x,0)T(x,0) — начальное распределение температуры, а α\alpha — коэффициент теплопроводности. Вычислите этот интеграл методом трапеций для случая стержня фиксированной длины, коэффициента теплопроводности отличного от нуля и нормального начального распределения температуры T(x,0)=exp(x2).T(x,0) = \exp\left(-x^2\right). Вычисления продолжайте до тех пор, пока температура не станет примерно одинаковой в каждой точке стержня.

Видео

  • 00:00 Введение.
  • 01:03 Метод прямоугольников.
  • 06:55 Метод трапеций.
  • 09:05 Формулы Ньютона—Котеса.
  • 13:25 Квадратуры Гаусса.
  • 21:50 Задания.
Запись лекции 31.03.2022.

Доска

numerical-integration thumbnail.
Запись доски 31.03.2022.