A repo that trys to reimplement Euler based fluid simluation
The project is based on Taichi, a programming language that embed both gpu and cpu parrellel computing.
python3 -m pip install taichi
python exp_my_fluid.py
Left: simulate adding dye in fluid, Right: velocity.
Implement reference: NVIDIA DEVELOP ZONE, taichi official example
change this line to
import config.stable_fluid_fixed as m_cfg
Here we try diffierent advection schemes:
implement reference: offcial tutorial
framework reference: Efficient and Conservative Fluids with Bidirectional Mapping
Left: rk = 1, Right: rk = 2.
Left: rk = 1, Right: rk = 2.
Above is all about advection-projection.
Both running in RK=2.
Left: Semi-lagrangion, Right: MacCormack
Above results is all about jacobi iteration projection solver run in 30 iterations.
Ref: Cornell_class_slides
Both run in RK=2, with advection-projection scheme and 30 iterations.
Left: Semi-lagrangion, Right: MacCormack
- Have no idea whether it is implemented in the right way since the basic semi-lagrangian with RK 1 advection would bend too early 0.0
-
The macCormack advection would cause
[control_flow_graph.cpp:dead_store_elimination@464] Identical load elimination failed.