semiPermeableBaffleMassFractionFvPatchScalarField Class Reference

This is a mass-fraction boundary condition for a semi-permeable baffle. More...

Inheritance diagram for semiPermeableBaffleMassFractionFvPatchScalarField:
Collaboration diagram for semiPermeableBaffleMassFractionFvPatchScalarField:

Public Member Functions

 TypeName ("semiPermeableBaffleMassFraction")
 Runtime type information. More...
 
 semiPermeableBaffleMassFractionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 semiPermeableBaffleMassFractionFvPatchScalarField (const semiPermeableBaffleMassFractionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given fixedValueTypeFvPatchField. More...
 
 semiPermeableBaffleMassFractionFvPatchScalarField (const semiPermeableBaffleMassFractionFvPatchScalarField &)=delete
 Disallow copy without setting internal field reference. More...
 
 semiPermeableBaffleMassFractionFvPatchScalarField (const semiPermeableBaffleMassFractionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual tmp< fvPatchScalarFieldclone (const DimensionedField< scalar, volMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
virtual tmp< scalarFieldcalcPhiYp () const
 Return the flux of this species through the baffle. More...
 
virtual void write (Ostream &) const
 Write. More...
 
- Public Member Functions inherited from specieTransferMassFractionFvPatchScalarField
 specieTransferMassFractionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 specieTransferMassFractionFvPatchScalarField (const specieTransferMassFractionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 specieTransferMassFractionFvPatchScalarField (const specieTransferMassFractionFvPatchScalarField &)=delete
 Disallow copy without setting internal field reference. More...
 
 specieTransferMassFractionFvPatchScalarField (const specieTransferMassFractionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual void map (const fvPatchScalarField &, const fvPatchFieldMapper &)
 Map the given fvPatchField onto this fvPatchField. More...
 
virtual void reset (const fvPatchScalarField &)
 Reset the fvPatchField to the given fvPatchField. More...
 
virtual const scalarFieldphiYp () const
 Return the flux of this species. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 

Additional Inherited Members

- Public Types inherited from specieTransferMassFractionFvPatchScalarField
enum  property { massFraction , moleFraction , molarConcentration , partialPressure }
 Enumeration for the property driving the transfer. More...
 
- Static Public Member Functions inherited from specieTransferMassFractionFvPatchScalarField
static const basicSpecieMixturecomposition (const objectRegistry &db)
 Access the composition for the given database. More...
 
- Static Public Attributes inherited from specieTransferMassFractionFvPatchScalarField
static const NamedEnum< property, 4 > propertyNames_
 Property type names. More...
 
- Protected Attributes inherited from specieTransferMassFractionFvPatchScalarField
const scalar c_
 Transfer coefficient. More...
 
const property property_
 Property driving the transfer. More...
 

Detailed Description

This is a mass-fraction boundary condition for a semi-permeable baffle.

This condition models a baffle which is permeable to a some species and impermeable to others. It must be used in conjunction with a specieTransferVelocityFvPatchVectorField velocity condition, and a specieTransferTemperatureFvPatchScalarField temperature condition.

The mass flux of a species is calculated as a coefficient multiplied by the difference in a property across the baffle.

\[ \phi_{Yi} = c A (\psi_i - \psi_{i,n}) \]

where

$ \phi_{Yi} $ = Flux of the permeable specie [kg/s]
$ c $ = Transfer coefficient [kg/m^2/s/<property-dimensions>]
$ A $ = Patch face area [m^2]
$ \psi_i $ = Property on the patch [<property-dimensions>]
$ \psi_{i,n} $ = Property on the neighbour patch [<property-dimensions>]

A species that the baffle is permeable to will, therefore, have a coefficient greater than zero, whilst a species that does not transfer will have a coefficient equal to zero.

Usage
Property Description Req'd? Default
c Transfer coefficient no 0
property Property used to drive the transfer; massFraction, moleFraction, molarConcentration, or partialPressure if c is non-zero
phi Name of the flux field no phi
U Name of the velocity field no U

Example of the boundary condition specification:

    <patchName>
    {
        type            semiPermeableBaffleMassFraction;
        property        molarConcentration;
        c               1e-3;
        value           $internalField;
    }
See also
Foam::specieTransferMassFractionFvPatchScalarField Foam::specieTransferVelocityFvPatchVectorField Foam::specieTransferTemperatureFvPatchScalarField
Source files

Definition at line 143 of file semiPermeableBaffleMassFractionFvPatchScalarField.H.

Constructor & Destructor Documentation

◆ semiPermeableBaffleMassFractionFvPatchScalarField() [1/4]

semiPermeableBaffleMassFractionFvPatchScalarField ( const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF,
const dictionary dict 
)

Construct from patch, internal field and dictionary.

Definition at line 37 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.

References dict, mappedPatchBase::from::differentPatch, and mappedPatchBase::validateMapForField().

Here is the call graph for this function:

◆ semiPermeableBaffleMassFractionFvPatchScalarField() [2/4]

Construct by mapping given fixedValueTypeFvPatchField.

onto a new patch

Definition at line 57 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.

◆ semiPermeableBaffleMassFractionFvPatchScalarField() [3/4]

Disallow copy without setting internal field reference.

◆ semiPermeableBaffleMassFractionFvPatchScalarField() [4/4]

Copy constructor setting internal field reference.

Definition at line 70 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "semiPermeableBaffleMassFraction"  )

Runtime type information.

◆ clone()

virtual tmp<fvPatchScalarField> clone ( const DimensionedField< scalar, volMesh > &  iF) const
inlinevirtual

Construct and return a clone setting internal field reference.

Definition at line 187 of file semiPermeableBaffleMassFractionFvPatchScalarField.H.

◆ calcPhiYp()

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from specieTransferMassFractionFvPatchScalarField.

Definition at line 195 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.

References specieTransferMassFractionFvPatchScalarField::write(), and Foam::writeEntry().

Here is the call graph for this function:

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