Skip to content

Solver Interface

Adam O'Brien edited this page Feb 14, 2017 · 5 revisions

#About

The purpose of the Solver interface is to group equations, interpolations and auxillary field computations that belong together. For example, the SIMPLE method of Patankar and Spalding involves solving the momentum equation, performing a momentum interpolation to obtain cell face velocities, solving the pressure equation and then correcting the pressures and velocities. The Piso class, derived from the Solver interface, is responsible for ensuring all of these intermediate steps are performed in the correct order.

#Implemented Solvers

The following solver classes are currently available, and are available through various executable modules built from Phase.

##Poisson

The simplest solver in Phase, this solver simply solves the Poisson equation on an arbitrary domain.

##Piso

Piso is the single phase implementation of the Piso scheme. Its use is primarily for the solution of steady state fluid problems. Allows for the relaxation of the momentum equation for enhanced stability. Can be executed via:

mpirun -np <num procs> phasePiso

##FractionalStep

The FractionalStep solver used a second-order balanced force implementation of the projection method to efficiently solve unsteady Navier-Stokes equations. Can be executed via:

mpirun -np <num procs> phaseFractionalStep

##PisoMultiphase

A multiphase implementation of the Piso solver. Fairly similar, but adds a surface tension term to the momentum equation, solves the advection equation for a volume fraction field using a low dissipation CICSAM scheme and supports variable density/viscosity fields. Can be executed via:

mpirun -np <num procs> phasePisoMultiphase

##FractionalStepMultiphase

Similar to PisoMultiphase, but uses a projection method for momentum/pressure. Executed viaL

mpirun -np <num procs> phaseFractionalStepMultiphase
Clone this wiki locally