Чи є Кранк-Ніколсон стійкою схемою дискретизації рівняння реакції-дифузії-адвекції (конвекції)?


26

Я не дуже знайомий із загальними схемами дискретизації для PDE. Я знаю, що Кранк-Ніколсон є популярною схемою для дискретизації рівняння дифузії. Чи є також хорошим вибором для строку адвекції?

Мені цікаво рішення рівняння реакція-дифузія-адвекція ,

ут+(vу-Dу)=f

де - коефіцієнт дифузії речовини а - швидкість.у вDуv

Для мого конкретного застосування рівняння можна записати у формі,

ут=D2ух2Дифузія+vухАдвекція (конвекція)+f(х,т)Реакція

Ось схема Кран-Ніколсон, яку я застосував,

ujn+1ujnΔt=D[1β(Δx)2(uj1n2ujn+uj+1n)+β(Δx)2(uj1n+12ujn+1+uj+1n+1)]+v[1α2Δx(uj+1nuj1n)+α2Δx(uj+1n+1uj1n+1)]+f(x,t)

Зауважте терміни та . Це дозволяє схемі переходити між:βαβ

  • β=α=1/2 Crank-Niscolson,
  • β=α=1 це повністю неявно
  • β=α=0 це повністю явно

Значення можуть бути різними, що дозволяє терміну дифузії бути Кранком-Ніколсоном, а термін адвекції - чимось іншим. Що є найбільш стабільним підходом, що б ви порадили?

Відповіді:


15

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

За допомогою ви отримуєте метод, який є абсолютно стабільним для довільно великих розмірів кроків, а також точним для другого порядку. Однак метод не стійкий до L , тому дуже високі частоти не будуть демпфіровані, що нефізично.α=β=1/2

За допомогою ви отримуєте метод, який також безумовно стабільний, але лише точний 1-го порядку. Цей метод дуже дисипативний. Він стійкий до L.α=β=1

Якщо ви приймаєте , ваш метод можна розуміти як застосування методу добавки Runge-Kutta до напівдискретизації з центральною різницею. Аналіз стійкості та точності таких методів значно складніший. Дуже хороша стаття від таких методів тут .αβ

Який підхід рекомендувати, сильно залежить від величини , виду вихідних даних, якими ви займаєтесь, та точності, якої ви шукаєте. Якщо прийнятна дуже низька точність, тоді є дуже надійним підходом. Якщо помірний або великий, то проблема є дифузійною та дуже жорсткою; зазвичай дасть хороші результати. Якщо дуже малий, то може бути вигідним використання явного методу та перемотування вищого порядку для конвективних доданків.α = β = 1 D α = β = 1 / 2 DDα=β=1Dα=β=1/2D


Дуже проникливі відповіді, дякую! Чи є спосіб визначити різні режими домінування дифузії та панування адвекції? Крім порівняння величини термінів? Наприклад, порівнявши лише коефіцієнти? Яке значення має технічний термін L-стійкість. Всі рекомендують цю книгу, я повинен її придбати!
boyfarrell

Критерій, який я вам дав, передбачає лише коефіцієнти. Якщо коротко, L-стабільність означає, що високі частоти будуть сильно затухати.
Девід Кетчесон

Тож коли - це гладка функція (як в сенсі, вона не має високочастотних компонентів Фур'є) Crank-Nicolson - хороший вибір. Якщо ж є гострі краї, то - хороший вибір. u ( x ) β = 1u(x)u(x)β=1
boyfarrell

Це розумне, хоча і дуже грубе узагальнення. Ці варіанти принаймні спрацюють, якщо вам не потрібна дуже велика точність.
Девід Кетчесон

10

Взагалі кажучи, ви хочете використовувати неявний метод параболічних рівнянь (частина дифузії) - явні схеми для параболічного PDE повинні мати дуже короткий часовий крок, щоб бути стабільним. І навпаки, для гіперболічної частини (адвекції) вам потрібно чіткий метод, оскільки він дешевший і не порушує симетрію лінійної системи, яку вам доведеться вирішити, використовуючи неявну схему дифузії. У такому випадку ви хочете уникнути різниць у центрі на зразок та перейти на однобічні відмінності з міркувань стійкості.( u j - u j - 1 ) / Δ t(uj+1uj1)/2Δt(ujuj1)/Δt

Я б запропонував переглянути книгу Ренді Левека або книгу Дейла Дуррана для "аналізу стабільності фон Неймана". Це загальний підхід до встановлення стабільності вашої схеми дискретизації, якщо у вас періодичні граничні умови. (Там також гарна вікі стаття тут .)

Основна ідея полягає в тому, щоб припустити, що у вашому дискретному наближенні можна записати суму плоских хвиль , де - число хвилі і частота. Ви набиваєте площину хвилі в наближенні до PDE і молитеся, щоб вона не вибухнула. Ми можемо переписати площину хвилі як і ми хочемо переконатися, що . k ω ξ n e i k j Δ x | ξ | 1ei(kjΔxωnΔt)kωξneikjΔx|ξ|1

Для ілюстрації розглянемо звичайне рівняння дифузії з повністю неявним диференціюванням:

ujn+1ujnΔt=Duj1n+12ujn+1+uj+1n+1Δx2

Якщо підставити в площині хвилю, то ділимо на та , отримаємо рівнянняe i k j Δ xξнeikjΔх

ξ-1Δт=Dе-iкΔх-2+еiкΔхΔх2ξ

Очистіть це трохи зараз, і ми отримаємо:

.ξ=11+2DΔтΔх2(1-cosкΔх)

Це завжди менше, ніж один, тож ви в чистоті. Спробуйте застосувати це для явної, по центру схеми рівняння адвекції:

уjн+1-уjнΔт=vуj-1н-уj+1н2Δх

і подивитися , що , ви отримаєте. (Цього разу це буде уявна частина.) Ви знайдете це | ξ | 2 > 1 , що сумні часи. Звідси моє застереження, що ви не користуєтесь цим. Якщо ви можете це зробити, то у вас не повинно виникнути особливих проблем з пошуком стабільної схеми для повного рівняння адвекційно-дифузійного рівняння.ξ|ξ|2>1

Це означає, що я використовував би повністю неявну схему для частини дифузії. Змініть різницю в частині адвекції на якщо v > 0 і u j - u j + 1, якщо v < 0, і виберіть часовий крок, щоб V Δ t / Δ x 1 . (Це умова Куранта-Фрідріха-Льюї .) Це лише точне перше замовлення, тому ви, можливо, захочете шукати схеми дискретизації вищого порядку, якщо це стосується вас.уj-уj-1v>0уj-уj+1v<0VΔт/Δх1


Це дійсно детальна відповідь, дякую.
boyfarrell

У цій відповіді розглядаються лише розсуди, засновані на прямому та зворотному методах Ейлера у часі. Питання стосується Кранка-Ніколсона.
Девід Кетчесон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.