|On this page|
Boundary conditions are omnipresent in fluid dynamics, and they represent the influence of the environment on the isolated solution model.
This means that boundary conditions occur, because a fluid simulation has to end when there is no coast or limiting container. The limit is the “water-water” boundary between the ocean waters of the simulation domain and the surrounding open water. An open boundary condition allows waves to pass out of the region without reflection. Open boundary conditions should also apply to incoming information such as incoming water.
Boundary conditions in fluids
Boundary conditions are required to ensure equilibrium between internal forces and the boundary of the simulation domain. In traditional FLIP fluid simulations, the domain’s boundaries have to be box-shaped. In Houdini’s SOP FLIP fluids, the domain container can have almost any shape. Even animated and deformed shapes are possible. For complex shapes, go to the FLIP Container SOP node’s Domain sub-pane, and turn off Implicit Bounds.
One aspect is to avoid wave reflections at the domain’s limits.
You can also simulate moving domains, for example in scenes where the domain is synchronized with the motion of a ship. The bow and stern waves will vanish at the domain’s boundaries.
Velocity or pressure information from external sources can be used to drive or up-res a simulation.
The FLIP Solver SOP node has a dropdown menu for Pressure Driven and Velocity Driven boundary types:
Pressure Driven boundaries (left) are, for example, suitable for open water simulations with waves escaping at the domain’s limits. This type is also better suited for moving domains and it tends to make fluids more splashy and turbulent.
Velocity Driven boundaries (right) are less splashy, but more stable.
Sources and sinks
Boundaries play an important role in the FLIP Boundary SOP nodes.
In the solver, the parameters of the Boundary Behavior sub-pane determine how particles behave, when they interact with the domain’s limits. When fluid particles interact with the domain’s boundaries, they are deleted. In scenes with a water surface, new particles are reseeded in a band around the domain to keep the number of particles constant. If you don’t want to create new particles at the domain’s boundaries, go to the FLIP Solver’s Fluid Behavior tab and turn off Reseeding.
Solver boundary conditions are only relevant for fluids, interacting with the domain’s limits. The domain itself is defined through the FLIP Container node. In scenes with fluid-object collisions, e.g. when you're pouring water into a glass, solver boundary conditions don’t have to be considered.
In sources and sinks, boundaries are related to the way how particles are created or removed. You can emit particles with a certain velocity or pressure. It’s also possible to define a pressure threshold, when sourcing should be stopped. By setting negative values for sinks, you create a suction effect, where particles are deleted.
It’s possible to inject a boundary flow through the solver’s 4th input. You can, for example, use the boundary flow from a low-res simulation and transfer it to a second solver to create a hi-res version. It’s also possible to connect other sources to the solver like an Ocean Spectrum SOP node, and simulate guided ocean surfaces.
In both examples above, the solver’s Waterline option has to be disabled. The solver will create fluid particles automatically based on the settings of the FLIP Container SOP. By default you see a narrow band surface. If the surface isn’t visible, make sure that the solver’s Boundary Behavior ▸ Initial Surface checkbox is turned on.