Русская Википедия:Метод объёма жидкости

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Файл:Drifter drop.png
Иллюстрация моделирования жидкости с помощью метода объёма жидкости

Метод объёма жидкости (Шаблон:Lang-en) — численный метод для аппроксимации свободной поверхности. Он относится к классу Эйлеровых методов, которые характеризуются сеткой, которая является стационарной или движется согласно изменяющейся форме поверхности по определённому заданному закону. Метод представляет собой алгоритм, который позволяет программисту отслеживать форму и положение поверхности в целом, но не является автономным алгоритмом. Уравнения Навье — Стокса, описывающие движение потоков, должны быть решены по отдельности, что характерно для всех других алгоритмов адвекции.

Спецификация

Основой метода является дробная функция <math>C</math>, которая является интегралом характеристических функций жидкости в конечном объёме (назовем его ячейкой). Если ячейка пуста (нет жидкости), <math>C</math> равно нулю, если ячейка полная <math>C=1</math>, для промежуточных состояний <math>0<C<1</math>. <math>C</math> является непрерывной функцией, принимающей значения от 0 до 1.

Дробная функция <math>C</math> является линейной и пока жидкость перемещается со скоростью

<math>\mathbf{v}=(u(x,y,z),v(x,y,z),w(x,y,z))</math>

(в трёхмерном пространстве <math>\mathbf{R^3}</math>) каждая частица находится в заданной фазе и не меняет фазу — как частица воздуха которая часть воздушного пузырька в воде остаётся частицей воздуха независимо от перемещения пузырька (мы пренебрегаем растворением воздуха в воде). Производная дробной функции должна быть равна нулю:

<math> \frac{\partial C}{\partial t} + \mathbf{v}\cdot \nabla C +\nabla\cdot(C (1-C) U_r) =0.</math>

Последнее слагаемое проявляется только на поверхности и «сжимает» эту область с помощью искусственного поля <math>U_r</math>.

Применение

Используется, в частности, в OpenFoam для моделирования задач со свободной поверхностью.

Шаблон:Rq