Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Метод Мілна-Сімпсона




Лістинг 1.

function [x,y]=adams(y0,a,b,n)

% adams – метод Адамса-Бешфорса-Маултона

% Права частина диференціального рівняння - в функції f(x)

% >> [x,y]=adams(y0,a,b,n)

% Вхідні аргументи:

% y0 – початкове значення;

% a, b – межі інтервалу;

% n – кількість підінтервалів

% Вихідні аргументи:

% x – вектор вузлів, в яких знайдений розв’язок;

% y – вектор зі значеннями функції-розв’язку у вузлах х

if a>=b

error('Неправильні межі (a<b)');

end

h=(b-a)/n;

[x,y]=runge4(y0,a,a+3*h,3);

for i=4:n

p=y(i)+h/24*(-9*f(x(i-3),y(i-3))+37*f(x(i-2),y(i-2))-59*f(x(i-1),y(i-1))+55*f(x(i),y(i)));

x(i+1)=x(i)+h;

y(i+1)=y(i)+h/24*(f(x(i-2),y(i-2))-5*f(x(i-1),y(i-1))+19*f(x(i),y(i))+9*f(x(i+1),p));

end

Інший розповсюджений метод прогнозу-корекції – метод Мілна-Сімпсона. Його прогноз базується на інтегруванні функції f (x, y (x)) на інтервалі [ xi -3, xi +1]

(10)

Прогноз використовує наближення поліномом Лагранжа для f (x, y (x)), побудований по точках (xi -3, fi -3), (xi -2, fi -2), (xi -1, fi -1) та (xi, fi). Інтегруємо його на інтервалі [ xi -3, xi +1] і отримуємо прогноз Мілна:

(11)

Коректор отримуємо аналогічно. На цьому етапі можна використовувати значення pi +1. Будуємо наступний поліном Лагранжа для функції f (x, y (x)) по точках (xi -1, yi- 1), (xi, yi) і новій точці (xi +1, fi +1) = (xi +1, f (xi +1, pi +1)). Інтегруємо поліном на відрізку [ xi -1, xi +1] і в результаті отримаємо відому формулу Сімпсона:

(12)

Оцінка помилки та корекція. Залишковий член формули чисельного інтегрування використовується для отримання як прогнозу, так і коректора порядку О(h 5). ЛПВ для формул (11) та (12) дорівнює

(ЛПВ для прогнозу) (13)
(ЛПВ для коректора) (14)

Припустимо, що крок h настільки малий, що y (5)(x) майже стала на інтервалі . Тоді з формул (13) і (14) можна виключити члени, які містять похідну п’ятого порядку, і в результаті отримати формулу:

(15)

Формула (15) дає оцінку прогнозу, яка базується на обчисленні значень і та не використовує . Її можна використовувати для покращення значень прогнозу. Якщо припустити, що різниця між значеннями прогнозу і корекції на кожному кроці змінюється повільно, то можна підставити і замість і в (15) та отримати наступний управляючий параметр:

. (16)

Його значення використовується замість на кроці корекції, і формула (12) приймає вигляд:

(17)

Таким чином, покращений модифікований метод Мілна-Сімпсона має вигляд:

(прогноз) (управляючий параметр) (коректор) (18)



Поделиться с друзьями:


Дата добавления: 2015-05-23; Просмотров: 674; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.