Houdini 20.5 Nodes Dynamics nodes

Particle Fluid Forces CL dynamics node

A microsolver for particle fluid forces

Since 19.0

The Particle Fluid Forces CL DOP solves for fluid forces and updates the particles' v attribute. This DOP requires several point attributes present to work correctly:

Type

Name

Description

float

pscale

The size of the particle.

integer

phase

Any value greater than zero indicates that a particle should be treated as fluid, but each different value indicates a separate “phase” of fluid that will ignore particles of other phases.

float

mass

The mass of the particle.

integer array

neighbors

An array of any neighbor particles within the Kernel Width.

There are additional per-particle point attributes that can be used to control this solver’s behavior:

Type

Name

Description

float

viscosity

Scales the Viscosity parameter for each particle.

float

surfacetension

Scales the Surface Tension parameter for each particle.

vector

dvisc

Stores the change in velocity from the last viscosity solve, used to warmstart the solver.

float

hitvol

The amount of the particle radius is obscured by a collision.

vector

hitpos

The location of the closest collision.

The Vellum Configure Grain SOP can be used to create particles in the proper initial configuration when set to Fluid mode.

Parameters

Geometry

The name of the data holding the geometry upon which to operate.

Kernel Width

The size of the neighborhood around each particle to use when estimating the SPH density. This value is a scale on the particles' pscale attribute.

Volume Scale

A scale on the amount of volume of the fluid each particle represents.

Viscosity

The viscosity of the fluid. The viscosity point attribute can be used to scale this per-particle.

Collision Viscosity

The viscosity of the fluid against collisions. Requires the hitvol and hitpos attributes to identify collisions.

Viscosity Solver

The method used for solving viscosity. Explicit is faster but can be unstable for signifcant amounts of viscosity or low substeps. Implicit is stable in all cases but more expensive to solve.

Viscosity Tolerance

The amount of error allowed in the viscosity solve when set to Implicit.

Max Viscosity Iterations

The maximum number of iterations to use in the viscosity solve when set to Implicit.

Surface Tension

The surface tension of the fluid. The surfacetension point attribute can be used to scale this per-particle.

Adhesion

The adhesion of the fluid around collisions if hitpos and hitvol are provided.

Use Timestep

Determines if the current solver timestep will be used to apply this node.

If set, the current timestep size will be multiplied by the scale and used for the time increment for this operation. Otherwise, the time scale will specify an absolute fictitious time to integrate by.

By disabling the link between the actual real time and the microsolver time, you can perform operations in a separate, fictitious, time.

Time Scale

The timestep used for this microsolver will be scaled by this amount. This allows one to achieve non-realistic effects, such as parts of the simulation operating at different speeds than other parts.

Similarly, it is useful if a solver needs to be evaluated independently of the main timestep.

See also

Dynamics nodes