Solver: pisoFoam Description
pisoFoam is a pressure-based solver designed for transient simulations of incompressible flow. It handles laminar and turbulent, single-phase flows under isothermal conditions, accommodating both Newtonian and non-Newtonian fluids.
The solver uses the PISO (Pressure-Implicit with Splitting of Operators) algorithm for pressure-momentum coupling, critical in dynamic flow scenarios. It supports both Multiple Reference Frames (MRF) and porosity modeling and allows easy integration of passive scalar transport equations and source terms.
Applications of the solver are extensive, including, but not limited to, airfoil aerodynamics, airflow around vehicles, urban and architectural simulation for wind comfort, piping systems, and valve and pump simulations.
Solver: pisoFoam Features
- Transient
- Incompressible
- Single-Phase
- Low-Speed Flows
- PISO Algorithm
- Subsonic Flow (Ma < 0.3)
- Laminar and Turbulent (RANS, LES, DES)
- Newtonian and Non-Newtonian Fluid
- Pressure-Based Solver
- Rotating Objects:
- Multiple Reference Frames (MRF)
- Passive Scalar
- Porosity Modeling
- Source Term (explicit/implicit)
- Solution Limiters:
- Velocity Damping
Solver: pisoFoam Application
Piping
- Flow through the Venturi Tube
- Mixing at Pipe Joints
Urban
- Wind Patterns
Aerodynamics
- Flow over Airfoil
Solver: pisoFoam Incompressible Solvers
Incompressible Solvers In this group, we have included single-phase, pressure-based solvers for low-speed flows with negligible variations in density, applicable for external and internal aerodynamics (Ma < 0.3) and hydrodynamics. These solvers use incompressibility features for stability and robustness.
Incompressible, Stedy-State - Main Solvers
- simpleFoam steady-state, SIMPLE algorithm
- overSimpleFoam extension of simpleFoam with Overset
- SRFSimpleFoam variant of simpleFoam resolved in SRF
Incompressible, Transient - Main Solvers
- pimpleFoam transient, PIMPLE algorithm, DyM
- overPimpleDyMFoam extension of pimpleFoam with Overset, DyM
- SRFPimpleFoam variant of pimpleFoam resolved in SRF
Incompressible, Transient - Simplified Solvers*
- * Dedicated solvers for simplified scenarios, improve stability and computational efficiency
- ** The PISO algorithm is used for cases with a small Courant number Co < 1
- DyM - Dynamic Mesh
- MRF - Multiple Reference Frame
- SRF - Single Reference Frame
- Overset - also known as Chimera Grid (Method)
- SIMPLE - Semi-Implicit Method for Pressure-Linked Equations
- PIMPLE - merged PISO and SIMPLE
- PISO - Pressure-Implicit Split-Operator
Solver: pisoFoam Tutorial
- Simulation of Von Kármán vortex street formation through 2D water flow around a cylinder, demonstrating parametrization options.
Solver: pisoFoam Results Fields
This solver provides the following results fields:
- Primary Results Fields - quantities produced by the solver as default outputs
- Derivative Results - quantities that can be computed based on primary results and supplementary models. They are not initially produced by the solver as default outputs.
Primary Results Fields
Velocity | \(U\) [\(\frac{m}{s}\)] |
Kinematic Pressure \(p/\rho\) | \(p\) [\(\frac{m^{2}}{s^{2}}\)] |
Kinematic Pressure It is a pressure normalized by density. To obtain pressure in Pascals [Pa], multiply kinematic pressure by the fluid’s reference density. Read More: Kinematic Fluid Properties
Derivative Results
Pressure | \(P\) [\(Pa\)] |
Vorticity | \(\omega\) [\(\frac{1}{s}\)] |
Courant Number | \(Co\) [\(-\)] |
Peclet Number | \(Pe\) [\(-\)] |
Stream Function | \(\psi\) [\(\frac{m^2}{s}\)] |
Q Criterion | \(Q\) [\(-\)] |
Wall Functions (for RANS/LES turbulence) | \(y^+\) [\(-\)] |
Wall Shear Stress | \(WSS\) [\(Pa\)] |
Turbulent Fields (for RANS/LES turbulence) | \(k\) \(\epsilon\) \(\omega\) \(R\) \(L\) \(I\) \(\nu_t\) \(\alpha_t\) |
Volumetric Stream | \(\phi\) [\(\frac{m^{3}}{s}\)] |
Passive Scalar | \(scalar_i\) [\(-\)] |
Forces and Torque acting on the Boundary | \(F\) [\(N\)] \(M\) [\(-\)] |
Force Coefficients | \(C_l\) [\(-\)] \(C_d\) [\(-\)] \(C_m\) [\(-\)] |
Average, Minimum or Maximum in Volume from any Result Field | \(Avg\) \(Min\) \(Max\) |