Skip to content

Incorrect FLIP #7

@zoharl3

Description

@zoharl3

A pseudo code of FLIP is given in section 4.2 in

Zhu05, Animating Sand as a Fluid

Consider manta's flip01_simple.py.

flipVelocityUpdate() calculates FLIP correctly and associates the weighted FLIP/PIC velocity with each particle.

However, in pp.advectInGrid(), the Euler step is done with the interpolated new velocity in the grid without the FLIP step while the algorithm suggests to use the weighted velocity in the particle.

The calculated FLIP velocity is used only in mapPartsToMAC().

I assume it was easier to perform the Runge-Kutta this way instead of delta velocity.

Admittedly, this bug works better than the original algorithm and may be considered a feature :) However, consider at least adding a comment about it to the code.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions