Page MenuHome

[Mantaflow] the number of particles increases over time
Closed, ResolvedPublicBUG


System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: AMD Radeon HD 7560D ATI Technologies Inc. 4.5.13399 Core Profile Context 15.201.1151.1008

Blender Version
Broken: version: 2.83 (sub 15), branch: master, commit date: 2020-05-11 19:18, hash: rB8956e9e5f6c0
Worked: (newest version of Blender that worked as expected)

Short description of error
If particles come into contact with obstacles, then the number of particles increases.

Exact steps for others to reproduce the error
Bake this scene.

Event Timeline

Germano Cavalcante (mano-wii) changed the task status from Needs Triage to Confirmed.May 13 2020, 2:48 PM
Germano Cavalcante (mano-wii) changed the subtype of this task from "Report" to "Bug".

I can confirm.
It is as if the volume of the liquid gradually increases although it does not have an outflow.
Problem seen in 2.90 rBf9d0f59bed4d and 2.83 rB50ef801a79b5

I've seen a similar report somewhere else before, but can't find it right now. I can also reproduce the issue.

@Sebastián Barschkis (sebbas) do you know if this is a bug in our code or more likely an issue with the solver?

Sebastián Barschkis (sebbas) changed the task status from Confirmed to Needs Information from User.Jul 27 2020, 12:05 AM

The solver has certain metrics to adjust the number of particles in the scene (e.g. parameters "Particles Maximum", "Particles Minimum", "Narrow Band Width"). Based on these parameters, the amount of particles is allowed to increase/decrease.
In a very splashy scene ("FLIP Ratio" near 1) with high external velocities, like the one you created, this adjustment is not enough. As there is no upper threshold, the number of particles can blow up.

To fix this, there is now a "System Maximum" variable with which one can set the maximum number of allowed particles in the simulation (e76f64a5329d).

Can you try and see if this helps you solve the issue?

Note: One of the caveats of this approach is that "System Maximum" is an absolute number. I.e. it does not scale when the resolution of the domain changes.
For now, this number needs to be estimated. In the future, it would be nice to have a volume based solution (number of particles can vary, but volumes stays constant).

Closing for now. If you still encounter a situation with exploding particles, feel free to reopen!