Рівняння мілкої води (SWE) описують інтегрований по глибині потік тонкого шару рідини під дією сили тяжіння, коли горизонтальний масштаб значно перевищує глибину. Вони керують припливними та паводковими хвилями, штормовими нагонами, цунамі, що мчать океанськими басейнами, утворенням бору в річках і геострофічними вихорами в атмосфері. Та сама консервативна структура з'являється в газовій динаміці — де глибина h відіграє роль густини ρ, а число Фруда мілкої води Fr = u/csw аналогічне числу Маха.

1. Виведення та консервативна форма

Починаючи з тривимірних рівнянь Нав'є — Стокса для нестисливої рідини, усереднення по глибині за гідростатичних і кінематичних поверхневих умов дає одновимірні SWE в консервативній формі:

∂U/∂t + ∂F(U)/∂x = S(U, x) U = [h, hu]ᵀ (консервовані змінні) F(U) = [hu, hu² + ½gh²]ᵀ (вектор потоку) S = [0, −gh ∂b/∂x]ᵀ (джерело топографії) g = 9.81 м/с², b(x) = висота дна, η = h + b = висота поверхні

Власні значення якобіана ∂F/∂U — це швидкості хвиль:

λ₁ = u − c, λ₂ = u + c, c = √(gh) (швидкість хвиль мілкої води) Число Фруда: Fr = |u|/c Fr < 1: докритична (спокійна) течія Fr = 1: критична (перехід гідравлічного стрибка) Fr > 1: надкритична (бурхлива) течія

2. Наближений розв'язувач Рімана Роу

Метод скінченних об'ємів із центруванням у комірці оновлює середнє значення в кожній комірці Ui через потоки на межах. На кожній межі i+½ точна задача Рімана є обчислювально витратною. Філіп Роу (1981) запропонував лінеаризований розв'язувач: замінити нелінійну задачу лінійною зі спеціально побудованим усередненим за Роу станом Û, який забезпечує точне збереження на розривах:

Усереднені за Роу швидкість і швидкість хвилі: û = (√h_L · u_L + √h_R · u_R) / (√h_L + √h_R) ĉ = √( g(h_L + h_R)/2 ) Власні значення: λ̂₁ = û − ĉ, λ̂₂ = û + ĉ Інтенсивності хвиль (характеристичний розклад): α₁ = Δ(hu)/2ĉ − Δh/2 · (û/ĉ − 1) α₂ = Δh − α₁ − α₃ … (повний розклад на 2 хвилі) Потік на межі: F_{i+½} = ½(F_L + F_R) − ½ Σ |λ̂ₖ| αₖ rₖ

Член ½ Σ |λ̂ₖ| αₖ rₖ — це числова дифузія: вона гасить осциляції, але розмазує розриви на кілька комірок. Реконструкція MUSCL високого порядку перед розв'язком Роу відновлює другий порядок точності, зберігаючи схему консервативною.

3. Реконструкція MUSCL та обмежувачі

Схема Годунова першого порядку є стійкою, але дифузійною. MUSCL (Monotone Upstream-Centred Schemes for Conservation Laws, ван Леер 1979) розширює її до другого порядку, реконструюючи лінійний профіль усередині кожної комірки:

U_L при i+½ : U_i + ½ φ(r) (U_i − U_{i-1}) U_R при i+½ : U_{i+1} − ½ φ(1/r) (U_{i+2} − U_{i+1}) r = (U_i − U_{i-1}) / (U_{i+1} − U_i) (відношення нахилів) Обмежувачі нахилу φ(r): minmod: max(0, min(1, r)) van Leer: (r + |r|)/(1 + |r|) superbee: max(0, min(2r, 1), min(r, 2))

Обмежувач minmod найбільш дифузійний, але гарантовано монотонний. Van Leer — хороше типове значення, що балансує точність і стійкість. Superbee найменш дифузійний, але може загострювати гладкі екстремуми.

4. Умова стійкості CFL

Явне інтегрування за часом потребує умови Куранта — Фрідріхса — Леві. Для SWE найшвидша характеристична швидкість хвилі дорівнює |u| + c:

