Oct 24, 2025 2:39 PM
Jan 27, 2026 4:07 PM

Houdini Micro Solvers

· Houdini MOC ·

TOC

houdini_pyro_gas2particle.gif|400

Micro Solvers are building blocks in Houdini simulation. Mostly they are doing one task in a clean way. SideFx’ fluid solvers from scratch tutorial and Pater Claes’ master theses about custom fields helps a lot for learning however there are tons of them and started to a bit confusing. Hence I make little list of these nodes with some examples attasched. It is first part and I am planning to prepare 3 parts in total.

Preparation

houdini_pyro_gas_multisolver.jpg|500

Lets start with multi solver as we will apply many micro solvers fin each time step. It has two inputs, objects (left) solvers (right). Objects to be processed will be as fallows:

  1. Empty Objectis a container which can have various types of data attached to it.

  2. The Scalar Field DOP creates a Scalar Field data that can be attached to simulation objects and manipulated by solvers. Scalar data can be density, temperature or any floating point number. Scalar field Visualization is attached to this node for field visualization.

  3. The Vector Field DOP creates a Vector Field data that can be attached to simulation objects and manipulated by solvers. Same as previous one except in this node each voxel is giving a 3d vector instead float. For visualizing field vector field Visualization node is used.

  4. Sop Geometry for importing external objects in to simulation. In our case it will be particles.

  5. Sop Solver to feed simulation with density in each frame. Inside this solver, density source is imported and merged with, dop geometry.

Micro Solvers

Gas Advect & Gas Advect Field

Evolves fields and geometry according to a specified velocity field. The fields and geometry will be moved by the velocity field for a distance proportional to the current solver timestep. In example below velocity drives density and particles. Velocity field needs to advect itself also, otherwise velocity grid will be static (will not change through simulation).

houdini_pyro_gas_advect_ui.jpg|400
houdini_pyro_gas_advect.gif

Gas Linear Combination

Combines multiple fields or geometry attributes together. In example masked force field (another SOP Vector Field) and velocity field added to velocity itself.

houdini_pyro_gas_linear_combine_ui.jpg|400
houdini_pyro_gas_linear_combine.gif|400

Gas Disturb Field

Introduces small amounts of change in momentum which cancels itself out over time, preserving the simulation’s general motion. In example velocity is disturbed according to density field

houdini_pyro_gas_disturb_ui.jpg|400
houdini_pyro_gas_disturb.gif|400

Gas Turbulence

Creates and applies a global turbulence field to the specified velocity field. This turbulent velocity field is modulated by the Control Field and lookup ramps provided.

houdini_pyro_gas_turbulence.gif|400

Gas Dissipate

Deforms dissipation on the specified field. This will drive the fields value to zero. An optional control field can be used to affect when the dissipation occurs. In mid Example gas dissipation is enabled by evaporation, each timestep subtraction applied to density field. In right example min clamp applied

houdini_pyro_gas_dissipate.gif|400

Gas Damp

The Gas Damp DOP scales the velocity field by a number between 0 and 1, thereby slowing down the motion in the simulation.

houdini_pyro_gasdamp.gif|400

Gas Blur

The Gas Blur DOP blurs fields using an optionally time dependent blur kernel. In Example density field is blurred by gaussian with radius of 0,2.

houdini_pyro_gas_blur.gif|400

Gas Buoyancy

Calculates an approximate buoyancy force dependent on the temperature field and updates a velocity field according to that force. In example gas buoyancy is driven by temperature. While left one’s temperature is static, right one’s temperature is advected by velocity hence buoyancy force is diffused through time.

Buoyancy force = ((l * (T-Ta)) * B
Ta = Given an ambient temperature
T= Temperature T
l = Buoyancy lift
B = buoyancy direction

houdini_pyro_gas_buoyancy.gif|400

Gas Vortex Boost

Applies confinement to a specific band of energy captured from the velocity field. Confinement force is applied for undoing the diffusion by amplifying existing vortices

houdini_pyro_gas_vortex.gif|500

Gas Particle to Field

The Gas Particle to Field DOP copies a point attribute value from a particle system into a field. In example below, N attribute of points added to velocity field. Accumulated checkbox enables to replace or add to existing field.

houdini_pyro_gas_particle2field.jpg|400

Gas Field to Particle

Calculates the field value for each particle in the geometry. The resulting field values is then mixed with the particle’s attribute value to get the new attribute value. In example below particles stores density and velocity field of simulation. As post solution process, low dens particles are removed and color given based on velocity.

houdini_pyro_gas_field2particle.gif|400

Color Diffusion

In following example, color is imported as vector field to simulation and diffused together.

houdini_pyro_gas_color_diffusion.jpg|400

  1. SOP Scalar Field for density import
  2. SOP Vector Field for velocity import
  3. SOP Vector Field for color import
  4. Gas Resize
  5. SOP Solver for merging source color field for first 15 frames
  6. SOP Solver for merging source density field for first 15 frames
  7. Gas Diffuse
  8. Gas Blur
  9. Gas Turbulence
  10. Gas Advect nodes for velocity advect color density and itself

houdini_pyro_gas_color_diffuse.gif|400

Gas Analysis

In following example Gas Analysis micro solver is used in order to calculate curl and curvature fields for more detailed fluid shape.

CurlandCurvature.gif

  1. Importing points to sim.
  2. Particles advected by velocity.
  3. Normal curl and curvature fields are matched with reference vel field.
  4. Gas Particle to Fieldparticle normals transfered to field with normal name.
  5. Gas Analysis: curl analyses has been applied on normal field, output is curl
  6. GasAnalysis2: curvature analyses has been applie to curl field, output is curvature
  7. Gas Field Vop: inside vop, curl and curvature fields added to velocity field.

gasMatch-analyse.jpg

More information about Gas Analysis micro solver, little bit Houdini help and little bit Wikipedia;

Gas Analysis The Gas Analysis DOP computes various analytic properties of the input field to produce the output field.

The Gas Match Field DOP creates, resizes, and resamples as necessary to ensure the data matching the given name exists as a field of the same resolution and size as the reference field. In this example this node is used to match curl, normal and curvature fields with vel field.

References