
5.3. Метод трапеций
Рассмотрим геометрическую интерпретацию метода трапеций (рис. 5.2).
Разобьем отрезок
интегрирования [a,
b]
на n
равных частей длиной
.
В точках разбиения x0=a,
x1=a+h,
..., xn=b
проведем ординаты y0,
y1,
..., yn
до пересечения с кривой y=f(x).
Концы ординат соединим прямолинейными
отрезками. Тогда площадь криволинейной
трапеции aABb
приближенно можно считать равной сумме
площадей трапеций и определить как
Таким образом, приближенное значение определенного интеграла по методу трапеций находится следующим образом:
5.4. Метод Симпсона
В этом методе для аппроксимации подынтегральной функции f(x) используется не линейная функция, а полином второй степени (парабола),которая проводится через три последовательные ординаты (рис. 5.3).
Для данного рисунка
x0=0,
x1=h,
x2=2h;
тогда
Площадь криволинейной трапеции, ограниченная сверху параболой, равна:
Подставив значения коэффициентов в это выражение и находя интеграл по формуле Ньютона-Лейбница, получим:
Аналогично проводится парабола через точки 2, 3 ,4 и находится площадь, ограниченная сверху этой параболой, т.е.
и так далее.
Таким образом, приближенное значение искомого интеграла будет равно сумме найденных площадей:
Значения функции f(x) в нечетных точках разбиения входят в формулу Симпсона с коэффициентом четыре, в четных точках - с коэффициентом два, а в двух граничных точках x0=a и xn=b - с коэффициентом 1. При этом число разбиений n отрезка интегрирования должно быть обязательно четным.
Пример.
Найти значение
рассмотренными
численными методами, разбивая отрезок
интегрирования на n=50
частей. Для сравнительной оценки
получаемых результатов предусмотреть
вычисление интеграла по формуле
Ньютона-Лейбница. Первообразная
подынтегральной функции
.
(* * * * * * * * * * * * * * * ** * * * * * * * * * * *)
(* Численное интегрирование функции *)
(* * * * * * * * * * * * * * * ** * * * * * * * * * * *)
Uses Crt;
Const n=50;
Var a, b, h: real;
Function F(z: real): real; {Подынтегральная функция}
Begin
F:=(exp(z)*(1+sin(z)))/(1+cos(z))
End;
Function P(z: real): real; {Первообразная функция}
Begin
P:=exp(z)*sin(z/2)/cos(z/2)
End;
Function Pram(a, b: real): real;
{Вычисление методом прямоугольников}
Var s, x: real;
Begin
s:=0; x:=a+h/2;
Repeat
s:=s+F(x);
x:=x+h;
Until x>b-h;
Pram:=s*h
End;
Function Trap(a, b: real): real;
{Вычисление методом трапеций}
Var s, x: real;
Begin
s:=F(a)+F(b); x:=a+h;
Repeat
s:=s+2*F(x);
x:=x+h;
Until x>b-h;
Trap:=s*h/2
End;
Function Simpson(a, b: real): real;
{Вычисление методом Симпсона}
Var s, x: real; c: integer;
Begin
s:=F(a)+F(b); x:=a+h; c:=1;
Repeat
s:=s+(3+c)*F(x);
x:=x+h;
c:=-c;
Until x>b-h;
Simpson:=s*h/3
End;
Function Newton(a, b: real): real;
{Вычисление по формуле Ньютона-Лейбница}
Begin
Newton:=P(b)-P(a)
End;
Begin {Основная программа}
ClrScr;
Write('Нижний предел интегрирования a='); Readln(a);
Write('Верхний предел интегрирования b='); Readln(b);
h:=(b-a)/n;
Writeln('Методом прямоугольников.......',Pram(a, b):4:6);
Writeln('Методом трапеций..............',Trap(a, b):4:6);
Writeln('Методом Симпсона..............',Simpson(a, b):4:6);
Writeln('По формуле Ньютона-Лейбница...',Newton(a, b):4:6);
Repeat until keypressed;
End.
Выводы
Задача численного интегрирования функции возникает в случаях, когда первообразная функция не может быть найдена с помощью элементарных средств, а также если вид подынтегральной функции неизвестен (функция задана таблично).
Обычный прием численного вычисления определенного интеграла состоит в замене данной функции f(x) на отрезке [a, b] аппроксимирующей функцией (x) более простого вида и нахождении интеграла от этой функции. Простейшими методами, реализующими такой подход, являются методы прямоугольников, трапеций и Симпсона.
При вычислении определенного интеграла численными методами возникают ошибки метода и округления. Для оценки методической погрешности используется разложение функции f(x) в ряд Тейлора в окрестности точек xi и xi+1. Установлено, что формула трапеций соответствует ряду Тейлора с точностью до членов первого порядка, а формула Симпсона - с точностью до членов третьего порядка включительно. Следовательно, метод трапеций дает точное значение интеграла, если подынтегральная функция линейна, а метод парабол - в случае, если f(x) представляет собой многочлен не выше третьей степени.
Интегрирование функций, заданных таблично, методом Симпсона возможно только в случаях равноотстоящих узлов при четном n. Для интегрирования функций с неравноотстоящими узлами можно использовать метод трапеций.