
Choliy.NumericaMethods.2011Dec01
.pdfСуть узагальнення полягає в тому, що на iнтервалi [xn, xn+1] вибирають q промiжних точок (не обов’язково на краях, але i всерединi), в яких знаходять правi частини, якi далi вводять у лiнiйну комбiнацiю.
Знайдемо оцiнку похибки, що дає метод. Для цього введемо нев’язку, функцiю, що залежить вiд довжини кроку:
ϕ(h) = y(xn + h) − y(xn+1),
перший доданок - справжнє значення у точцi xn + h, другий - отримана нами апроксимацiя. Очевидно, що ϕ(0) = 0. Розкладемо ϕ(h) у ряд по h в околицi точки h = 0:
s+1 |
ϕ(ii)!(h) h=0 hi. |
|
ϕ(h) = i=0 |
||
X |
|
|
|
|
|
|
|
|
Вважатимемо, що квадратурна формула має порядок точностi s + 1, що дозволить нам опустити усi доданки порядку > s + 1 i вiдокремивши останнiй доданок (порядку s + 1), записати:
s |
|
ϕ(i) h |
) h=0 hi + |
ϕ(s+1)(h) |
h=0 hs+1. |
|
|||||
ϕ(h) = i=0 |
|
i!( |
(s + 1)! |
|
|||||||
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Оскiльки усi доданки з i |
≤ |
s нульовi, |
то як для |
квадратурної |
формули по- |
||||||
рядку s + 1: |
|
|
|
|
|
h=0 hs+1. |
|
|
|||
|
|
|
ϕ(s+1)(h) |
|
|
||||||
|
ϕ(h) = |
|
|
||||||||
|
|
(s + 1)! |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
Значення s + 1 визначає порядок |
точностi |
|
методу. Останнiй факт i викори- |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
стовується при визначеннi похибки квадратурної формули. Покажемо це на прикладах.
Отримаємо формули для методу Рунге-Кутти при q = 1:
y(xn+1) = y(xn) + p1K1(h) . K1 = hf(xn, yn)
Запишемо вираз для точностi:
ϕ(h) = y(xn + h) − y(xn+1) = y(xn + h) − y(xn) − p1hf(xn, yn).
З очевиднiстю ϕ(0) = 0.
Перша похiдна:
ϕ0(h) = y0(xn + h) − p1f(xn, yn),
ϕ0(0) = f(xn, yn) − p1f(xn, yn) = (1 − p1)f(xn, yn).
121
Перша похiдна може бути рiвною нулю лише при p1 = 1.
Друга похiдна:
ϕ00(h) = y00(xn + h) 6= 0.
Оскiльки друга похiдна 6= 0, то це означає, що s = 1. Тобто, при q = 1 є можливiсть прийняти s = 1, що вiдповiдає похибцi h2. Маємо метод другого порядку, вираз для якого спiвпадає з методом Ейлера:
y(xn+1) = y(xn) + hf(xn, yn).
Отримаємо формули для методу Рунге-Кутти при q = 2:
y(xn+1) = |
y(xn) + p1K1(h) + p2K2(h) = |
= |
y(xn) + p1hf(xn, yn) + p2hf(xn + hα2, yn + β21hf(xn, yn)). |
Вираз для точностi:
ϕ(h) = y(xn + h) − y(xn) − p1hf(xn, yn) − p2hf(xn + hα2, yn + β21hf(xn, yn)),
i знову ϕ(0) = 0. Шукаємо похiднi:
ϕ0(h) = y0(xn + h) − p1f(xn, yn) − p2f(xn + hα2, yn + β21hf(xn, yn))−
− p2h |
∂xα2 + |
∂y β21f(xn, yn) . |
|
|
|
∂f |
∂f |
ϕ0(0) = f(xn, yn) − p1f(xn, yn) − p2hf(xn, yn) = (1 − p1 − p2)f(xn, yn).
Друга похiдна:
ϕ00(h) = y00(xn + h) |
− |
2p2 |
∂f |
α |
|
+ |
∂f |
|
|
β |
|
|
|
|
f(x |
, yn) |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||
|
|
|
|
2 |
f |
|
|
2 |
∂x |
2 |
|
|
∂y |
21 |
|
|
n |
|
|
2 − |
||||||||||||||||
|
|
|
|
∂ |
|
|
|
|
∂ f |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
∂ f |
|||||||||
− |
p2h |
|
|
α22 + |
|
|
2α2β21f(xn, yn) + |
|
|
|
β212 f2(xn, yn) . |
|||||||||||||||||||||||||
∂x2 |
∂x∂y |
∂y2 |
||||||||||||||||||||||||||||||||||
Очевидно, шо: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
∂f |
|
|
|
|
∂f |
|
|
|
|
|
|
||||||||
|
y00(xn) = (f(xn, yn))0 = |
|
+ |
|
|
|
|
f(xn, yn) . |
||||||||||||||||||||||||||||
|
∂x |
∂y |
||||||||||||||||||||||||||||||||||
Тому |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
∂f |
|
|
∂f |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
∂f |
|
|
|
|
∂f |
|||||||||||
ϕ00(0) = |
|
|
|
+ |
|
|
f(xn, yn) − 2p2 |
|
|
|
|
|
α2 |
+ |
|
|
β21f(xn, yn) = |
|||||||||||||||||||
∂x |
∂y |
∂x |
|
∂y |
||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
∂f |
|
|
|
|
|
|
|
|
|
|
|
|
∂f |
|
|
|
|
|
|
|
|
|||||||
= (1 − 2p2α2) |
|
|
+ (1 − 2p2β21) |
|
|
f(xn, yn). |
||||||||||||||||||||||||||||||
∂x |
|
∂y |
122

I аналогiчно, третя похiдна: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
ϕ000(0) = |
(1 |
− |
3p |
α2) |
∂2f |
+ 2(1 |
− |
3p |
α |
β |
|
|
)f(x |
|
, y |
) |
∂2f |
+ |
|||||||||||
|
|
|
|
∂x∂y |
|||||||||||||||||||||||||
|
|
|
|
|
2 |
2 |
|
|
∂x2 |
|
|
|
2 |
|
2 |
|
21 |
n |
n |
|
|
||||||||
+ |
(1 |
− |
3p |
β2 |
|
)f2(x |
, y |
) |
∂2f |
+ |
|
∂f |
y000(x |
). |
|
|
|
||||||||||||
|
∂y2 |
|
|
|
|
||||||||||||||||||||||||
|
|
|
|
|
2 |
21 |
|
|
|
n |
n |
|
|
|
|
∂y |
n |
|
|
|
|
|
|||||||
Отже: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ϕ(0) |
= 0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
ϕ0 |
(0) |
= 0 |
|
1 |
− p1 − p2 = 0 |
|
1 − 2p2β21 |
|
|
|
|
||||||||||||||||||
ϕ00 |
(0) |
= 0 |
|
1 |
− 2p2α2 = 0, |
|
|
= 0, |
|
третю похiдну обнулити не вдасться. Виокремимо цi рiвняння у систему:
|
|
1 |
= |
2p2 |
α2 . |
(13.3) |
|
|
1 |
= p1 + p2 |
|
||
|
1 |
= |
2p2 |
β21 |
|
|
Система (13.3) має три |
рiвняння i чотири невiдомих. Це дає нам деяку свободу |
|||||
|
|
|
|
|
|
при її розв’язуваннi. Наприклад: якщо покласти p1 = p2 = 1/2, отримаємо
α2 = 1, β21 = 1, i
h
yn+1 = yn + 2 (f(xn, yn) + f(xn + h, yn + hf(xn, yn))),
а якщо покласти p1 = 0, p1 = 1 - α2 = 1/2, β21 = 1/2, i
yn+1 = yn + hf(xn + h/2, yn + h/2f(xn, yn)).
Найвiдомiший метод Рунге-Кутти має q = 4, s = 4. Для нього
p1 = |
1 |
, p2 |
= |
1 |
, p3 |
= |
1 |
, p4 |
= |
1 |
, |
|
|
|
|
||||||||
6 |
3 |
3 |
6 |
α2 = 1/2, β21 = 1/2, α3 = 1/2, β31 = 0, β32 = 1/2,
α4 = 1, β41 = 0, β42 = 0, β43 = 1,
1
yn+1 = yn + 6(K1 + 2K2 + 2K3 + K4),
K1 = hf(xn, yn),
K2 = hf(xn + h/2, yn + K1/2), K3 = hf(xn + h/2, yn + K2/2), K4 = hf(xn + h, yn + K3).
Методи Рунге-Кутти, досить зрозумiлi у своєму класичному формулюваннi, мають одну не зовсiм приємну ваду: кiлькiсть обчислень правих частин
123
на кожному кроцi не менша, нiж порядок методу. Щойно згаданий метод q = 4, s = 4 потребує n = 4 звертання до правих частин на кожному кроцi iнтегрування. Методи вищих порядкiв, як правило, потребують не менше, нiж n + 2 таких звертань. Оскiльки алгоритми знаходження правих частин рiвнянь можуть бути дуже складними, проблема зменшення кiлькостi обчислень правих частин стає головною. Розглянемо модифiкацiю методу Рунге-Кутти.
Метод Булiрша-Штера. Основою методу є схема серединної точки, згiдно з якою перехiд вiд точки x до точки x + H здiйснюється послiдовнiстю менших крокiв, кратних H: h = H/n. Формули для цiєї схеми такi:
z0 |
= y(x) |
|
z1 |
= z0 + hf(x, z0) |
|
zm+1 |
= |
zm−1 + 2hf(x + mh, zm), m = 1, . . . , n − 1 |
yn |
= |
(zn + zn−1 + hf(x + H, zn))/2, |
де z - промiжнi наближення, yn - результат iнтегрування в точцi x+H. Досить очевидно, що на iнтервалi [x, x+H] потрiбно n+1 звертання до правих частин. Ця схема нагадує собою метод Ейлера, однак, похiднi оцiнюються по-рiзному для першої, останньої та всiх iнших точок iнтервалу iнтегрування.
Найбiльш приємною особливiстю цiєї схеми, яку введемо без доведення, є та, що схема дає похибку, у розкладi якої по степенях h є лише парнi степенi:
∞
X
yn − y(x + H) = αih2i,
i=1
iндекс при y тут позначає кiлькiсть крокiв n, потрiбних для досягнення H. Якщо ми скористаємось цiєю схемою при n = 2, i знайдемо yn, це потребуватиме трьох звертань до правих частин. Якщо ж тепер скористатися цiєю ж схемою при n = 1 i знайти yn/2, це потребуватиме двох звертань до правих частин, але всi цi звертання уже мали мiсце при n = 2, тобто насправдi звертатись до правих частин не потрiбно зовсiм, досить скористатися результатами попереднiх обчислень. Тобто, ми провели два iнтегрування з двома рiзними кроками i при цьому витратили три звертання до правих частин. Крiм того,
yn − y(x + H) = α1h2 + O(h4), yn/2 − y(x + H) = α1(2h)2 + O(h4),
що безпосередньо слiдує з формули для точностi схеми серединної точки. З цих двох результатiв складемо лiнiйну комбiнацiю:
(4(yn − y(x + H)) − (yn/2 − y(x + H)))/3 = (4yn − yn/2)/3 − y(x + H) =
124
= 4α1h2 − α1(2h)2 + O(h4) = O(h4).
Тобто
(4yn − yn/2)/3 − y(x + H) = O(h4).
Лiнiйна комбiнацiя (4yn −yn/2)/3, на знаходження якої знадобилося три звертання до правих частин має четвертий порядок по h. Метод Рунге-Кутти четвертого порядку вимагає по чотири звертання до правих частин на крок, загалом вiсiм звертань. Суттєвий виграш очевидний.
Схема серединної точки є основою методу Булiрша-Штера, згiдно з яким початковий крок iнтегрування H великий i реалiзується розбиттям на меншi h = H/n, n - цiле число. Значення iнтеграла, отриманi з рiзними h, далi екстраполюються до величини, що вiдповiдає h = 0, чи n → ∞ i отримане екстрапольоване значення приймається як результат iнтегрування. Одночасно можна контролювати помилку iнтегрування, оскiльки вона рiвна рiзницi мiж знайденим iнтегралом i проiнтерпольованим значенням i на основi цiєї iнформацiї оптимально вибирати наступний крок. При правильному пiдборi послiдовностi n, наприклад, n = 2, 4, 6, 8, 12, 16, . . . [nj = 2nj−2] можна добитись того, що кiлькiсть звертань до правих частин буде невеликою.
Необхiднiсть зменшення кiлькостi звертань до правих частин є найбiльшою проблемою однокрокових методiв. Найгiршим є те, що всi зусилля, витраченi на якомусь з крокiв на знаходження правих частин нiяк не використовуються при переходi до наступного кроку.
Багатокроковi методи. Список варiацiй багатокрокових методiв дуже великий. Однак для їх розумiння достатньо розглянути найбiльш класичний варiант - методи Адамса.
Будемо вважати, що в процесi iнтегрування ми вже дiйшли до деякої точки, яку надалi вважаємо нульовою. Попереднi точки будуть вiдповiдати вiд’- ємним значенням незалежної змiнної, майбутнi - додатнiм. За таких позначень, головна формула, на якiй грунтуються багатокроковi методи Адамса, має такий вигляд:
−q |
|
Xi |
(13.4) |
y1 = y0 + h Aif(xi, yi). |
=s
Варiантiв використання цiєї формули три. Розглянемо кожен варiант окремо. Якщо покласти s = 0, маємо екстраполяцiйний метод:
−q
X
y1 = y0 + h Aif(xi, yi).
i=0
125

Вважаємо, що ця формула точна для полiномiв степенi, не вищої q, а сiтку по x покладемо рiвномiрною: xi = ih. Тодi:
x1 |
|
q |
q |
|
Z |
|
|
||
1dx = x|x0 |
= h = h i=0 |
Ai1 i=0 |
Ai = 1. |
|
x0 |
x1 |
X |
X |
|
|
|
|
|
x1 |
|
|
2 |
x1 |
Z |
|
|
||
xdx = 2 |
x0 |
|||
x0 |
x |
|
|
|
|
|
|
|
|
|
h |
q |
q |
1 |
|||
|
Xi |
X |
|||||
|
|
|
|
|
|
||
= 2 = h |
|
|
|
||||
=0 |
Aixi Ai(−i) = 2. |
||||||
|
|
|
i=0 |
|
|
|
i продовжуючи по аналогiї:
q |
1 |
|
|
||
Xi |
|
|
|||
|
|
|
|
||
Ai(−i)j = j + 1 |
, |
j [0, q]. |
|||
=0 |
|||||
|
|
|
|
Розв’язання цiєї системи рiвнянь дає Ai - коефiцiєнти екстраполяцiйної формули. За приклад можна взяти q = 2, тодi:
A0 |
+A1 |
A0 · 0 |
+A1 · (−1) |
A0 · 0 |
+A1 · 1 |
+A2 |
= 1 |
+A2 · (−2) = 1/2 , |
|
+A2 · 4 |
= 1/3 |
тобто, A0 = 23/12, A1 = −4/3, A2 = 5/12,
h
y1 = y0 + 12 (23f0 − 16f−1 + 5f−2) .
При q = 3 теж як приклад, отримуємо:
h
y1 = y0 + 24 (55f0 − 59f−1 + 37f−2 − 9f−3) .
Якщо покласти s = 1 матимемо iнтерполяцiйний метод. Єдина рiзниця з попереднiм методом - нижня межа для суми:
−q+1
X
y1 = y0 + h Aif(xi, yi).
i=1
Система рiвнянь, що при цьому утворюється має такий вигляд:
q−1 |
1 |
|
|
X |
Ai(−i)j = |
|
, j [0, q]. |
i=−1 |
j + 1 |
||
|
|
|
126
Тi ж два приклади дадуть дещо iншi формули:
y1 = y0 + |
h |
(5f1 + 8f0 − f−1) , q = 1, |
||||
|
|
|||||
12 |
||||||
y1 = y0 + |
h |
(9f1 |
+ 19f0 − 5f−1 + f−2) , q = 2. |
|||
|
|
|||||
24 |
Звернемо увагу на те, що в цих останнiх формулах використовується f1, незважаючи на те, що процес iнтегрування добiг лише точки f0. Пряме використання останнiх формул видається неможливим. Однак, якщо взяти двi формули одного порядку точностi, то екстраполяцiйна формула може служити для знаходження початкового, чи прогнозного значення f1, яке потiм пiдставимо в iнтерполяцiйну формулу для знаходження бiльш точного, чи коригованого значення в точцi x1. Такий спосiб сумiсного використання формул називається схемою предиктор-коректор. Обидва типи формул мають спiльну назву метод Адамса-Бошфорта-Мультона.
Якщо ж у початковiй формулi (13.4) покласти s > 1, зазвичай кладуть s = q, маємо модифiкацiї Коуела, або методи з забiганням вперед:
|
|
|
|
−q |
||
|
|
|
|
X |
||
y1 = y0 + h |
Aif(xi, yi), |
|||||
|
|
|
|
i=q−1 |
||
з системою рiвнянь |
|
q |
|
|
|
|
|
|
1 |
|
|||
|
X |
|
||||
|
|
|
Ai(−i)j = |
|
. |
|
|
j + 1 |
|||||
i=−q+1 |
|
|
|
|||
Наприклад: |
|
h |
|
|
|
|
|
|
|
|
|
||
y1 = y0 + |
|
|
(−f2 |
+ 13f1 + 13f0 − f−1) . |
||
|
24 |
Метод з забiганням вперед добре працює в тих рiвняннях, у правих частинах яких немає y.
Фактично єдиним недолiком методiв Адамса є те, що вони не можуть самi розпочати роботу. Для їх розгону бiля початку iнтервалу iнтегрування зазвичай використовують iншi процедури, наприклад метод Рунге-Кутти, чи навiть Ейлера. Однак, коефiцiєнти формул не залежать вiд функцiї, а крок не обов’язково має бути сталим. Змiна кроку та порядку у процесi iнтегрування теж досить тривiальна процедура. Все це робить методи Адамса дуже привабливими.
127

Задачi. У задачах цього роздiлу потрiбно розв’язати два заданi диференцiйнi рiвняння, тобто, скласти таблицю значень функцiї вiд 0 до 1 з кроком h = 0.1. Розв’язок першого рiвняння бажано знайти методом Рунге-Кутти, другого - методом Адамса. Для всiх рiвнянь y(0) = 1.
1. 10.
yy0 + x = 1,
y0 = 1 + 0.2y sin x − y2.
2.
sin α cos βdα = cos α sin βdβ, y0 = cos (x + y) + 0.5(x − y).
3.
1 + (1 + y0) exp y = 0, y0 = xcos+x1 − 0.5y2.
4.
3 exp x sin ydx = (exp x − 1)/ cos ydy, y0 = (1 − y2) cos x + 0.6y.
5.
x2(2yy0 − 1) = 1,
y0 = 1 + 0.4y sin x − 1.5y2.
6.
|
y0 − y ctg x = sin x, |
|
|
|||||
|
y0 = |
cos y |
|
+ 0.3y2. |
|
|
||
|
|
|
|
|||||
|
x + 2 |
|
|
|
|
|||
7. |
|
|
|
|
|
|
|
|
x2y2y0 + xy3 = 1, |
|
|
|
y). |
||||
y0 = 1 + cos (1.5x + y) + (x |
− |
|||||||
8. |
|
|
|
|
|
|
||
|
|
|
|
|
|
|
||
y0 |
− y = exp x, |
|
0.5y |
|
||||
y0 |
= 1 − sin (x + y) + |
. |
||||||
|
||||||||
x + 2 |
||||||||
9. |
|
|
|
|
|
|
|
(x2 + 1)y0 + 4xy = 3,
y0 = 1 + |
cos y |
+ 0.1y2. |
|
1.5 + x |
|||
|
|
cos ydx = (x + 2 cos y) sin ydy, y0 = 0.6 sin x − 1.25y2 + 1.
11.
y0 + y = x√y,
y0 = cos (2x + y) + 1.5(x − y).
12.
(2y − 3)dx + (2x + 3y2)dy = 0, y0 = 1 − x0.+1y2 − sin (2x + y).
13.
(3x2y2 + 7)dx + 2x3ydy = 0,
y0 = cos y − 0.1y2. 1.25 + x
14.
(exp y + y exp x + 3)dx =
= (2 − x exp y − exp x)dy, y0 = 1 + 0.8y sin x − 2y2.
15.
sin (x + y)dx+
+x cos (x + y)(dx + dy) = 0,
y0 = cos (1.5x + y) + 1.5(x − y).
16.
|
y2 |
+ |
sin (2x) |
||||
|
|
|
|
+ 1 dx− |
|||
|
|
2y |
|
||||
− |
y2 |
− x dy = 0, |
|||||
|
|
sin x |
|
|
|
|
|
y0 |
= 1 − sin (2x + y) + |
0.3y |
|||||
|
. |
||||||
x + 2 |
128

17.
xy0 + x2 + xy − y = 0,
y0 = cos y − 0.5y2. 1.75 + x
18.
2xy0 + y2 = 1,
y0 = 1 + (1 − x) sin y − (2 + x)y.
19.
(2xy2 − y)dx + xdy = 0, y0 = (0.8 − y2) cos x + 0.3y.
20.
y− y0 = y2 + xy0,
y0 = 1 + 2.3 sin x + 1.5y2.
21.
(x + 2y3)y0 = y,
y0 = cos (x + y) − 0.75(x − y).
22.
x2y0 = y(x + y),
y0 = 1 − sin (1.25x + y) + 0.5y . x + 2
23.
x2y0 − 2xy = 3y, y0 = xcos+y2 − 0.3y2.
24.
y= (xy0 + 2y)2,
y0 = 1 − sin (1.75x + y) + 0.1y . x + 2
25.
2x3yy0 + 3x2y2 + 7 = 0,
y0 = cos y + 0.5y2. 1.75 + x
26. |
|
|
|
|
|
|
|
|
|
x − y/y0 = 2/y, |
|
2.25(x + y). |
|||||||
y0 |
= cos (1.5x + y) |
− |
|||||||
|
|
|
|
|
|
|
|
|
|
27. |
|
|
|
|
|
|
|
|
|
|
(x + y2)y0 = 1, |
|
|||||||
|
y0 = |
|
cos y |
− 1.25y2. |
|||||
|
1.5 + x |
|
|||||||
28. |
|
|
|
|
|
|
|
|
|
x2y02 + y2 = 2x(2 − yy0), |
|||||||||
y0 |
= 1 |
− |
(x |
− |
1) sin y + 2(x + y). |
||||
|
|
|
|
|
|
|
|
29.
2x2y0 = y2(2xy0 − y),
y0 = 1 − sin (0.75x − y) + 1x.75+ y1.
30.
(y − xy0) = 2(x + yy0),
y0 = cos x − y + 1.25y . 1.5 + x
31.
(xy4 − x)dx + (y + xy)dy = 0,
√
y0 = x + sin y/ 3.
32.
y0 = x − cos |
p |
|
7 |
|
|
|
y(y − xy0) = |
x4 |
+ y4 |
, |
|||
|
√ |
|
|
|
|
|
|
|
|
|
|
y/ .
129

14. Крайовi задачi
У цьому роздiлi розглядаються крайовi задачi для диференцiйних рiвнянь. Це, так би мовити, двостороння задача Кошi, коли крайовi умови задаються на обидвох кiнцях iнтервалу. Такi задачi виникають у фiзицi дуже часто, область їх використання надзвичайно широка. Математичниий апарат таких задач дуже серйозний i не завжди простий. Для початкового ознайомлення обмежимось лише лiнiйною крайовою задачею для диференцiйних рiвнянь другого порядку.
Сiтковi методи. Окрiм пояснення методу розв’язування крайових задач тут також вводиться унiверсальний метод, що буде використовуватися в подальших роздiлах.
Роздiлимо iнтервал [a, b] рiвномiрною сiткою: xk = x0 + kh, x0 = a, xN = b, h = (b − a)/N, k [0, N], на N iнтервалiв рiвної довжини. Очевидно, що у будь-якiй точцi сiтки (як i в будь-якiй iншiй точцi iнтервалу) рiвняння крайової задачi буде тотожнiстю:
y00(xk) + p(xk)y0(xk) + q(xk)y(xk) = f(xk).
Зосередимося тепер на апроксимацiях першої та другої похiдної рiзницевими формулами. Наприклад, для першої похiдної можна записати три формули:
y0(xk) = |
y(xk+1) − y(xk) |
+ O(h) |
|
h |
|||
y0(xk) = |
y(xk) − y(xk−1) |
+ O(h) . |
|
|
h |
|
|
y0(xk) = |
y(xk+1) − y(xk−1) |
+ O(h2) |
|
|
2h |
|
|
Як бачимо, третя формула точнiша, нiж двi першi, тому її використання бiльш правильне. Однак, у точцi x0 можна скористатися лише першою формулою, а у точцi xN - лише другою. Апроксимацiя для другої похiдної:
y00(xk) = y(xk+1) − 2y(xk) + y(xk−1) + O(h2). h2
З цiєю формулою ситуацiя аналогiчна - вона працює лицше в середнiх точках iнтервалу. Для країв треба подбати про iншi формули.
130