In this video I show the result of a modified implementation of the Position Based Fluid (PBF) model developed by M. Macklin and M. Müller. Each panel shows the same simulation conditions with different materials
The main change from the original method is that I added the calculation of stress and strain tensors. I have linked both tensors using a isotropic elastic material model, parameterized by the Young's modulus and the Poisson ratio. I have also modified the method to keep the relaxation loop and control density variations.
The colors indicates the speed modulus using jet colormap (extracted from Matlab). The code was programmed in c++ (gcc 4.8), using FreeGLUT, devIL and pthreads libraries. Each simulation took less than 1 minute on Intel i7 6700HQ using 2 cores at same time.
- Constraint: Density
- Objective: Keep density variations ~5%
- Relaxation Iterations: Min=3,Max=10
- Artificial pressure parameters:
k=0.01; n=4; delta_q=0.01;
- Kernels: Poly6, Cubic spline and Spiky
- XPSH: implemeted and used
- Vorticity confinement: implemented and unused
- Artificial viscosity: implemented and used
- Laplacian based viscosity: implemeted and unused.
- Stress tensor elasticity: implemented and used
- Material parameters:
Young's modulus= 0.01 - 50 MPa; Poisson ratio= 0.1-0.3;
- Artifical stress: implemeted and unused
- Date: Nov 20, 2016 ***thanks for watching***