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


Public Member Functions | |
| TypeName ("semiPermeableBaffleMassFraction") | |
| Runtime type information. More... | |
| semiPermeableBaffleMassFractionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
| Construct from patch and internal field. More... | |
| semiPermeableBaffleMassFractionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
| Construct from patch, internal field and dictionary. More... | |
| semiPermeableBaffleMassFractionFvPatchScalarField (const this_bctype &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
| Construct by mapping onto a new patch. More... | |
| semiPermeableBaffleMassFractionFvPatchScalarField (const this_bctype &, const DimensionedField< scalar, volMesh > &) | |
| Construct as copy setting internal field reference. More... | |
| semiPermeableBaffleMassFractionFvPatchScalarField (const this_bctype &)=delete | |
| No copy without an internal field. More... | |
| virtual tmp< fvPatchField< scalar > > | clone (const DimensionedField< scalar, volMesh > &iF) const |
| Clone with an internal field reference. More... | |
| tmp< scalarField > | phiY () const |
| Return the flux of this species through the baffle. More... | |
| virtual void | updateCoeffs () |
| Update the coefficients associated with the patch field. More... | |
| virtual void | write (Ostream &) const |
| Write. More... | |
Public Member Functions inherited from mappedPatchBase | |
| TypeName ("mappedPatchBase") | |
| Runtime type information. More... | |
| mappedPatchBase (const polyPatch &) | |
| Construct from patch. More... | |
| mappedPatchBase (const polyPatch &pp, const word &sampleRegion, const sampleMode sampleMode, const word &samplePatch, const vectorField &offsets) | |
| Construct with offsetMode=non-uniform. More... | |
| mappedPatchBase (const polyPatch &pp, const word &sampleRegion, const sampleMode sampleMode, const word &samplePatch, const vector &uniformOffset) | |
| Construct from offsetMode=uniform. More... | |
| mappedPatchBase (const polyPatch &pp, const word &sampleRegion, const sampleMode sampleMode, const word &samplePatch, const scalar normalDistance) | |
| Construct from offsetMode=normal and distance. More... | |
| mappedPatchBase (const polyPatch &, const dictionary &) | |
| Construct from dictionary. More... | |
| mappedPatchBase (const polyPatch &, const sampleMode, const dictionary &) | |
| Construct from dictionary and (collocated) sample mode. More... | |
| mappedPatchBase (const polyPatch &, const mappedPatchBase &) | |
| Construct as copy, resetting patch. More... | |
| mappedPatchBase (const polyPatch &, const mappedPatchBase &, const labelUList &mapAddressing) | |
| Construct as copy, resetting patch, map original data. More... | |
| virtual | ~mappedPatchBase () |
| Destructor. More... | |
| void | clearOut () |
| void | setOffset (const scalar normalDist) |
| Change to normal offset with given distance. More... | |
| void | setOffset (const vector &uniformOffset) |
| Change to uniform offset with value. More... | |
| void | setOffset (const vectorField &offsets) |
| Change to non-uniform offsets. More... | |
| sampleMode | mode () const noexcept |
| What to sample. More... | |
| const word & | sampleWorld () const noexcept |
| World to sample. More... | |
| const word & | sampleRegion () const |
| Region to sample. More... | |
| const word & | samplePatch () const |
| Patch (only if NEARESTPATCHFACE) More... | |
| const word & | coupleGroup () const |
| PatchGroup (only if NEARESTPATCHFACE) More... | |
| label | sampleSize () const |
| Return size of mapped mesh/patch/boundary. More... | |
| const vector & | offset () const noexcept |
| Offset vector (from patch faces to destination mesh objects) More... | |
| const vectorField & | offsets () const noexcept |
| Offset vectors (from patch faces to destination mesh objects) More... | |
| label | getCommunicator () const |
| Get the communicator (worldComm or world-to-world) More... | |
| label | comm () const |
| Identical to getCommunicator() More... | |
| bool | sameWorld () const |
| Is sample world the local world? More... | |
| bool | masterWorld () const |
| Is my world ordered before the sampleWorld? More... | |
| bool | sameRegion () const noexcept |
| Cached sampleRegion != mesh.name() More... | |
| uniformDimensionedScalarField & | updateSampleMeshTime () const |
| Local mesh update time. More... | |
| uniformDimensionedScalarField & | updateMeshTime () const |
| Sample mesh upate time. More... | |
| bool | upToDate () const |
| const mapDistribute & | map () const |
| Return reference to the parallel distribution map. More... | |
| const AMIPatchToPatchInterpolation & | AMI (const bool forceUpdate=false) const |
| Return reference to the AMI interpolator. More... | |
| bool | owner () const |
| Is it owner. More... | |
| const autoPtr< Foam::searchableSurface > & | surfPtr () const |
| Return a pointer to the AMI projection surface. More... | |
| const polyMesh & | sampleMesh () const |
| Get the region mesh. More... | |
| const polyPatch & | samplePolyPatch () const |
| Get the patch on the region. More... | |
| tmp< pointField > | samplePoints () const |
| Get the sample points. More... | |
| const fileName & | sampleDatabasePath () const |
| bool | sampleDatabase () const noexcept |
| virtual fileName | sendPath (const label proci) const |
| virtual fileName | receivePath (const label proci) const |
| template<class Type > | |
| void | distribute (List< Type > &lst) const |
| Wrapper around map/interpolate data distribution. More... | |
| template<class Type , class CombineOp > | |
| void | distribute (List< Type > &lst, const CombineOp &cop) const |
| Wrapper around map/interpolate data distribution with operation. More... | |
| template<class Type > | |
| void | reverseDistribute (List< Type > &lst) const |
| Wrapper around map/interpolate data distribution. More... | |
| template<class Type , class CombineOp > | |
| void | reverseDistribute (List< Type > &lst, const CombineOp &cop) const |
| Wrapper around map/interpolate data distribution with operation. More... | |
Additional Inherited Members | |
Public Types inherited from mappedPatchBase | |
| enum | sampleMode { NEARESTCELL, NEARESTPATCHFACE, NEARESTPATCHFACEAMI, NEARESTPATCHPOINT, NEARESTFACE, NEARESTONLYCELL } |
| Mesh items to sample. More... | |
| enum | offsetMode { UNIFORM, NONUNIFORM, NORMAL } |
| How to project face centres. More... | |
| typedef Tuple2< pointIndexHit, Tuple2< scalar, label > > | nearInfo |
| Helper class for finding nearest. More... | |
| typedef Tuple2< nearInfo, label > | nearInfoWorld |
| nearest + world More... | |
Static Public Member Functions inherited from mappedPatchBase | |
| static pointIndexHit | facePoint (const polyMesh &, const label facei, const polyMesh::cellDecomposition) |
| Get a point on the face given a face decomposition method: More... | |
| static fileName | sendPath (const fileName &root, const label proci) |
| Helper: return path to store data to be sent to processor i. More... | |
| static fileName | receivePath (const fileName &root, const label proci) |
| Helper: return path to store data to be received from processor i. More... | |
| static FOAM_NO_DANGLING_REFERENCE const objectRegistry & | subRegistry (const objectRegistry &obr, const fileName &path) |
| Lookup (sub)objectRegistry from '/' separated path (relative to objectRegistry). Creates non-existing intermediate ones. More... | |
| template<class Type > | |
| static void | storeField (objectRegistry &obr, const word &fieldName, const Field< Type > &values) |
| Store an IOField on the objectRegistry relative to obr. More... | |
| static void | writeDict (const objectRegistry &obr, dictionary &dict) |
| Convert objectRegistry contents into dictionary. More... | |
| static void | readDict (const dictionary &d, objectRegistry &obr) |
| (recursively) construct and register IOFields from dictionary More... | |
Static Public Attributes inherited from mappedPatchBase | |
| static const Enum< sampleMode > | sampleModeNames_ |
| static const Enum< offsetMode > | offsetModeNames_ |
Protected Member Functions inherited from mappedPatchBase | |
| virtual void | initGeometry (PstreamBuffers &) |
| Initialise the calculation of the patch geometry. More... | |
| virtual void | calcGeometry (PstreamBuffers &) |
| Calculate the patch geometry. More... | |
| virtual void | initMovePoints (PstreamBuffers &, const pointField &) |
| Initialise the patches for moving points. More... | |
| virtual void | movePoints (PstreamBuffers &, const pointField &) |
| Correct patches after moving points. More... | |
| virtual void | initUpdateMesh (PstreamBuffers &) |
| Initialise the update of the patch topology. More... | |
| virtual void | updateMesh (PstreamBuffers &) |
| Update of the patch topology. More... | |
| bool | addWorldConnection () |
| Add a world-world connection. More... | |
| label | getWorldCommunicator () const |
| Get the communicator for the world-world connection. More... | |
| const polyMesh & | lookupMesh (const word ®ion) const |
| Lookup mesh. More... | |
| const polyPatch & | lookupPatch (const word &sampleRegion, const word &samplePatch) const |
| Lookup patch. More... | |
| tmp< pointField > | facePoints (const polyPatch &) const |
| Get the points from face-centre-decomposition face centres and project them onto the face-diagonal-decomposition triangles. More... | |
| void | collectSamples (const label mySampleWorld, const pointField &facePoints, pointField &samples, labelList &patchFaceWorlds, labelList &patchFaceProcs, labelList &patchFaces, pointField &patchFc) const |
| Collect single list of samples and originating processor+face + wanted world. More... | |
| void | findLocalSamples (const sampleMode mode, const label sampleWorld, const word &sampleRegion, const word &samplePatch, const pointField &samplePoints, List< nearInfoWorld > &nearest) const |
| Find (local) cells/faces containing samples. More... | |
| void | findSamples (const sampleMode mode, const label myWorldIndex, const pointField &, const labelList &wantedWorlds, const labelList &origProcs, labelList &sampleProcs, labelList &sampleIndices, pointField &sampleLocations) const |
| Find (global) cells/faces containing samples. More... | |
| tmp< pointField > | samplePoints (const pointField &) const |
| Get the sample points given the face points. More... | |
| void | calcMapping () const |
| Calculate mapping. More... | |
| void | calcAMI () const |
| Calculate AMI interpolator. More... | |
Static Protected Member Functions inherited from mappedPatchBase | |
| static autoPtr< fileName > | readDatabase (const dictionary &dict) |
| Read optional database name from dictionary. More... | |
| static FOAM_NO_DANGLING_REFERENCE const objectRegistry & | subRegistry (const objectRegistry &obr, const wordList &names, const label index) |
| Lookup (sub)objectRegistry by following names of sub registries. Creates non-existing intermediate ones. More... | |
| template<class Type > | |
| static bool | writeIOField (const regIOobject &obj, dictionary &dict) |
| Attempt to detect an IOField<Type> and write to dictionary. More... | |
| template<class Type > | |
| static bool | constructIOField (const word &name, token &tok, Istream &is, objectRegistry &obr) |
| Attempt to read an IOField<Type> and store on objectRegistry. More... | |
Protected Attributes inherited from mappedPatchBase | |
| const polyPatch & | patch_ |
| Patch to sample. More... | |
| word | sampleWorld_ |
| World to sample. More... | |
| word | sampleRegion_ |
| Region to sample. More... | |
| const sampleMode | mode_ |
| What to sample. More... | |
| word | samplePatch_ |
| Patch (if in sampleMode NEARESTPATCH*) More... | |
| const coupleGroupIdentifier | coupleGroup_ |
| PatchGroup (if in sampleMode NEARESTPATCH*) More... | |
| const autoPtr< fileName > | sampleDatabasePtr_ |
| Empty or location of database. More... | |
| offsetMode | offsetMode_ |
| How to obtain samples. More... | |
| vector | offset_ |
| Offset vector (uniform) More... | |
| vectorField | offsets_ |
| Offset vector (nonuniform) More... | |
| scalar | distance_ |
| Offset distance (normal) More... | |
| label | communicator_ |
| Communicator. More... | |
| bool | sameRegion_ |
| Same region. More... | |
| autoPtr< mapDistribute > | mapPtr_ |
| Communication schedule: More... | |
| const bool | AMIReverse_ |
| Flag to indicate that slave patch should be reversed for AMI. More... | |
| autoPtr< AMIPatchToPatchInterpolation > | AMIPtr_ |
| Pointer to AMI interpolator. More... | |
| autoPtr< searchableSurface > | surfPtr_ |
| Pointer to projection surface employed by AMI interpolator. More... | |
| dictionary | surfDict_ |
| Dictionary storing projection surface description. More... | |
| autoPtr< uniformDimensionedScalarField > | updateMeshTimePtr_ |
| Local mesh update time. More... | |
| autoPtr< uniformDimensionedScalarField > | updateSampleMeshTimePtr_ |
| Sample mesh update time. More... | |
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 the corresponding velocity condition, semiPermeableBaffleVelocityFvPatchVectorField.
The mass flux of a species is calculated as a coefficient multiplied by the difference in mass fraction across the baffle.
where
| = | flux of the permeable species [kg/s] |
| = | transfer coefficient [kg/m2/s] |
| = | patch face area [m2] |
| = | mass fraction on the patch [] |
| = | mass fraction on the neighbour patch [] |
A species that the baffle is permable to will, therefore, have a coefficient greater than zero, whilst a species that does not transfer will have a coefficient equal to zero.
This condition calculates the species flux. The fluxes are summed up by the velocity consition to generate the net mass transfer across the baffle. This mass-fraction condition then generates a corrective diffusive flux to ensure that the correct amounts of the permeable species are transferred.
| Property | Description | Req'd? | Default |
|---|---|---|---|
c | Transfer coefficient | no | 0 |
phi | Name of the flux field | no | phi |
Definition at line 123 of file semiPermeableBaffleMassFractionFvPatchScalarField.H.
| semiPermeableBaffleMassFractionFvPatchScalarField | ( | const fvPatch & | p, |
| const DimensionedField< scalar, volMesh > & | iF | ||
| ) |
Construct from patch and internal field.
Definition at line 33 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.
References Foam::Zero.
| semiPermeableBaffleMassFractionFvPatchScalarField | ( | const fvPatch & | p, |
| const DimensionedField< scalar, volMesh > & | iF, | ||
| const dictionary & | dict | ||
| ) |
Construct from patch, internal field and dictionary.
Definition at line 51 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.
References dict, and Foam::Zero.
| semiPermeableBaffleMassFractionFvPatchScalarField | ( | const this_bctype & | ptf, |
| const fvPatch & | p, | ||
| const DimensionedField< scalar, volMesh > & | iF, | ||
| const fvPatchFieldMapper & | mapper | ||
| ) |
Construct by mapping onto a new patch.
Definition at line 72 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.
| semiPermeableBaffleMassFractionFvPatchScalarField | ( | const this_bctype & | ptf, |
| const DimensionedField< scalar, volMesh > & | iF | ||
| ) |
Construct as copy setting internal field reference.
Definition at line 88 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.
|
delete |
No copy without an internal field.
| TypeName | ( | "semiPermeableBaffleMassFraction" | ) |
Runtime type information.
|
inlinevirtual |
Clone with an internal field reference.
Definition at line 205 of file semiPermeableBaffleMassFractionFvPatchScalarField.H.
References fvPatchField< Type >::Clone().

| Foam::tmp< Foam::scalarField > phiY | ( | ) | const |
Return the flux of this species through the baffle.
Definition at line 103 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.
References mapDistribute::distribute(), patchIdentifier::index(), fvPatch::lookupPatchField(), mappedPatchBase::map(), tmp< T >::New(), Foam::foamVersion::patch, mappedPatchBase::samplePolyPatch(), and Foam::Zero.

|
virtual |
Update the coefficients associated with the patch field.
Definition at line 123 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.
References Foam::foamVersion::patch, and turbulenceModel::propertiesName.
|
virtual |
Write.
Reimplemented from mappedPatchBase.
Definition at line 149 of file semiPermeableBaffleMassFractionFvPatchScalarField.C.
References mappedPatchBase::write(), fvPatchField< Type >::write(), Ostream::writeEntryIfDifferent(), and fvPatchField< Type >::writeValueEntry().
