- •Лабораторная работа № 1
- •Порядок выполнения работы
- •Листинг программы
- •Тестирование пограммы
- •Лабораторная работа №2
- •Порядок выполнения работы
- •Варианты заданий
- •Листинг программы
- •Тестирование программы
- •Лабораторная работа № 4
- •Методические указания
- •Порядок выполнения работы
- •Листинг программы
- •Тестирование программы
Тестирование программы
Лабораторная работа № 4
Методы численного интегрирования.
Цель работы: изучение наиболее простых квадратурных формул: формулы прямоугольников, формулы трапеций, формулы Симпсона.
Методические указания
Численное интегрирование функции заключается в вычислении значения определенного интеграла на основании ряда значений подынтегральной функции.
Приближенное равенство
,
где qi – некоторые числа, xi – некоторые точки отрезка [a,b], называется квадратурной формулой.
На практике при приближенном вычислении определенно интеграла обычно делят заданный отрезок [a,b] на n равных частичных отрезков, на каждом частичном отрезке применяют какую-либо одну квадратурную формулу и суммируют полученные результаты. Построенная таким образом квадратурная формула на отрезке [a,b] называется обобщенной формулой.
Обобщенная формула Симпсона.
Формула имеет вид
,
где n=2m.
Порядок выполнения работы
1. Изучить квадратурную формулу, соответствующую Вашему варианту.
2. Разработать программу вычисления определенного интеграла по квадратурной формуле, соответствующей вашему варианту.
3. Вычислить определенный интеграл при n=2, 20, 100.
4. Сделать вывод о зависимости точности вычислений от количества частичных отрезков.
, использовать формулу Симпсона;
Листинг программы
Program Integr;
uses crt;
var n0:integer;
Function F(fx:real):real;
Begin
F:=exp(-4*(fx*fx*fx)+2*fx+1);
End;
procedure OCH(n:integer);
var sum1,sum2,a,b,h,int,x: real;
i,j,m: integer;
Begin
sum1:=0;
sum2:=0;
m:=n div 2;
a:=0;
b:=1;
h:=(b-a)/n;
For i:=1 to m do begin
sum1:=sum1+f(a+h*(2*i-1));
end;
For i:=1 to m-1 do begin
sum2:=sum2+f(a+h*(2*i));
end;
x:=(h/3)*(f(a)+f(a+h*n)+4*sum1+2*sum2);
Writeln ('**************************************************************');
Writeln ('Определенный интеграл при n =',n,' - ',x:7:6);
Writeln ('**************************************************************');
end;
Begin
clrscr;
Writeln ('**************************************************************');
Writeln ('Программа расчета определенного интерграла по формуле Симпсона');
Writeln (' Определенный интеграл расчитывается для 3 значений ');
Writeln (' частичных отрезков N = 2, 20, 100 ');
Writeln ('**************************************************************');
n0:=2;
OCH(n0);
n0:=20;
OCH(n0);
n0:=100;
OCH(n0);
writeln ('Результат вычисления определенного интеграла, проверен в MathCAD = 3.169');
End.
Тестирование программы