## 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\) |