Вычислительные методы
..pdf41
U = /i(*/ + h ,yu+ b k3,y2i+ b l3i ...,ущ+ bm 3\
U=/2(*/ + Ь у и+ h-k3iy2i+ h-l3) ...,yni+ hm 3\
=/*(*« + h ,yu+ h-k3iy2i+ h-l3i ...,yni+ hm 3).
Для методов Рунге-Кутта второго порядка применение соответст вующих формул для решения систем дифференциальных уравнений вы полняется аналогичным образом.
Задание
1.Составить алгоритм определения значения со, обеспечивающего наилучшую точность.
2.Разработать программу решения дифференциальных уравнений.
3.Решить дифференциальные уравнения, приведенные в табл. 6.1.
4.Определить близость полученного решения при заданном со к точ ному значению с помощью оценок
Pi - max | YTl - YMi |,
Здесь Yn - точное решение в точке х4; YMi - приближенное решение в точке xj; и - число точек дискретизации.
Результаты расчета оформить в виде таблицы.
Содержание отчета
1.Схема алгоритмов.
2.Листинг программы.
3.Протокол результатов решения.
4.Выводы по работе.
42
ЛАБОРАТОРНАЯ РАБОТА № 6
РЕШЕНИЕ СИСТЕМ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ МЕТОДАМИ РУНГЕ-КУТТА
Задание
1. Составить схемы алгоритмов решения системы дифференциаль ных уравнений методами Рунге-Кутта 2-го и 4-го порядков.
2.Разработать программу решения систем дифференциальных урав
нений.
3.Решить дифференциальные уравнения в табл. 6.2. Заданные урав
нения предварительно свести к системе уравнений первого порядка.
4. Определить близость полученного заданным методом решения к точному значению с помощью оценок
Р,= max \ YTi- Y Mi\
Здесь YTl - точное решение в точке х,; YMi - приближенное решение в точке х,; п - число точек дискретизации.
5. Результаты расчетов оформить в виде графика.
Содержание отчета
1.Схема алгоритмов.
2.Листинг программы.
3.Протокол результатов решения.
4.Выводы по работе.
43
Индивидуальные задания
Ва |
Дифференциальное урав |
||||
риант |
|
|
нение |
||
1 |
|
, |
2 у - х - 5 |
||
у = —--------- |
|||||
|
|
|
2 х - у + 4 |
||
2 |
у |
. |
2х - у +1 |
||
|
= ----------- |
||||
|
1 |
|
х - 2 у + 1 |
||
3 |
(хгу 2 -1)у |
+2ху2 =0 |
|||
4 |
, |
|
1 ( х 2 + у 2 У |
||
УУ+ХЯ 2 |
х |
||||
|
5х • у '+1 = еу
6У+2ху = 2х3у3
7у '+ ^ - + у 2 =0
х+1
8ху'+у = у 2 -1пх
9xy'-4y +x 2J y =0
10 |
0х2 + у 2 + у)<£с = ди/у |
||
11 |
( |
2 |
\ |
х Л = |
—— |
,у2 ф» |
|
|
U |
J |
|
12 |
у '- у • tgx + у 2 • COSX = 0 |
х •y'-cosy/x = у • cosy/д: - х
13
14
X - 1
15y-sinx + y'-cosx = l
16у = (1 + ^>2
дс(^+ 1)-д:г
17 |
2 * < b + y ' - f < l y = 0 |
|
|
У |
У |
Начальные ус |
Интервал |
ловия |
интегрир. |
МО) = 2 |
0-5 |
М О -1 |
1-5 |
М2) = 1 |
2-6 |
М2) = 1 |
2-6 |
М2) = 1 |
2-6 |
МО) = 2 |
0-5 |
МО) = 1 |
0-5 |
М2) = 1 |
2-6 |
у(1) = 0,648 |
1-6 |
у(п/6) = п/6 |
я /6 - 2 71 |
М1) = 1 |
1-4 |
мя/4) = 0,79 |
я/4 - 2я |
м о - о |
1-5 |
M V 2 ) = I |
V 2 -5 |
Мя/4) = 1 |
л/4 - 2л |
М1) = 1 |
1-5 |
М0) = -1 |
0-5 |
Таблица 6.1
Точное решение
Ос+ ^ - О М д т - у + З)
х2 -ду + у 2 + х - у = 1
х2у г +1 = 5.у
0,3x = l - V LT
X +у
(1-0,317*)** = 1
У 1 4 |
2 |
1 ^ (1+ х)(1 + 1п|1 + х|)
у(1 + 1пх-0,346х) = 1
У = ^ 2\5х\
у = x * tg (x + 7i/12)
^ = / ( 2 - 3 - 2)
у* (х + 1) = $есх
х-е“ '" = 1
З-у/у = 2л1х2 - |
1 + * 2 - 1 |
у = sinx + 0,414cosx |
|
1п|1 + у | ~ ^ |
= -1,307 |
44
Таблица 6.2
Индивидуальные задания
Вари |
Дифференциальное |
ант |
уравнение |
1 |
+ 2У+ 2у = 2е'*со&х |
2У + 4у = e3l-(1 Здг + 7)
3у" + 4у + 4у = 0
4у - 2 / + у = 5;с-У
5У - 5у + fry = У
6У +j/= 1 + У
7 |
У '-2 У |
= *•<?* |
8 |
у ' |
X2 |
|
||
|
/ ' = — + ~ 7 |
|
9 |
х |
у |
>У = (У)2-<У)3 |
10у4- уУ = 1
112(у')2= У (у -1 )
12У'=дУ + у + 1
13У " — У
14У"-4У'+5у-2у=2д:+3
15у - - у = 3(2- л 2)
16*ЗУ" + л у ' - у = 0
Начальные |
Интервал |
|
Точное решение |
|
условия |
интегрир. |
|
|
|
У0)=1 |
0-2 |
^(cosx+sinx+jt-sinx) |
||
У(0)=0 |
|
|
|
|
У0)=0 |
0-2 |
cos2x - sin2x + eix (x-1) |
||
У(0)=-4 |
|
|
|
|
У0)=1 |
0-4 |
(1 + x )e 2x |
|
|
У(0)—-1 |
|
|
|
|
Я0)=1 |
0-1 |
У + лг-У + 5 У л 3/6 |
||
У(0)=2 |
0-4 |
—e2* + 0,5e3jr + 0,5^ |
||
Я0)=0 |
||||
У(0Н> |
0-4 |
cos* + sinx + 1 + ^72 |
||
Я0)=2,5 |
||||
У(0)=1,5 |
0-2 |
(l+.x) |
£ + *3г76 |
|
У(0)=1 |
||||
У(0)=2 |
|
|
|
|
Я2)=0 |
2-5 |
2 |
2 Г |
16 |
У(2)=4 |
|
у = —x ^ x |
----- |
|
|
5 |
|
5 |
|
Я1)=1 |
1-5 |
y - x = 2\n\y\ |
||
У(П— 1 |
0-4 |
|
|
|
y(0)=V2 |
y = Vl + e2‘ |
|||
|
|
|||
У(0)=— |
|
|
|
|
2 |
1-6 |
_y = (x + 1)/дг |
||
Я1)=2 |
||||
У(1)=-1 |
0-4 |
|
|
|
Я0)=1 |
у = 2 е',/2 |
|
||
У(0)=0 |
|
|
|
|
Я0)=2 |
0-4 |
>>= 1 + co&x |
||
У(0)=0 |
|
|
|
|
У(0)=-1 |
0-5 |
3< = (2+х)У+е2'- д : - 4 |
||
У(0)— 1 |
||||
У(0)=4 |
|
|
|
|
У(0)=8 |
|
|
|
|
Я0)=1 |
0-5 |
|
|
|
У(0)=1 |
|
|
|
|
У(0)=1 |
1-6 |
|
|
|
Я1)=2 |
у =х(2 +ln|x| + ln2|x|) |
|||
У(1)=3 |
|
|
|
|
У(1)=3 |
|
|
|
|
45
ЛАБОРАТОРНАЯ РАБОТА № 7
РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ МЕТОДОМ МИЛНА
Цель работы: исследование алгоритмов и точностных характери стик многошаговых методов решения дифференциальных уравнений.
7.1. Многошаговые (многоточечные) методы
Недостатком метода Рунге-Кутта является то, что для получения од ного нового значения решения дифференциального уравнения правую часть уравнения приходится подсчитывать в нескольких точках. Если пра вая часть сложная, то расчеты трудоемки.
Рассмотрим многошаговые методы. Пусть требуется найти решение дифференциального уравнения / = fix, у) с начальными условиями
Я*о)=Уо.
Предположим, что каким-то образом уже найдены приближенные решенияуп.т,уп.т+и . . . , у пЛ, у п в точкаххп.т, хп.т+{, ..., х„.и хп.
Обозначим fixj, yj) =fi. Проинтегрируем обе части исходного уравне ния от хп.[ до хп+\:
*л+1 |
хп+\ |
|
Iy'dx= |
\f(x,y)dx, |
|
xn -i |
xn -i |
|
тогда |
*л+1 |
|
|
(7.1) |
|
У »+ 1 = У п - 1+ \f(x,y)dx. |
x n -i
Значение подынтегральной функции в (т + 1)-й точке определить по значениям xn.j,fn.j приj = 0,..., т. По вычисленным значениямf n.j построим интерполяционный полином Рт(х) степени т.
Подставляя Рт(х) вместоfix, у), получим *л+1
\Pm(x)dx.
xn -i
т, i, различные формы записи поли численного решения дифференциаль
46
7.2.Интерполяционная формула Адамса
хп+1
Пусть г= 0, тогда Ул+1 =у„ + } Рт(x)dx
х п
Полином запишем по второй интерполяционной формуле Ньютона.
а д = / ^ А Г л_. + ^ ) д2Л -2 + ....+ |
|
|
a = ? Z * n . |
|
|
4 |
h |
|
Подставляем этот многочлен в исходную формулу |
||
Уп+I ~У п + J [ / я + 9 4 / я -1 + • • • + |
-------------------- ;----------------- |
Д fn - m ] d x |
х п |
т '- |
|
6x = hdq при x =xn,q = 0, при x =xn+l, q = 1.
о |
т! |
= % + * [ / « + |
а 1Д/я -1 + а 2А Л - 2 + - О . |
где а,= /^<7 = ^,
О2
=\qiq+_1Х£ + 2) . _3 аз= /-
3!
|
|
|
|
251 |
|
|
|
|
о |
4! |
|
|
720 |
|
|
|
|
Таким образом, |
|
|
|
|
|
|
|
|
=ул+ л[л |
-Д |
У/ял , |
— Д"/„я |
о |
+ |
-gА'7„-Ч |
]. |
|
+ ^д2 |
/;-1. |
+ 1^2 |
д2^л |
-22 |
| д3Jnл -3з + 7|2§0 д4л -4 + |
Чаще всего используется формула при т - 3. При построении ин терполяционного многочлена используются четыре значения приближен ного решения уЯ9уп.\,уп.2,у„,3.
И формула при т = 3 имеет вид
Уя+1 = У я + Л[/„ + - Д/„.| + — Д / „ . 2 + - Д Л - 3 ]• |
(7.2) |
Запишем конечные разности через соответствующие значения функ
ции:
47
А/п-l fn fn-\>
Д2/ л- 2 = / я - 2 / л. , + / л-2,
Л3/ л- з = / л - 3 / л_ ,+ 3 /л_2 - / п_3.
Тогда
Уж =У„+ (55% - 59 /ы + 37/л.2 - 9/„.з). |
(7.3) |
Погрешность формулы Адамса
Для получения формулы был использован полином 3-й степени.
х п + \ |
1 |
|Я3М |
= h\R3(xn +hq)dq. |
*п |
О |
Величина Л3(дсл + hq) как погрешность второй интерполяционной формулы Ньютона равна Л4. Следовательно, погрешность формулы Адам са на одном шаге есть величина порядка А5.
7.3.Метод Милна (метод прогноза н коррекции)
Пусть i = 3, в качестве интерполяционного полинома выберем поли ном, построенный по первой формуле Ньютона степени т = 3.
Тогда
•*n-3
X — X |
|
Произведем переход к параметру q = — —11. |
|
Уж =у„.з + л )[/л_з+?Д/л-з + £^ Д 2/ л-з + ч- ~ |
3,(g 2-Д3/„-з№ ; |
20 |
8 |
Уж =ул-з + Л[4/„_з + 8ДГл_з + у Д2/ Л-3 + j Д3/ л-з]-
Заменим конечные разности через значения функции, тогда
Уж=Ул.з + у ( 2 /л. 2 - / л_1+ 2 /л).
48
Это первая формула Милна (формула прогноза). Для вывода второй формулы Милна возьмем / = 1, а полином построим так же по первой ин терполяционной формуле Ньютона.
Тогда
хп+1 |
|
? (? -!) |
д2 |
д {д -\)(д -2 ) д3 |
%+1 = % -!+ ! [fn-l+Wn-l + |
2! |
AV.-1 + |
3! |
|
хп~1 |
|
|
||
|
|
|
|
|
Переходя к параметру ^ и производя замену конечных разностей, |
||||
получим вторую формулу Милна (формула коррекции) |
||||
|
Уп+1= Уп-1 + ~(fn+l |
4/й +y^-l). |
Метод Милна применяется следующим образом:
1. Вычисляем первое приближение ул+1по первой формуле Милна:
Уп+1 =У«-3 + у (2Л-2 -/п-1 + 2/»)-
2.По значению ул+1 вычисляем
/n+l= /(*„ +!.Л-1 )'
3.Находим второе приближение уп+\ по второй формуле Милна
н
у „+1 =Уп-1+ j ( A + i + 4Л + Л - 1 ) -
Погрешность на одном шаге формулы Милна пропорциональна h5
Оценка погрешности
В первой и второй формулах Милна ограничиваются разностями третьего порядка.
Обозначим s ^ j, e^j - погрешности первой и второй формул Мил
на.
- h J—- —- (^4~-2)(— 3) A*f„_3dq = ^Л Д 4/ л-з .
е ( 2 ) |
|
|
|
Б/»+1 |
О |
4! |
90 |
|
Считая четвертые разности практически постоянными на отрезке длины 4А, получим
( 2)
-28 ел+1
|
49 |
Точное решение |
|
У<= Уп+\ + |
= Л+1 + en+i. |
отсюда |
|
Р(2) _ I Уп+l Уп+1 1 |
|
Л+1 “ |
29 |
Примечание: y0t у и Уг, Уъ - определяют, используя начальное условие и какой-либо одношаговый метод.
Задания
1.Составить алгоритм решения дифференциальных уравнений ме тодом Милна.
2.Исследовать, как зависит точность решения дифференциальных уравнений от того, каким одношаговым методом найдены начальные ре шения; как быстро достигается заданная точность.
3.Решить дифференциальное уравнение из табл. 6.1 или 6.2 по зада нию преподавателя.
Содержание отчета
1.Схемы алгоритмов.
2.Листинг программы.
3.Протоколы результатов решения.
4.Выводы по работе.
Контрольные работы
1. Почему предпочтение обычно отдается численным методам реше ния дифференциальных уравнений по сравнению с приближенными ана литическими методами?
2.Почему при использовании метода Эйлера происходит наложение ошибок?
3.В чем сущность модификации метода Эйлера?
4.Преимущества и недостатки многошаговых методов.
5.Способы оценки погрешности в многошаговых методах.
6.Как зависит точность решения дифференциального уравнения многошаговыми методами от начального приближения?
50
СПИСОК ЛИТЕРАТУРЫ
1. Численные методы: Учеб. пос. для вузов // Н.С. Бахвалов и др. - М.; СПб.: Физматиз, 2000.
2. Бахвалов Н.С. Численные методы в задачах и упражнениях: Учеб, пос. для вузов. - М.: Высшая школа, 2000.
3. Мак-Кракен Д. Численные методы и программирование на Фор тране/Д. Мак-Кракен, У. Дорн.-М.: Мир, 1977.
4.Копченова Н.В. Вычислительная математика в примерах и задачах
/Н.В. Копченова, И.А. Марон.- М.: Наука, 1972.
5.Амосов А.А. Вычислительные методы для инженеров. - М.: Выс шая школа, 1994.
6.Берман Г.Н. Сборник задач по курсу математического анализа. - М.: Наука, 1985.