Behavior · Published v1

CommitSurface

CommitSurface from Water Drop Tank.

From Water Drop Tank · v2. Edit this definition in its source simulation.

Source

behavior CommitSurface for FreeSurfaceWater
{
    update {
        let incoming = sum n in neighbors[FreeSurfaceWater using D3Q19] { n.share };
        let raw = self.targetMass + self.recipient * incoming;
        let physicalMass = clamp(raw, 0.0, self.rho);
        set self.mass = physicalMass;
        set self.reserve = clamp(self.carried + raw - physicalMass, -1000000.0, 1000000.0);
        set self.kind = self.nextKind;
        set self.fill = clamp(physicalMass / max(self.rho, 0.000001), 0.0, 1.0);
    }
}

Building blocks

These exact versions are included when you reuse this artifact.

PropertyFreeSurfaceWater@hyle · v1