Public Member Functions | List of all members
isoAdvection Class Reference

An implementation of the isoAdvector geometric Volume-of-Fluid method advancing the provided volume fraction field (alpha1) in time using the given velocity field, U, and corresponding face fluxes, phi. More...

Public Member Functions

 TypeName ("isoAdvection")
 
 isoAdvection (volScalarField &alpha1, const surfaceScalarField &phi, const volVectorField &U)
 
virtual ~isoAdvection ()=default
 
template<class SpType , class SuType >
void advect (const SpType &Sp, const SuType &Su)
 
reconstructionSchemessurf () noexcept
 
const volScalarFieldalpha () const noexcept
 
const dictionarydict () const noexcept
 
void writeSurfaceCells () const
 
tmp< surfaceScalarFieldgetRhoPhi (const dimensionedScalar rho1, const dimensionedScalar rho2) const
 
tmp< surfaceScalarFieldgetRhoPhi (const volScalarField &rho1, const volScalarField &rho2)
 
const surfaceScalarFieldalphaPhi () const noexcept
 
scalar advectionTime () const noexcept
 
void writeIsoFaces (const DynamicList< List< point >> &isoFacePts) const
 

Detailed Description

An implementation of the isoAdvector geometric Volume-of-Fluid method advancing the provided volume fraction field (alpha1) in time using the given velocity field, U, and corresponding face fluxes, phi.

References:

Main isoAdvector idea:

    Roenby, J., Bredmose, H. and Jasak, H. (2016).
    A computational method for sharp interface advection
    Royal Society Open Science, 3
    doi 10.1098/rsos.160405

Calculation of rhoPhi:

    Roenby, J., Bredmose, H., & Jasak, H. (2019).
    IsoAdvector: Geometric VOF on general meshes.
    OpenFOAMĀ® (pp. 281-296). Springer, Cham.

Extension to porous media flows:

    Missios, K., Jacobsen, N. G., Moeller, K., & Roenby, J.
    Using the isoAdvector Geometric VOF Method for Interfacial Flows 
    Through Porous Media. MARINE 2021.

Original code supplied by Johan Roenby, DHI (2016) Modified Henning Scheufler, DLR

Source files

Definition at line 87 of file isoAdvection.H.

Constructor & Destructor Documentation

◆ isoAdvection()

isoAdvection ( volScalarField alpha1,
const surfaceScalarField phi,
const volVectorField U 
)

Definition at line 49 of file isoAdvection.C.

References Foam::expressions::patchExpr::debug, Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::gMax(), Foam::gMin(), and porosityProperties().

Here is the call graph for this function:

◆ ~isoAdvection()

virtual ~isoAdvection ( )
virtualdefault

Member Function Documentation

◆ TypeName()

TypeName ( "isoAdvection"  )

◆ advect()

void advect ( const SpType &  Sp,
const SuType &  Su 
)

◆ surf()

reconstructionSchemes& surf ( )
inlinenoexcept

Definition at line 330 of file isoAdvection.H.

◆ alpha()

const volScalarField& alpha ( ) const
inlinenoexcept

Definition at line 336 of file isoAdvection.H.

◆ dict()

const dictionary& dict ( ) const
inlinenoexcept

Definition at line 342 of file isoAdvection.H.

◆ writeSurfaceCells()

void writeSurfaceCells ( ) const

Definition at line 633 of file isoAdvection.C.

References HashSet::insert(), IOobject::NO_READ, and regIOobject::write().

Here is the call graph for this function:

◆ getRhoPhi() [1/2]

tmp<surfaceScalarField> getRhoPhi ( const dimensionedScalar  rho1,
const dimensionedScalar  rho2 
) const
inline

Definition at line 352 of file isoAdvection.H.

References TimeState::deltaT(), rho1, rho2, and fvMesh::time().

Here is the call graph for this function:

◆ getRhoPhi() [2/2]

tmp<surfaceScalarField> getRhoPhi ( const volScalarField rho1,
const volScalarField rho2 
)
inline

Definition at line 369 of file isoAdvection.H.

References Foam::fvc::interpolate(), rho1, and rho2.

Here is the call graph for this function:

◆ alphaPhi()

const surfaceScalarField& alphaPhi ( ) const
inlinenoexcept

Definition at line 386 of file isoAdvection.H.

◆ advectionTime()

scalar advectionTime ( ) const
inlinenoexcept

Definition at line 392 of file isoAdvection.H.

◆ writeIsoFaces()

void writeIsoFaces ( const DynamicList< List< point >> &  isoFacePts) const

The documentation for this class was generated from the following files: