💧 Przerwanie tamy SPH
Symuluj przerwanie tamy metodą hydrodynamiki cząstek wygładzonych (SPH). Obserwuj, jak słup wody się zapada, rozbryzguje i uspokaja. Reguluj lepkość, grawitację i liczbę cząstek, by poznać zachowanie cieczy.
O tej symulacji
Każda cząstka w tym przerwaniu tamy niesie własną masę, prędkość i gęstość; jądro sześcienno-spline'owe W(r,h) łączy właściwości sąsiadów w promieniu wygładzania 18 pikseli. Gęstość jest sumowana za pomocą jądra poly6, ciśnienie obliczane jest ze wzoru p = k(ρ−ρ₀), a jądra gradientu kolczastego i laplasjanu lepkości zamieniają to ciśnienie oraz różnice prędkości sąsiadów w siły — obok grawitacji — które są całkowane prostymi krokami Eulera przy dt = 0,004.
🔬 Co pokazuje
Prostokątny słup cząstek zajmujący lewe 32% zbiornika zapada się pod wpływem grawitacji, rozbryzguje o przeciwległą ściankę i się uspokaja — klasyczny test SPH używany do walidacji solverów cieczy o swobodnej powierzchni.
🎮 Jak korzystać
Dostosuj Liczbę cząstek, by zmienić rozdzielczość, Grawitację i Lepkość, by zmienić prędkość zapadania i gęstość, Sztywność ciśnienia, by zmienić ściśliwość, oraz Gęstość spoczynkową ρ₀, by zmienić punkt równowagi, wobec którego działa ciśnienie. Przełączaj Koloruj wg między prędkością, ciśnieniem i gęstością, a przycisk Restart odbudowuje słup.
💡 Czy wiesz, że?
SPH zostało wynalezione niezależnie przez Lucy'ego (1977) oraz Gingolda i Monaghana (1977) do modelowania eksplodujących gwiazd w astrofizyce — dekady przed tym, jak stało się podstawową techniką symulowania wody w grach wideo, takich jak Half-Life 2, oraz symulacji fal sztormowych i przepływu krwi.
Najczęściej zadawane pytania
Czym jest hydrodynamika cząstek wygładzonych (SPH)?
SPH to bezsiatkowa, lagranżowska metoda symulowania cieczy: zamiast stałej siatki, ciecz jest reprezentowana przez cząstki niosące masę, prędkość i gęstość, oddziałujące jedynie z sąsiadami wewnątrz promienia wygładzania h za pomocą jąder wagowych. Jest szeroko stosowana w astrofizyce, oceanografii i silnikach gier.
Jak symulacja oblicza ciśnienie wody?
Gęstość każdej cząstki jest szacowana przez sumowanie jądra poly6 po pobliskich cząstkach, a następnie ciśnienie wyprowadza się z równania stanu p = k(ρ−ρ₀), gdzie k to suwak Sztywności ciśnienia, a ρ₀ to Gęstość spoczynkowa. Gęstość wyższa niż ρ₀ daje dodatnie ciśnienie, które odpycha cząstki od siebie, przeciwdziałając kompresji.
Co właściwie robi zwiększenie lepkości?
Człon lepkości wykorzystuje jądro Laplace'a do tłumienia różnic prędkości między sąsiadującymi cząstkami, skutecznie „wygładzając" ruch względny. Zwiększenie lepkości sprawia, że ciecz zachowuje się bardziej jak miód — fale zanikają szybciej, a rozbryzgi są tłumione.
Dlaczego cząstki odbijają się od ścianek?
Symulacja stosuje proste odbijające warunki brzegowe: gdy cząstka przekracza lewą, prawą, górną lub dolną krawędź zbiornika, jej pozycja jest przycinana z powrotem do wnętrza, a składowa prędkości prostopadła do tej ścianki jest odwracana i tłumiona współczynnikiem 0,4, naśladując niesprężyste zderzenie ze stałą granicą.
Dlaczego zwiększenie sztywności ciśnienia zmniejsza ściśliwość cieczy?
Sztywność ciśnienia (k) skaluje siłę, z jaką odchylenia gęstości od ρ₀ zamieniają się w odpychające siły ciśnienia. Wyższe k oznacza, że nawet niewielka kompresja generuje dużą siłę przywracającą, więc cząstki opierają się ściśnięciu bliżej siebie — przybliżając niemal nieściśliwość rzeczywistej wody.