Вычисление определенных интегралов по формуле Ньютона-Лейбница не всегда возможно. Многие подынтегральные функции не имеют первообразных в виде элементарных функций, поэтому мы во многих случаях не можем найти точное значение определенного интеграла по формуле Ньютона-Лейбница. С другой стороны, точное значение не всегда и нужно. На практике нам часто достаточно знать приближенное значение определенного интеграла с некоторой заданной степенью точности (например, с точностью до одной тысячной). В этих случаях нам на помощь приходят методы численного интегрирования, такие как метод прямоугольников, метод трапеций, метод Симпсона (парабол) и т.п.
В этой статье подробно разберем метод прямоугольников для приближенного вычисления определенного интеграла.
Суть метода прямоугольников заключается в том, что в качестве приближенного значения определенного интеграла берут интегральную сумму (далее мы покажем, какую именно интегральную сумму берут в методе прямоугольников).
Пример на паскале:
uses crt;
var i,n:integer;
a,b,h,x,e,s1,s:real;
bool:Boolean;
function f(x:real):real;
begin
f:=sqr((exp(x)-exp(-x))/2);
end;
begin
clrscr;
write('a='); readln(a);
write('b='); readln(b);
write('n='); readln(n);
repeat
write('Input e : '); readln(e);
bool:=(e>0.00009)and(e<1);
if not bool then writeln('e=[0.0001 .. 0.9] ese raz.');
until bool;
s:=0; вначале лучше обнулить - для s1
repeat
s1:=s;
h:=(b-a)/n;
s:=0; x:=a;
for i:=0 to n-1 do вычисляем значение функции на отрезке от х0 до хn-1
begin
s:=s+f(x); не в данном, а в общем случае надо s+abs(f(x))
x:=x+h;
end;
s:=h*s;
n:=n*2;
until abs(s1-s)<e;
writeln('I= ',s:2:5, 'N= ',n/2);
readln;
end.
Сначала остановимся на сути этого метода численного интегрирования, выведем формулу прямоугольников и получим формулу для оценки абсолютной погрешности метода. Далее по такой же схеме рассмотрим модификации метода прямоугольников, такие как метод правых прямоугольников и метод левых прямоугольников. В заключении рассмотрим подробное решение характерных примеров и задач с необходимыми пояснениями.