Мітки: Диференціальне рівняння

Знаходження розв’язку диференціального рівняня методом Рунге-Кутта-Мерсона в середовищі програмування Delphi

Програми написані на мові Borland Delphi і дозволяє вирішувати диференціальні рівняння першого порядку точності, використовуючи для цього метод Рунге-Кутта-Мерсона. Перевагою даного методу є можливість оцінити похибку на кожному кроці інтегрування і в залежності від цього зменшити чи збільшити даний крок. Така можливість дає змогу досягнути заданої точності розв’язку та значно скоротити час рішення диференціального рівняння.

Суть роботи програми доволі проста, за вхідними даними (інтервал інтегрування і крок h) формується масив X[i], і такої ж розмірності масив Y[i], значення елементів якого заповнюються за алгоритмом методу Рунге-Кутта-Мерсона. Також відмітимо, що при роботі з програмою слід враховувати, що точність результату значною мірою залежить від величини кроку інтегрування, тобто чим менший крок h тим більша точність результуючих даних.

Результатом роботи програми є вивід послідовності точок (масив X[i]) та значень функції в них (масив Y[i]), а також побудова відповідного графіка в компоненті TChart.

Читати далі

Метод Рунге-Кутта-Мерсона. Розв’язування звичайних диференціальних рівнянь методом Рунге-Кутта-Мерсона

Метод Рунге-Кутта-Мерсона, являється оденійєю з модифікацій методу Рунге-Кутта четвертого порядку точності і відрізняється від нього можливістю оцінювати похибку на кожному кроці і в залежності від цього приймати рішення про зміну кроку інтегрування і таким чином значно скоротити час розв’язку диференціального рівняння. Для того, щоб розглянути даний алгоритм більш детально запишемо диференціальне рівняння виду:

Метод Рунге-Кутта-Мерсона

з початковою умовою Метод Рунге-Кутта-Мерсона. Далі, задавши початковий крок інтегрування Метод Рунге-Кутта-Мерсона та точність Метод Рунге-Кутта-Мерсона, на кожному кроці обчислюємо коефіцієнти:

Метод Рунге-Кутта-Мерсона

після чого послідовні значення Метод Рунге-Кутта-Мерсона шуканої функції Метод Рунге-Кутта-Мерсона визначаються за наступною формулою:

Читати далі

Знаходження розв’язку задачі Коші засобами Delphi використовуючи метод Мілна

Розглянемо delphi-проект, який використовуючи метод Мілна четвертого порядку точності (відноситься до групи методів прогнозу і коррекції) знаходить чисельний розв’язок задачі Коші. Перш ніж приступити до розгляду головної форми delphi-програми, нагадаємо, що основна ідея методів прогнозу і коррекції полягає в тому, що  рішення в наступній точці знаходиться у два етапи. На першому етапі знаходимо прогнозоване значення функції. На другому – корекція значення отриманого на попередньому етапі. Більш детальну інформацію про метод Мілна можна знайти за посиланням Знаходження розв’язку задачі Коші використовуючи метод Мілна.

Отже, після запуску програми, яка реалізує Метод Мілна, на екрані появиться форма наступного виду:

Головна форма delphi-проекту, який використовуючи метод мылна знаходить розвєязок задачі Коші

Головна форма delphi-проекту, який використовуючи метод Мілна знаходить розв’язок задачі Коші

Читати далі

Знаходження розв’язку задачі Коші використовуючи метод Мілна

Одним з найбільш простих і практично зручних методів чисельного рішення диференціальних рівнянь є метод Мілна. Метод Мілна відноситься до багатокрокових методів і представляє один з методів прогнозу і корекції, тобто, рішення в наступній точці знаходиться у два етапи. На першому етапі здійснюється за спеціальною формулою прогноз значення функції, а потім на другому етапі – корекція отриманого значення. Якщо отримане значення Метод Мілна після корекції істотно відрізняється від спрогнозованого, то проводять ще один етап корекції. Якщо знову має місце суттєва відмінність від попереднього значення (тобто від попередньої корекції), то проводять ще одну корекцію і так далі. Однак, при використанні методу Мілна, дуже часто обмежуються лише одним етапом корекції.

Нехай потрібно знайти розв’язок задічі Коші:

Метод Мілна

Для цього, виберемо деякий крок Метод Мілна, і покладемо:

Метод Мілна

Далі, виходячи з того, що для знаходження значення Метод Мілна метод Мілна використовує інформацію з чотирьох попередніх точок Метод Мілна, знаходимо їх використовуючи початкову умову та будь-який з однокрокових методів (метод Ейлера, методо Рунге-Кутта).

Читати далі

Розв’язування рівнянь теплопровідності за методом Кранка-Ніколсона

Неявна схема була відкрита Джоном Кранком (John Crank) і Філлісом Ніколсоном (Phillis Nicholson), заснована на чисельних наближеннях для розв’язку рівнянь виду:

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

в точці Метод Кранка-Ніколсона, яка знаходиться між рядами сітки. Більш визначене наближення, яке використовується для Метод Кранка-Ніколсона отримаємо по формулі симетричних різниць:

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

Наближення, яке використовуємо для Метод Кранка-Ніколсона є середнім наближенням Метод Кранка-Ніколсона і Метод Кранка-Ніколсона порядок точності якого становить Метод Кранка-Ніколсона:

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

Читати далі