MomentumTransferPhaseSystem< BasePhaseSystem > Class Template Reference

Class which models interfacial momentum transfer between a number of phases. Drag, virtual mass, lift, wall lubrication and turbulent dispersion are all modelled. The explicit contribution from the drag is omitted from the transfer matrices, as this forms part of the solution of the pressure equation. More...

Inheritance diagram for MomentumTransferPhaseSystem< BasePhaseSystem >:
Collaboration diagram for MomentumTransferPhaseSystem< BasePhaseSystem >:

Public Member Functions

 MomentumTransferPhaseSystem (const fvMesh &)
 Construct from fvMesh. More...
 
virtual ~MomentumTransferPhaseSystem ()
 Destructor. More...
 
virtual autoPtr< phaseSystem::momentumTransferTablemomentumTransfer ()
 Return the momentum transfer matrices for the cell-based algorithm. More...
 
virtual autoPtr< phaseSystem::momentumTransferTablemomentumTransferf ()
 As momentumTransfer, but for the face-based algorithm. More...
 
virtual PtrList< surfaceScalarFieldAFfs () const
 Return implicit force coefficients on the faces, for the face-based. More...
 
virtual PtrList< surfaceScalarFieldphiFs (const PtrList< volScalarField > &rAUs)
 Return the explicit force fluxes for the cell-based algorithm, that. More...
 
virtual PtrList< surfaceScalarFieldphiFfs (const PtrList< surfaceScalarField > &rAUfs)
 As phiFs, but for the face-based algorithm. More...
 
virtual PtrList< surfaceScalarFieldphiKdPhis (const PtrList< volScalarField > &rAUs) const
 Return the explicit drag force fluxes for the cell-based algorithm. More...
 
virtual PtrList< surfaceScalarFieldphiKdPhifs (const PtrList< surfaceScalarField > &rAUfs) const
 As phiKdPhis, but for the face-based algorithm. More...
 
virtual PtrList< volVectorFieldKdUByAs (const PtrList< volScalarField > &rAUs) const
 Return the explicit part of the drag force for the cell-based. More...
 
virtual void partialElimination (const PtrList< volScalarField > &rAUs, const PtrList< volVectorField > &KdUByAs, const PtrList< surfaceScalarField > &alphafs, const PtrList< surfaceScalarField > &phiKdPhis)
 Solve the drag system for the velocities and fluxes. More...
 
virtual void partialEliminationf (const PtrList< surfaceScalarField > &rAUfs, const PtrList< surfaceScalarField > &alphafs, const PtrList< surfaceScalarField > &phiKdPhifs)
 As partialElimination, but for the face-based algorithm. Only solves. More...
 
virtual PtrList< surfaceScalarFieldddtCorrByAs (const PtrList< volScalarField > &rAUs, const bool includeVirtualMass=false) const
 Return the flux corrections for the cell-based algorithm. These. More...
 
virtual bool implicitPhasePressure (const phaseModel &phase) const
 Returns true if the phase pressure is treated implicitly. More...
 
virtual bool implicitPhasePressure () const
 Returns true if the phase pressure is treated implicitly. More...
 
virtual PtrList< surfaceScalarFieldDByAfs (const PtrList< volScalarField > &rAUs, const PtrList< surfaceScalarField > &rAUfs) const
 Return the phase diffusivity. More...
 
virtual bool read ()
 Read base phaseProperties dictionary. More...
 

Protected Member Functions

void addDmdtUfs (const phaseSystem::dmdtfTable &dmdtfs, phaseSystem::momentumTransferTable &eqns)
 Add momentum transfer terms which result from bulk mass transfers. More...
 
virtual tmp< volScalarFieldKd (const phasePairKey &key) const
 Return the drag coefficient for the phase pair. More...
 
virtual tmp< surfaceScalarFieldKdf (const phasePairKey &key) const
 Return the face drag coefficient for the phase pair. More...
 
virtual tmp< volScalarFieldVm (const phasePairKey &key) const
 Return the virtual mass coefficient for the phase pair. More...
 

Detailed Description

template<class BasePhaseSystem>
class Foam::MomentumTransferPhaseSystem< BasePhaseSystem >

Class which models interfacial momentum transfer between a number of phases. Drag, virtual mass, lift, wall lubrication and turbulent dispersion are all modelled. The explicit contribution from the drag is omitted from the transfer matrices, as this forms part of the solution of the pressure equation.

Source files

Definition at line 64 of file MomentumTransferPhaseSystem.H.

Constructor & Destructor Documentation

◆ MomentumTransferPhaseSystem()

Construct from fvMesh.

◆ ~MomentumTransferPhaseSystem()

