Формула Симпсона. Алгоритм, блок-схема. Геометрическая иллюстрация. Оценка погрешности.
b | n | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Найдем коэффициенты формулы ò f (x) = (b - a)å yi H i , | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
a | i=0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
где H i | = | 1 n | (-1)n-i t(t -1)...(t - n) | dt | , i=0,1,…,n при n=2. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
n ò | i! (n - i)! (t | - i) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
При i = 0 | ||||||||||||||||||||||||||||||||||||||||||||||
2 t(t -1)(t -2) | æ t 3 | 3t 2 | ö | æ | ö | |||||||||||||||||||||||||||||||||||||||||
H | = | dt | = | (t 2 | - 3t + 2)dt = | ç | - | + t ÷ | = | - 6 | + 4 | = | × | = | ||||||||||||||||||||||||||||||||
ò | ò | ç | ÷ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
× 2 × t | ç | ÷ | 4 3 6 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
è | ø | 4 è 3 | ø | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
При i = 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 (-1)t(t -1)(t - 2) | æ t 3 | ö | 1 æ 8 | ö | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
H | = | dt | = - | (t | - 2t)dt = - | ç | - t | ÷ | = - | - 4 | = | × | = | |||||||||||||||||||||||||||||||||||||||||||||||||
ò | ò | ç | ÷ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1×1× (t -1) | ç | ÷ | 2 3 3 | |||||||||||||||||||||||||||||||||||||||||||||
è | ø | 2 è 3 | ø | |||||||||||||||||||||||||||||||||||||||||||||
При i = 2 | ||||||||||||||||||||||||||||||||||||||||||||||||
2 t(t -1)(t -2) | æ t 3 | t 2 | ö | æ | ö | |||||||||||||||||||||||||||||||||||||||||||
H | = | dt | = | (t 2 | - t)dt = | ç | - | ÷ | = | - 2 | = | × | = | |||||||||||||||||||||||||||||||||||
ò | ò | ç | ÷ | |||||||||||||||||||||||||||||||||||||||||||||
1× 2 | × (t - 2) | ç | 3 2 | ÷ | 4 3 6 | |||||||||||||||||||||||||||||||||||||||||||
è | ø | 4 è 3 | ø | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
b | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
n | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Формула ò f (x) = (b - a)å yi H i на отрезке [x0, x2] примет вид: | ||||||||||||||||||||||||||||||||||||||
a | i=0 | |||||||||||||||||||||||||||||||||||||
x2 | n | æ 1 | ö | |||||||||||||||||||||||||||||||||||
ò f (x)dx »(x2- x0)×åH i yi =2hç | y0+ | y1 | + | y2 | ÷ | |||||||||||||||||||||||||||||||||
x0 | i=0 | è 6 | ø | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
x2 | 2h æ | ö | ||||||||
ò | f (x)dx » | + 2 y1 + | ||||||||
ç | y0 | y | ÷ | |||||||
x0 | è | ø | ||||||||
При n=2m применив формулу к каждой паре частичных отрезков [x2i-2, x2i] (i=1,2,…,m)
получим формулу Симпсона:
b | 2h æ y + y | ö | |||||||||||||||||||||||||||||||||||||||||
ò f (x)dx » | ç | 2m | + 2 y1 + y2 | + ... + 2 y2m-1 ÷ = | |||||||||||||||||||||||||||||||||||||||
a | è | ø | |||||||||||||||||||||||||||||||||||||||||
= | 2h æ y | - y | 2m | + (2 y | + y | ) + (2 y | + y | ) + ... + (2 y | + y | ö | |||||||||||||||||||||||||||||||||
ç | 2m-1 | ) ÷ | |||||||||||||||||||||||||||||||||||||||||
è | 2m | ø | |||||||||||||||||||||||||||||||||||||||||
b | b | ||||||||||||||||||||||||||||||||||||||||||
Рассмотрим погрешность: ò f (x)dx =òLn (x)dx + Rn (x) | |||||||||||||||||||||||||||||||||||||||||||
a | a | ||||||||||||||||||||||||||||||||||||||||||
На отрезке [a, b] R = | h4(b - a) | f IV (x ), x Î[a, b] | |||||||||||||||||||||||||||||||||||||||||
n | |||||||||||||||||||||||||||||||||||||||||||
или | Rn | £ M | b - a | h4 | , где M = max | f IV (x) | |||||||||||||||||||||||||||||||||||||
xÎ[a,b] | |||||||||||||||||||||||||||||||||||||||||||
При | вычислении | по | методу | повторного | счета можно использовать формулу: | ||||||||||||||||||||||||||||||||||||||
R2n | £ | I n | - I 2n | . Если при вычислении интеграла требуемая точность не достигнута (т.е. | |||||||||||||||||||||||||||||||||||||||
I n - I 2n>15e ),предусматривается повторный счет с шагом,уменьшенным вдвое.
Программа вычисления по формуле Симпсона методом повторного счета:
program lab4_2;
var n: integer;
S,a,b,e,h,x,I_n,I_n2,M: real;
function f(x: real):real;
begin {записать, функцию в виде f:=[математическое выражение]} f:=sin(x); end; begin
write('Введите концы отрезка интегрирования: '); readln(a,b);
write('Введите погрешность e: '); readln(e);
I_n:=0;
n:=4;
Repeat
h:=abs(b-a)/n;
s:=(f(a)-f(b))/2;
x:=a+h;
repeat s:=s+2*f(x)+f(x+h);
x:=x+2*h;
until x>=b;
I_n2:=2*h*s/3;
n:=n*2;
M:=abs(I_n - I_n2);
I_n:=I_n2;
Until M<=15*e;
writeln('Интеграл I=',I_n2:12:7);
readln;
end.
Решение обыкновенных дифференциальных уравнений. Численное интегрирование уравнений порядка выше, чем первый. Решение систем дифференциальных уравнений.
Дифференциальное уравнение 1-го порядка, разрешенное относительно производной, имеет вид:
y¢ = f (x, y)
Решением
Дифференциального
Уравнения
(1)
(1) называется функция
y(x),
подстановка которой в уравнение обращает его в тождество: y¢(x) = f (x, y(x)) .
График решения y=y(x) называется интегральной кривой.
Задача Коши для дифференциального уравнения(1)состоит в том,чтобы найтирешение дифференциального уравнения (1), удовлетворяющее начальному условию y(x0)=y0 (2).Пару чисел (x0,y0) называют начальными данными.
Решение задачи Коши называется частным решением дифференциальногоуравнения (1)при условии(2).
Геометрически задача Коши означает, что требуется найти интегральную кривую y=y(x),проходящую через заданную точку (x0,y0).
Теоремао существовании и единственности решения задачи Коши.
Пусть функция f(x,y) – правая часть уравнения y¢ = f (x, y) - непрерывна вместе со
своей частной производной по переменной y | ¶f (x, y) | в некоторой области D на | |
dy | |||
плоскости. Тогда при любых начальных данных (x0,y0)ÎD задача Коши имеет единственное решение y=y(x).
При выполнении условий теоремы через точку (x0,y0) на плоскости проходит единственная интегральная кривая.
В классическом анализе разработано немало приемов решения дифференциальных уравнений, однако при решении практических задач эти методы не дают результата. В этом случае прибегают к методам приближенного решения дифференциальных уравнений. В зависимости от формы представления решения выделяют
· аналитические методы(решение в виде аналитического выражения);
· графические методы(решение в виде графика);
· численные методы(решение в виде таблицы).
Численное решение задачи Коши состоит в том, чтобы получить искомое решение y(x) в виде таблицы его приближенных значений аргумента x на некотором отрезке [a, b]:
x0=a, x1, x2, …, xm=b | (3) |
Точки (3) называют узловыми, множество этих точек называют сеткой наотрезке [a, b].
Как правило, используют равномерную сетку с шагом h: h = b m-a xi=x0+ih (i=0, 1, …, m)
Приближенные значения численного решения задачи Коши в узловых точках обозначим yi.
yi » y(xi),где(i=0, 1, …, m)
Начальное условие выполняется точно: y0 = y(x0).
Величина погрешности численного решения задачи Коши на сетке отрезка [a, b] оценивается величиной d = max{ yi - y(xi )},
1£i£m
т.е. расстоянием между векторами приближенного решения (y0, y1, …,ym) и точного решения (y(x0), y(x1), …,y(xm)) на сетке по m-норме.
{ y’=f(x, y); (1)
y(x0)=y0;
Решить обыкновенное диф. ур. – найти функ y=y(x), которая при подстановке даёт тождество.
Существование и единственность решения ур. (1) обеспечиваются теоремой. Теорема Пикара: если функ. f определена и непрерывна в некоторой области G,
определяемой неравенствами:
|x–x0|≤a,|y–y0|≤b,
и удовлетворяет в этой области условию Липшица по y:
|f(x, y1)–f(x, y2)|≤M|y1–y2|,
то на некотором отрезке |x–x0|≤h, где h – положительное число, существует, и при том только одно, решение y=y(x) уравнения (1), удовлетворяющее начальному условию
y0=y(x0).
M=max|f’y(x, y)|–константа Липшица.
Для нормальных систем ОДУ используются те же методы,только в векторной форме:
y’=f(x, y),гдеy=(y1(x),...,yn(x)); f(x, y)=(f1,...,fn);
Уравнения более высокого порядка принято сводить к системе:
Пусть:
y(n)=F(x, y(n-1),..., y);
Обозначим:
z1=y;
z2=y’;
………
zn=y(n-1);
Вместо ур. запишем систему с переменной z:
|z’1=z2;
|z’2=z3;
{………
|z’n-1=zn;
|z’n=F(x, zn,…, z1);
нормальная сист. диф. ур.
}
M1(x1,y1) равен x2=x1+h |