0
$\begingroup$

I'm trying to learn SPH by implementing different methods. I am currently following Divergence Free Smoothed Particle Hydrodynamics By Jan Bender [1].

I believe I understand the method and the math behind it. However I am not a able to correct the density error by finding the pressure forces because they are very small. It is a predictor corrector algorithm, so I have to use the pressure forces in a Jacobi iterator to find the correct velocities that will make the densities equal the rest density to enforce incompressiblity. However even after 1000 iterations the system doesn’t converge, but it is moving in the right direction. I've had similar problems with PCISPH and IISPH. I could only get the first one to work by manually scaling the resulting pressure forces.The pressure forces in IISPH were too large, still trying to get that work.

I can speed up the convergence in DFSPH of the iterator by manually scaling the calculated stiffness values. However this feels wrong. Is it okay to scale values like pressure values to get a SPH simulation working? I think I I am missing something important.

[1] http://www.interactive-graphics.de/index.php/research/93-divergence-free-smoothed-particle-hydrodynamics

$\endgroup$
0
$\begingroup$

Finally got this to work. So the answer is no, you shouldn't have to scale anything in the simulation to get the it to work. The problem was much simpler than that and not related to the paper at all. It was a coding error, I wasn't paying attention to the order of operations in one line of code, explaining the weak forces. The second thing is getting the initial settings correct for the simulation, which happened through experimentation.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.