Моделирование жидкости методом SPH — различия между версиями
(→Описание метода) |
(→Описание метода) |
||
Строка 20: | Строка 20: | ||
где <math>m_{j}</math> - масса частицы j, <math>A_{j}</math> - значение величины A для частицы j, <math>ρ_{j}</math> - плотность частицы j, W - функция ядра, ''h'' - радиус обрезания. | где <math>m_{j}</math> - масса частицы j, <math>A_{j}</math> - значение величины A для частицы j, <math>ρ_{j}</math> - плотность частицы j, W - функция ядра, ''h'' - радиус обрезания. | ||
+ | |||
+ | Таким образом, плотность любой частицы высчитывается по формуле: | ||
+ | |||
+ | <big><math>ρ(\pmb{r})= \sum_{j}m_{j}W(|\pmb r -\pmb r_{j}|,h) \qquad \qquad \qquad \qquad \qquad i,j = 1...N,</math></big> | ||
В нашем случае роль функции ядра исполняет функция Люси: | В нашем случае роль функции ядра исполняет функция Люси: | ||
Строка 26: | Строка 30: | ||
где <math>r = |\pmb r - \pmb r_{j}|</math> | где <math>r = |\pmb r - \pmb r_{j}|</math> | ||
− | |||
− | |||
− | |||
− | |||
Используя уравнение Эйлера, уравнения изменения плотности и положения | Используя уравнение Эйлера, уравнения изменения плотности и положения | ||
Строка 45: | Строка 45: | ||
<big><math>\frac{d\pmb v_{a}}{dt} = - \sum_{b}m_{b}(\frac{P_{b}}{{ρ_{b}}^{2}} + \frac{P_{a}}{{ρ_{a}}^{2}} + П_{ab})∇_{a}W_{ab} \qquad \qquad \qquad \qquad \qquad a,b = 1...N,</math></big> | <big><math>\frac{d\pmb v_{a}}{dt} = - \sum_{b}m_{b}(\frac{P_{b}}{{ρ_{b}}^{2}} + \frac{P_{a}}{{ρ_{a}}^{2}} + П_{ab})∇_{a}W_{ab} \qquad \qquad \qquad \qquad \qquad a,b = 1...N,</math></big> | ||
− | где давление ''P'' вычисляется по формуле: | + | где давление ''P'' в нашей задаче вычисляется по формуле: |
<big><math>P = B (({\frac{ρ}{ρ_{0}}})^{\gamma} -1)</math></big>, | <big><math>P = B (({\frac{ρ}{ρ_{0}}})^{\gamma} -1)</math></big>, | ||
Строка 51: | Строка 51: | ||
''B'' - модуль упругости, <math>ρ_{0}</math> - равновесная плотность. | ''B'' - модуль упругости, <math>ρ_{0}</math> - равновесная плотность. | ||
− | А <math>П_{ab}</math> - член, отвечающий за вязкость | + | А <math>П_{ab}</math> - член, отвечающий за вязкость, который в нашем случае рассчитывается так: |
<big><math>П_{ab} = -\frac{\alpha h c}{ρ_{a b}}(\frac{\pmb v_{ab} \cdot \pmb r_{ab}}{{r_{ab}}^{2}+0.01{h}^{2}}) </math></big> | <big><math>П_{ab} = -\frac{\alpha h c}{ρ_{a b}}(\frac{\pmb v_{ab} \cdot \pmb r_{ab}}{{r_{ab}}^{2}+0.01{h}^{2}}) </math></big> |
Версия 10:29, 23 декабря 2016
Курсовые работы по МДС: 2016-2017 > Моделирование жидкости методом SPHКурсовой проект по Механике дискретных сред
Исполнитель: Шварёв Николай
Группа: 09 (43604/1)
Семестр: осень 2016
Содержание
Описание метода
SPH (Smoothed Particle Hydrodynamics, Гидродинамика сглаженных частиц) - вычислительный лагранжев метод для симуляции жидкостей и газа, который используется в биологии, астрофизике, баллистике, вулканографии, океанографии.
Сутью метода SPH является разбиение жидкости на дискретные элементы-частицы. Любая физическая величина любой частицы может быть получена путём суммирования соответствующих величин всех частиц которые находятся в пределах двух сглаженных с помощью функции ядра длин.
Значение любой величины A на любом расстоянии r задается формулой:
где
- масса частицы j, - значение величины A для частицы j, - плотность частицы j, W - функция ядра, h - радиус обрезания.Таким образом, плотность любой частицы высчитывается по формуле:
В нашем случае роль функции ядра исполняет функция Люси:
где
Используя уравнение Эйлера, уравнения изменения плотности и положения
получаем уравнение движения каждой частицы:
где давление P в нашей задаче вычисляется по формуле:
,
B - модуль упругости,
- равновесная плотность.А
- член, отвечающий за вязкость, который в нашем случае рассчитывается так: