Для решения задачи воспользуемся геометрическим истолкованием определенного интеграла: интеграл
численно равен площади криволинейной трапеции, ограниченной кривой y(x), прямыми x=a, x=b и отрезком [a; b] оси Ox (рис.1):
Рис. 1
Формула Симпсона
с геометрической точки зрения означает, что график функции y(x) заменен другой кривой j(x), состоящей из дуг парабол: каждая сдвоенная дуга кривой y(x) заменяется параболой (рис.2):
Рис. 2
На рис.2: отрезок [a; b] разделен на четное число 2n, n=1,2, … равных отрезков точками x1, x2, …, x2n-1;
y0, y1, y2, …, y2n значения функции y(x) в точках x0, x1, x2, …, x2n;
точки x1, x3, …, x2n-1 - середины сдвоенных отрезков [x0, x2], [x2, x4], …,
[x2n-2, x2n];
j(x) - кривая, составленная из дуг парабол.
За приближенное значение интеграла I принимается площадь криволинейной трапеции, ограниченной кривой j(x), прямыми x=x0, x=x2n и отрезком [x0, x2n].
Таким образом, решение задачи о приближенном вычислении определенного интеграла сводится к программированию алгоритма вычисления площади криволинейной трапеции по формуле Симпсона.
|
|
Пример. Вычислить по формуле Симпсона интеграл .
Составим программу:
program Simpson;
USES crt;
VAR x,a,b,h,s:real;
n:integer;
FUNCTION Y(p:real):real;
begin
Y:=1/(1+p*p);
end;
BEGIN
clrscr;
write(' Отрезок интегрирования [a,b]? ');
read(a,b);
write(' На сколько частей разбиваем отрезок интегрирования? n=');
read(n);
h:=(b-a)/n;
s:=0; x:=a+h;
while x<b do
begin
s:=s+4*Y(x);
x:=x+h;
s:=s+2*Y(x);
x:=x+h;
end;
s:=h/3*(s+Y(a)-Y(b));
writeln;
writeln(' Интеграл равен I=',s);
END.
В программе: подынтегральная функция y(x) оформлена как функция Turbo Pascal (в разделе FUNCTION); n - число частичных отрезков (четное); h - длина каждого частичного отрезка; в переменную s записывается приближенное значение интеграла, вычисленное по формуле Симпсона.
Листинг программы с результатами расчетов представлен в приложении (см рис.П.15, рис.П.16).
Варианты заданий
1) ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
УЧЕБНО-МЕТОДИЧЕСКАЯ ЛИТЕРАТУРА