Методи симуляції рідини — SPH проти LBM проти MPM проти FVM
Кожен симулятор рідини робить фундаментальний вибір: представляти рідину як дискретні частинки (лагранжів підхід), як значення на фіксованій сітці (ейлерів підхід), або як гібрид. Кожен вибір визначає точність, розпаралелюваність і те, які явища можна відтворити. Ця стаття оглядає чотири домінантні підходи в іграх, VFX та науковому програмуванні.
1. Лагранжів проти ейлерового підходу
Усі методи симуляції рідини можна класифікувати за їхньою системою відліку:
- Лагранжів: Відстежує елементи рідини, поки вони рухаються. Кожна частинка несе масу, швидкість, тиск. Сітка (якщо вона є) рухається разом із рідиною. Адвекція тривіально точна; інтерполяція — складна частина.
- Ейлерів: Фіксує сітку та спостерігає, як властивості рідини протікають крізь неї. Проєкція тиску та бездивергентні поля швидкості розв'язуються для кожної комірки. Підходить для великомасштабних усталених потоків; адвекція потребує керування чисельною дифузією.
- Гібридний (FLIP, APIC, MPM): Частинки несуть стан; фонова сітка накопичує та проєктує сили. Поєднує переваги обох коштом накладних витрат на передачу.
2. SPH — згладжена гідродинаміка частинок
SPH представляє рідину як набір частинок. Кожна властивість (густина, швидкість, тиск) інтерполюється від сусідів за допомогою згладжувального ядра W(r, h). Спочатку розроблений для астрофізичної газової динаміки (Gingold та Monaghan, 1977), нині він повсюдно поширений у симуляціях води та лави в реальному часі.
Переваги
- Вільні поверхні обробляються природно — не потрібно відстежувати поверхню води
- Легко реалізувати з нуля (проєкт на вихідні)
- Природно обробляє великі деформації — без заплутування сітки
- Дружній до GPU із прискоренням через просторове хешування
Недоліки
- Проблема нестисливості: WCSPH використовує жорстке рівняння стану (висока швидкість звуку), що потребує дуже малих кроків часу. PCISPH / DFSPH (2019) розв'язують тиск ітеративно на кожному кроці для майже нестисливих результатів за більшого dt.
- Зашумлені оцінки густини в розріджених за частинками областях
- O(N log N) на крок із просторовим хешуванням; O(N²) у наївному підході
3. LBM — метод ґраткового Больцмана
LBM працює на мезоскопічному масштабі — між молекулярною динамікою та рівняннями Нав'є-Стокса. Рідина моделюється як функції щільності ймовірності частинок f_i, що течуть між фіксованими комірками сітки та стикаються локально. Макроскопічні змінні рідини виникають із моментів f.
Переваги
- Надзвичайно розпаралелюваний — кожна комірка оновлюється незалежно від сусідів; ідеальний для GPU
- Обробляє складну геометрію без генерації сітки (гранична умова відбивання)
- Проста реалізація багатофазних потоків, пористих середовищ
- Використовується в промисловому CFD для внутрішніх потоків із високим Re (PowerFLOW від Exa/3DS)
Недоліки
- Обмежений нестисливими потоками з низьким числом Маха (Ma < ~0.3) у стандартному формулюванні
- Вільні поверхні потребують складних розширень Volume-of-Fluid або LBM з вільною поверхнею
- Сітка зберігає 19–27 чисел із рухомою комою на комірку (D3Q27) — вимоглива до пам'яті за високої роздільної здатності
- Налаштування в'язкості через τ може стати чисельно нестабільним за τ дуже близького до 0.5
4. MPM — метод матеріальної точки
MPM, розроблений Sulsky та ін. (1994) і популяризований Disney Research для "Крижаного серця" (2013), є гібридним лагранжево-ейлеровим методом. Частинки несуть масу та градієнт деформації; фонова сітка накопичує сили, розв'язує імпульс і передає швидкості назад частинкам.
Переваги
- Обробляє сніг, пісок, слиз, пасту, тканину та рідину з єдиною кодовою базою — достатньо змінити визначальну модель (пружнопластичність, в'язкопластичність, нео-гуківська)
- Без заплутування сітки — сітка є фіксованою фоновою структурою
- Використовується у великих VFX для снігу (Крижане серце), бруду (Відважна), піску (Моана)
Недоліки
- Передачі P2G/G2P вносять чисельну дифузію; APIC (Jiang 2015) та PolyPIC значно покращують це
- Розмір комірки сітки обмежує роздільну здатність; адаптивні/вкладені сітки складні
- Більша складність реалізації, ніж у SPH
5. FVM / FEM — сіткові (Нав'є-Стокс безпосередньо)
Класичний ейлерів CFD дискретизує рівняння Нав'є-Стокса безпосередньо на сітці за допомогою методів скінченних об'ємів (FVM) або скінченних елементів (FEM). Зв'язок швидкості й тиску забезпечується через рівняння Пуассона, що розв'язується на кожному кроці часу (метод проєкції Чоріна).
Переваги
- Найбільш фізично точний для добре роздільних потоків
- Багата література, зрілі розв'язувачі (OpenFOAM, Fluent, SU2)
- Точно зберігає масу, імпульс, енергію (за правильного формулювання)
Недоліки
- Вільні поверхні потребують відстеження методом level set або VOF — значний обсяг додаткового кодування
- Генерація сітки для складної геометрії є значним інженерним зусиллям
- Розв'язання тиску погано масштабується з роздільною здатністю (розв'язувач розрідженої лінійної системи)
6. Таблиця порівняння
| Метод | Сімейство | Вільні поверхні | Паралелізм | Нестисливість | Найкраще для |
|---|---|---|---|---|---|
| SPH / DFSPH | Лагранжів | ✅ Природні | Добрий (GPU-хеш) | ⚠️ Ітеративна | Бризки води, лава, астрофізика |
| LBM | Мезоскопічна сітка | ⚠️ Потрібне розширення | ✅ Відмінний (1 комірка = 1 потік) | ✅ Вбудована | Аеродинаміка, пористі середовища, промисловий CFD |
| MPM / APIC | Гібридний | ✅ Природні | Добрий | Залежить від визначального закону | Сніг, пісок, бруд, багатоматеріальні VFX |
| FVM (проєкція) | Ейлерова сітка | ⚠️ Потрібен level set | Помірний (розріджений розв'язок) | ✅ Забезпечена проєкцією | Інженерний CFD, усталені потоки |
| FLIP / PIC | Гібридний | ✅ Природні | Добрий | Проєкція на сітку | Великомасштабні рідини (Houdini FLIP) |
7. Як обрати
- Ігрова рідина в реальному часі (вода, ~1K–100K частинок): SPH або позиційні рідини (PBF). Швидко реалізувати, дружні до GPU, візуально переконливі вільні поверхні.
- Симуляція аеродинаміки з високим Re: LBM. PowerFLOW/XFlow використовують LBM для симуляцій автомобілів/літаків аж до Re = 10⁷ на GPU-кластерах.
- Сніг/пісок/паста у VFX чи іграх: MPM. Модель снігу від Disney (Stomakhin 2013) є відкритою як еталон.
- Наукова точність, турбулентність: FVM з RANS/LES (OpenFOAM). Потоки з високим Re потребують моделей турбулентності, які SPH та LBM можуть наблизити, але не зрівнятися з ними.
- Дим/вогонь у реальному часі: сітковий ейлерів (Jos Stam 1999 "Stable Fluids"). Напівлагранжева адвекція уникає обмеження кроку часу за умовою CFL; галузевий стандарт.