Δt ≤ CFL · Δx / max_i(|uᵢ| + cᵢ) Безпечне CFL ≤ 0.9 для схеми Годунова першого порядку Безпечне CFL ≤ 0.5 для MUSCL з Рунге — Кутта 2 порядку CFL > 1: інформація проходить більше ніж одну комірку за крок → нестійкість

5. Затоплення та осушення

Симуляції паводків часто стосуються сухих ділянок дна (h = 0). Наївні розв'язувачі Роу дають від'ємні глибини й розходяться. Стандартні виправлення:

Прийом Опис
Поріг глибини якщо h < h_dry (наприклад, 10⁻³ м), задати u = 0 і трактувати як межу сухої стінки
Обмежувач зі збереженням додатності Після кожного кроку обрізати h ≥ 0; відповідно скоригувати hu
Гідростатична реконструкція Audusse та ін. 2004 — реконструкція h на межі з урахуванням нахилу дна для гарантії h_L, h_R ≥ 0
Швидкість хвилі на межі Замінити ĉ на max(ĉ, √(g · max(h_L, h_R) / 2)) у Роу, щоб уникнути ділення на нуль

6. Джерельні члени: топографія та тертя

Властивість збалансованості (well-balanced) забезпечує, що озеро в спокої (u = 0, η = const) залишається точно нерухомим попри ненульові градієнти дна. Наївне розщеплення за операторами цього не дає: різниця потоків і джерельний член повинні точно компенсуватися. Гідростатична реконструкція Audusse та ін. досягає цього автоматично.

Донне тертя моделюється членом типу Маннінга, доданим до джерела кількості руху:

S_friction = −g n² |u| u / h^(4/3) n = коефіцієнт шорсткості Маннінга Відкрита вода: n ≈ 0.013–0.025 м^(−1/3) с Трава заплави: n ≈ 0.030–0.050 Густа рослинність: n ≈ 0.060–0.120 Неявна обробка тертя усуває обмеження на крок за часом для малих h: uⁿ⁺¹ = (uⁿ + Δt·адвекція) / (1 + Δt·g n² |uⁿ| h^(−4/3))

7. Двовимірне розширення та сила Коріоліса

Розширення до двох вимірів додає рівняння кількості руху по y, а для геофізичних течій — силу Коріоліса:

∂h/∂t + ∂(hu)/∂x + ∂(hv)/∂y = 0 ∂(hu)/∂t + ∂(hu²+½gh²)/∂x + ∂(huv)/∂y = −gh∂b/∂x + fhv ∂(hv)/∂t + ∂(huv)/∂x + ∂(hv²+½gh²)/∂y = −gh∂b/∂y − fhu f = 2Ω sin(φ) (параметр Коріоліса, φ = широта, Ω = 7.27×10⁻⁵ рад/с) f·c/g ≪ 1: домінують гравітаційні хвилі (прибережні/річкові) f·L/c ≳ 1: домінує Коріоліс (океанські мезомасштабні вихори, хвилі Россбі)
Явище Домінантний баланс Типовий масштаб
Прорив греблі Інерція + тиск L ~ 10–1000 м, Fr ~ 1–3
Припливний бор Інерція + тиск + тертя L ~ 10 км, Fr ~ 1
Океанське цунамі Тиск + дисперсійна поправка L ~ 1000 км, c ~ 200 м/с
Геострофічний вихор Коріоліс + тиск L ~ 100 км, Ro ≪ 1
Штормовий нагін урагану Вітровий тиск + Коріоліс + тертя L ~ 500 км, нагін h ~ 1–5 м

8. Інтерактив: одновимірний прорив греблі

Ця симуляція розв'язує одновимірні SWE на сітці з 400 комірок, використовуючи Роу першого порядку та адаптивний за CFL крок за часом. Налаштуйте відношення глибин верхнього б'єфу й спостерігайте, як хвиля розрідження поширюється ліворуч, а бор — праворуч. Точний аналітичний розв'язок (Стокер 1957) накладено бурштиновим кольором.

t = 0.00 с