Метод Кранка — Ніколсон

Матеріал з testwiki
Версія від 21:16, 10 вересня 2024, створена imported>Lxlalexlxl
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Шаблон:Диференціальні рівняння Метод Кранка — Ніколсон — це спеціальний чисельний метод розв'язку диференціальних рівнянь з частинними похідними в обчислювальній математиці, за допомогою особливої схеми методу скінченних різниць, зокрема для рівняння теплопровідності та дифузії. Це неявний метод 2 порядку і є чисельно стабільним щодо кроку різницевої сітки. Метод винайшли в середині 20-го століття англійські вчені Джон Кранк та Филліс Ніколсон.

Для рівняння теплопровідності, дифузії і багатьох інших схожих рівнянь можна довести, що метод Кранка — -Ніколсон є безумовно чисельно стабільним. Проте, при використанні великого кроку сітки (коли Δt/Δx2>0.5) розв'язок може містити сильні коливання. У випадку, коли крок різницевої сітки змінити неможливо, при нестабільності розв'язку рекомендується використовувати менш точний, але також чисельно стабільний неявний зворотній метод Ейлера.

Опис методу

Різницева схема сітки в методі Кранка — Ніколсон для одновимірної задачі

Неявна схема, яку винайшли Джон Кранк та Филліс Ніколсон ґрунтується на чисельному наближенню параболічного диференціального рівняння другого порядку. Як приклад візьмемо одновимірне рівняння теплопровідності

ut(x,t)=c2uxx(x,t)

для 0x<a та 0<t<b з початковою умовою u(x,0)=f(x) та крайовими умовами u(0,t)=g1(t) ; u(a,t)=g2(t) в точці (x,t+Δt/2) котра знаходиться між рядами різницевої сітки з кроком h=Δx та k=Δt.

Тоді для похідних отримаємо

ut(x,t+k/2)=u(x,t+k)u(x,t)k+O(k2)
uxx(x,t+k/2)=12h2(u(xh,t+k)2u(x,t+k)+u(x+h,t+k)+u(xh,t)2u(x,t)+u(x+h,t))+O(h2)

Тобто використовується середнє значення наближень похідних uxx(t,k) та uxx(x,t+k) для наближення uxx(x,t+k/2)

Підставляючи ці вирази в рівняння теплопровідності (і спрощуючи запис u(xj,tn)uj,n) отримаємо

uj,n+1uj,nk=c2uj1,n+12uj,n+1+uj+1,n+1+uj1,n2uj,n+uj+1,n2h2

Використовуємо для зручності r=c2k/h2 і переносимо всі значення функції з часом t+k в ліву частину рівняння.

Після впорядкування членів рівняння отримаємо неявну різницеву схему для j=2,3,...,N1

ruj1,n+1+(2+2r)uj,n+1ruj+1,n+1=(22r)uj,n+r(uj1,n+uj+1,n)

Рівняння у такій формі має вигляд тридіагональної системи алгебраїчних рівнянь

AX=B

і розв'язується звичайними прямими чи ітераційними методами лінійної алгебри.

В схемі Кранка — Ніколсон використовується шість точок основної різницевої сітки для наближення проміжної точки uxx(x,t+k/2), на якій базуються всі чисельні наближення.

Шаблон:ЧМ для PDE