virtual ~MomentumTransferPhaseSystem ( )
virtual

Destructor.

Member Function Documentation

◆ addDmdtUfs()

void addDmdtUfs ( const phaseSystem::dmdtfTable dmdtfs,
phaseSystem::momentumTransferTable eqns 
)
protected

Add momentum transfer terms which result from bulk mass transfers.

◆ Kd()

virtual tmp<volScalarField> Kd ( const phasePairKey key) const
protectedvirtual

Return the drag coefficient for the phase pair.

◆ Kdf()

virtual tmp<surfaceScalarField> Kdf ( const phasePairKey key) const
protectedvirtual

Return the face drag coefficient for the phase pair.

◆ Vm()

virtual tmp<volScalarField> Vm ( const phasePairKey key) const
protectedvirtual

Return the virtual mass coefficient for the phase pair.

◆ momentumTransfer()

virtual autoPtr<phaseSystem::momentumTransferTable> momentumTransfer ( )
virtual

Return the momentum transfer matrices for the cell-based algorithm.

This includes implicit and explicit forces that add into the cell UEqn in the normal way.

◆ momentumTransferf()

virtual autoPtr<phaseSystem::momentumTransferTable> momentumTransferf ( )
virtual

As momentumTransfer, but for the face-based algorithm.

◆ AFfs()

virtual PtrList<surfaceScalarField> AFfs ( ) const
virtual

Return implicit force coefficients on the faces, for the face-based.

algorithm.

◆ phiFs()

virtual PtrList<surfaceScalarField> phiFs ( const PtrList< volScalarField > &  rAUs)
virtual

Return the explicit force fluxes for the cell-based algorithm, that.

do not depend on phase mass/volume fluxes, and can therefore be evaluated outside the corrector loop. This includes things like lift, turbulent dispersion, and wall lubrication.

◆ phiFfs()

virtual PtrList<surfaceScalarField> phiFfs ( const PtrList< surfaceScalarField > &  rAUfs)
virtual

As phiFs, but for the face-based algorithm.

◆ phiKdPhis()

virtual PtrList<surfaceScalarField> phiKdPhis ( const PtrList< volScalarField > &  rAUs) const
virtual

Return the explicit drag force fluxes for the cell-based algorithm.

These depend on phase mass/volume fluxes, and must therefore be evaluated inside the corrector loop.

◆ phiKdPhifs()

virtual PtrList<surfaceScalarField> phiKdPhifs ( const PtrList< surfaceScalarField > &  rAUfs) const
virtual

As phiKdPhis, but for the face-based algorithm.

◆ KdUByAs()

virtual PtrList<volVectorField> KdUByAs ( const PtrList< volScalarField > &  rAUs) const
virtual

Return the explicit part of the drag force for the cell-based.

algorithm. This is the cell-equivalent of phiKdPhis. These depend on phase velocities, and must therefore be evaluated inside the corrector loop.

◆ partialElimination()

virtual void partialElimination ( const PtrList< volScalarField > &  rAUs,
const PtrList< volVectorField > &  KdUByAs,
const PtrList< surfaceScalarField > &  alphafs,
const PtrList< surfaceScalarField > &  phiKdPhis 
)
virtual

Solve the drag system for the velocities and fluxes.

◆ partialEliminationf()

virtual void partialEliminationf ( const PtrList< surfaceScalarField > &  rAUfs,
const PtrList< surfaceScalarField > &  alphafs,
const PtrList< surfaceScalarField > &  phiKdPhifs 
)
virtual

As partialElimination, but for the face-based algorithm. Only solves.

for the fluxes.

◆ ddtCorrByAs()

virtual PtrList<surfaceScalarField> ddtCorrByAs ( const PtrList< volScalarField > &  rAUs,
const bool  includeVirtualMass = false 
) const
virtual

Return the flux corrections for the cell-based algorithm. These.

depend on phase mass/volume fluxes, and must therefore be evaluated inside the corrector loop.

◆ implicitPhasePressure() [1/2]

virtual bool implicitPhasePressure ( const phaseModel phase) const
virtual

Returns true if the phase pressure is treated implicitly.

in the phase fraction equation

◆ implicitPhasePressure() [2/2]

virtual bool implicitPhasePressure ( ) const
virtual

Returns true if the phase pressure is treated implicitly.

in the phase fraction equation for any phase

◆ DByAfs()

virtual PtrList<surfaceScalarField> DByAfs ( const PtrList< volScalarField > &  rAUs,
const PtrList< surfaceScalarField > &  rAUfs 
) const
virtual

Return the phase diffusivity.

divided by the momentum central coefficient

◆ read()

virtual bool read ( )
virtual

Read base phaseProperties dictionary.


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