One pair was actually archived because nobody bothered:
- Fix T43782: smoke simulation problems with multiple touching colliders.
When the colliders are joined, each cell that touches them only gets velocity contribution once. When there are multiple objects, velocities are summed, which causes some cells to get 2x, 3x or more than the actual object velocity.
Fix this by using the average velocity of all colliders touching a cell.
- Fix T43220, T47551: collider scaling or rotation causes smoke to explode.
The problem happens because smoke collides only with the surface of the collider and uses incompressible fluid solver. This means that scaling the collider tries to compress or decompress fluid within the volume of the collider, which can't be handled by the simulation. Fast rotation likely also causes transient scaling due to emulation of arcs by chords.
This can be fixed by finding compartments completely isolated by obstacles from the rest of the domain, and forcing total divergence within each one to be zero so that equations are solvable. Physical validity is somewhat dubious, but without this the solver simply breaks down.