A finiteVolume patch using a polyPatch and a fvBoundaryMesh. More...
Public Types | |
typedef fvBoundaryMesh | BoundaryMesh |
Public Member Functions | |
TypeName (polyPatch::typeName_()) | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, fvPatch, polyPatch,(const polyPatch &patch, const fvBoundaryMesh &bm),(patch, bm)) | |
fvPatch (const polyPatch &, const fvBoundaryMesh &) | |
Construct from polyPatch and fvBoundaryMesh. More... | |
virtual | ~fvPatch () |
Destructor. More... | |
const polyPatch & | patch () const |
Return the polyPatch. More... | |
virtual const word & | name () const |
Return name. More... | |
virtual label | start () const |
Return start label of this patch in the polyMesh face list. More... | |
virtual label | size () const |
Return size. More... | |
virtual bool | coupled () const |
Return true if this patch is coupled. More... | |
label | index () const |
Return the index of this patch in the fvBoundaryMesh. More... | |
const fvBoundaryMesh & | boundaryMesh () const |
Return boundaryMesh reference. More... | |
template<class T > | |
const List< T >::subList | patchSlice (const List< T > &l) const |
Slice list to patch. More... | |
virtual const labelUList & | faceCells () const |
Return faceCells. More... | |
const vectorField & | Cf () const |
Return face centres. More... | |
tmp< vectorField > | Cn () const |
Return neighbour cell centres. More... | |
const vectorField & | Sf () const |
Return face area vectors. More... | |
const scalarField & | magSf () const |
Return face area magnitudes. More... | |
tmp< vectorField > | nf () const |
Return face normals. More... | |
virtual tmp< vectorField > | delta () const |
const scalarField & | weights () const |
Return patch weighting factors. More... | |
const scalarField & | deltaCoeffs () const |
template<class Type > | |
tmp< Field< Type > > | patchInternalField (const UList< Type > &) const |
Return given internal field next to patch as patch field. More... | |
template<class Type > | |
void | patchInternalField (const UList< Type > &, Field< Type > &) const |
Return given internal field next to patch as patch field. More... | |
template<class GeometricField , class Type > | |
const GeometricField::Patch & | patchField (const GeometricField &) const |
Return the corresponding patchField of the named field. More... | |
template<class GeometricField , class Type > | |
const GeometricField::Patch & | lookupPatchField (const word &name, const GeometricField *=nullptr, const Type *=nullptr) const |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | patchInternalField (const UList< Type > &f) const |
Static Public Member Functions | |
static autoPtr< fvPatch > | New (const polyPatch &, const fvBoundaryMesh &) |
Return a pointer to a new patch created on freestore from polyPatch. More... | |
static const fvPatch & | lookupPatch (const polyPatch &p) |
Lookup the polyPatch index on corresponding fvMesh. More... | |
static bool | constraintType (const word &pt) |
Return true if the given type is a constraint type. More... | |
static wordList | constraintTypes () |
Return a list of all the constraint patch types. More... | |
Protected Member Functions | |
virtual void | makeWeights (scalarField &) const |
Make patch weighting factors. More... | |
virtual void | makeDeltaCoeffs (scalarField &) const |
Correct patch deltaCoeffs. More... | |
virtual void | makeNonOrthoDeltaCoeffs (scalarField &) const |
Correct patch non-ortho deltaCoeffs. More... | |
virtual void | makeNonOrthoCorrVectors (vectorField &) const |
Correct patch non-ortho correction vectors. More... | |
virtual void | initMovePoints () |
Initialise the patches for moving points. More... | |
virtual void | movePoints () |
Correct patches after moving points. More... | |
fvPatch (const fvPatch &)=delete | |
No copy construct. More... | |
void | operator= (const fvPatch &)=delete |
No copy assignment. More... | |
Friends | |
class | fvBoundaryMesh |
class | surfaceInterpolation |
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
typedef fvBoundaryMesh BoundaryMesh |
fvPatch | ( | const polyPatch & | p, |
const fvBoundaryMesh & | bm | ||
) |
Construct from polyPatch and fvBoundaryMesh.
|
protectedvirtual |
Make patch weighting factors.
Reimplemented in coupledFvPatch, cyclicACMIFvPatch, cyclicFvPatch, cyclicAMIFvPatch, and processorFvPatch.
Definition at line 164 of file fvPatch.C.
Referenced by cyclicAMIFvPatch::makeWeights(), and cyclicACMIFvPatch::makeWeights().
|
protectedvirtual |
Correct patch deltaCoeffs.
Reimplemented in mappedVariableThicknessWallFvPatch, and cyclicAMIFvPatch.
|
protectedvirtual |
Correct patch non-ortho deltaCoeffs.
Reimplemented in cyclicAMIFvPatch.
|
protectedvirtual |
Correct patch non-ortho correction vectors.
Reimplemented in cyclicAMIFvPatch.
|
protectedvirtual |
|
protectedvirtual |
Correct patches after moving points.
Reimplemented in cyclicAMIFvPatch, and cyclicACMIFvPatch.
|
protecteddelete |
No copy assignment.
TypeName | ( | polyPatch::typeName_() | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
fvPatch | , | ||
polyPatch | , | ||
(const polyPatch &patch, const fvBoundaryMesh &bm) | , | ||
(patch, bm) | |||
) |
|
static |
Return a pointer to a new patch created on freestore from polyPatch.
Definition at line 35 of file fvPatchNew.C.
References DebugInFunction, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInLookup, and Foam::foamVersion::patch.
Referenced by fvMeshAdder::add(), and meshRefinement::appendPatch().
|
static |
Lookup the polyPatch index on corresponding fvMesh.
Definition at line 49 of file fvPatch.C.
References fvMesh::boundary(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::nl, and p.
|
inline |
Return the polyPatch.
Definition at line 157 of file fvPatch.H.
Referenced by reconstructedDistanceFunction::constructRDF(), Foam::evaluateConstraintTypes(), mappedVariableThicknessWallFvPatch::makeDeltaCoeffs(), trackingInverseDistance::markBoundaries(), inverseDistance::markBoundaries(), cyclicACMIFvPatch::movePoints(), parseDriver::pointSize(), cyclicACMIFvPatch::resetPatchAreas(), parseDriver::size(), outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs(), activeBaffleVelocityFvPatchVectorField::updateCoeffs(), activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs(), and regionSizeDistribution::write().
|
inlinevirtual |
Return name.
Definition at line 163 of file fvPatch.H.
References patchIdentifier::name().
Referenced by fieldExtents::calcFieldExtents(), wallHeatFlux::execute(), meshToMesh0::interpolate(), fvMeshDistribute::testField(), totalFlowRateAdvectiveDiffusiveFvPatchScalarField::updateCoeffs(), mappedFlowRateFvPatchVectorField::updateCoeffs(), turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs(), thermalBaffle1DFvPatchScalarField< solidType >::updateCoeffs(), porousBafflePressureFvPatchField< Type >::updateCoeffs(), humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs(), and wallShearStress::write().
|
inlinevirtual |
Return start label of this patch in the polyMesh face list.
Definition at line 169 of file fvPatch.H.
References polyPatch::start().
Referenced by CentredFitSnGradData< Polynomial >::calcFit(), inverseFaceDistanceDiffusivity::correct(), inversePointDistanceDiffusivity::correct(), pointLinear< Type >::correction(), dynamicRefineFvMesh::mapFields(), Foam::oversetAdjustPhi(), fvPatch::patchSlice(), fvMeshDistribute::testField(), and mappedVelocityFluxFixedValueFvPatchField::updateCoeffs().
|
inlinevirtual |
Return size.
Reimplemented in emptyFvPatch.
Definition at line 175 of file fvPatch.H.
Referenced by boundaryAdjointContribution::adjointTMVariable1Source(), boundaryAdjointContribution::adjointTMVariable2Source(), cyclicAMIFvPatch::coupled(), boundaryAdjointContributionIncompressible::laminarDiffusivity(), boundaryAdjointContributionIncompressible::momentumDiffusion(), fvPatch::patchSlice(), fvPatchMapper::size(), boundaryAdjointContributionIncompressible::thermalDiffusion(), boundaryAdjointContribution::TMVariable1(), boundaryAdjointContributionIncompressible::TMVariable1(), boundaryAdjointContribution::TMVariable1Diffusion(), boundaryAdjointContributionIncompressible::TMVariable2(), boundaryAdjointContribution::TMVariable2(), boundaryAdjointContribution::TMVariable2Diffusion(), and boundaryAdjointContributionIncompressible::wallDistance().
|
inlinevirtual |
Return true if this patch is coupled.
Reimplemented in cyclicAMIFvPatch, cyclicACMIFvPatch, processorFvPatch, and coupledFvPatch.
Definition at line 181 of file fvPatch.H.
References polyPatch::coupled().
|
static |
Return a list of all the constraint patch types.
Definition at line 87 of file fvPatch.C.
References forAllConstIters().
|
inline |
Return the index of this patch in the fvBoundaryMesh.
Definition at line 193 of file fvPatch.H.
References patchIdentifier::index().
Referenced by boundaryAdjointContributionIncompressible::laminarDiffusivity(), boundaryAdjointContributionIncompressible::momentumDiffusion(), cyclicAMIFvPatch::movePoints(), boundaryAdjointContributionIncompressible::pab(), boundaryAdjointContributionIncompressible::pb(), boundaryAdjointContributionIncompressible::phiab(), boundaryAdjointContributionIncompressible::phib(), boundaryAdjointContributionIncompressible::pressureSource(), boundaryAdjointContributionIncompressible::tangentVelocitySource(), boundaryAdjointContributionIncompressible::TMVariable1(), boundaryAdjointContributionIncompressible::TMVariable1Diffusion(), boundaryAdjointContributionIncompressible::TMVariable2(), boundaryAdjointContributionIncompressible::TMVariable2Diffusion(), boundaryAdjointContributionIncompressible::turbulentDiffusivity(), boundaryAdjointContributionIncompressible::Uab(), boundaryAdjointContributionIncompressible::Ub(), energyJumpFvPatchScalarField::updateCoeffs(), energyJumpAMIFvPatchScalarField::updateCoeffs(), totalFlowRateAdvectiveDiffusiveFvPatchScalarField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), kLowReWallFunctionFvPatchScalarField::updateCoeffs(), boundaryAdjointContributionIncompressible::velocitySource(), and boundaryAdjointContributionIncompressible::wallDistance().
|
inline |
Return boundaryMesh reference.
Definition at line 199 of file fvPatch.H.
Referenced by parseDriver::mesh(), cyclicFvPatch::neighbFvPatch(), cyclicACMIFvPatch::neighbFvPatch(), cyclicAMIFvPatch::neighbFvPatch(), cyclicFvPatch::neighbPatch(), cyclicACMIFvPatch::neighbPatch(), cyclicAMIFvPatch::neighbPatch(), cyclicACMIFvPatch::nonOverlapPatch(), totalFlowRateAdvectiveDiffusiveFvPatchScalarField::updateCoeffs(), outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs(), and porousBafflePressureFvPatchField< Type >::updateCoeffs().
Slice list to patch.
Definition at line 206 of file fvPatch.H.
References fvPatch::size(), and fvPatch::start().
Referenced by fvFieldDecomposer::fvFieldDecomposer().
|
virtual |
Return faceCells.
Reimplemented in coupledFvPatch, oversetFvPatch, and emptyFvPatch.
Definition at line 107 of file fvPatch.C.
Referenced by curvatureSeparation::calcCosAngle(), epsilonWallFunctionFvPatchScalarField::calculateTurbulenceFields(), omegaWallFunctionFvPatchScalarField::calculateTurbulenceFields(), inverseFaceDistanceDiffusivity::correct(), inversePointDistanceDiffusivity::correct(), contactAngleForce::correct(), SSG< BasicTurbulenceModel >::correct(), LRR< BasicTurbulenceModel >::correct(), ThermalPhaseChangePhaseSystem< BasePhaseSystem >::correctInterfaceThermo(), pointLinear< Type >::correction(), coupledFvPatch::faceCells(), cellVolumeWeight::findHoles(), inverseDistance::findHoles(), trackingInverseDistance::markBoundaries(), inverseDistance::markBoundaries(), cellVolumeWeight::markPatchCells(), Foam::oversetAdjustPhi(), energyJumpAMIFvPatchScalarField::updateCoeffs(), energyJumpFvPatchScalarField::updateCoeffs(), and kLowReWallFunctionFvPatchScalarField::updateCoeffs().
const Foam::vectorField & Cf | ( | ) | const |
Return face centres.
Definition at line 113 of file fvPatch.C.
References boundaryMesh::mesh().
Referenced by fieldExtents::calcFieldExtents(), meshToMesh0::interpolate(), cyclicAMIFvPatch::movePoints(), and cyclicACMIFvPatch::resetPatchAreas().
Foam::tmp< Foam::vectorField > Cn | ( | ) | const |
Return neighbour cell centres.
Definition at line 119 of file fvPatch.C.
References forAll, boundaryMesh::mesh(), and tmp< T >::New().
const Foam::vectorField & Sf | ( | ) | const |
Return face area vectors.
Definition at line 144 of file fvPatch.C.
References boundaryMesh::mesh().
Referenced by cyclicAMIFvPatch::movePoints(), cyclicACMIFvPatch::resetPatchAreas(), activeBaffleVelocityFvPatchVectorField::updateCoeffs(), and activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs().
const Foam::scalarField & magSf | ( | ) | const |
Return face area magnitudes.
Definition at line 150 of file fvPatch.C.
References boundaryMesh::mesh().
Referenced by parseDriver::areaAverage(), parseDriver::areaSum(), parseDriver::field_faceArea(), cyclicACMIFvPatch::movePoints(), cyclicAMIFvPatch::movePoints(), cyclicACMIFvPatch::resetPatchAreas(), totalFlowRateAdvectiveDiffusiveFvPatchScalarField::updateCoeffs(), outletMappedUniformInletFvPatchField< Type >::updateCoeffs(), outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs(), activeBaffleVelocityFvPatchVectorField::updateCoeffs(), and activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs().
Foam::tmp< Foam::vectorField > nf | ( | ) | const |
Return face normals.
Definition at line 138 of file fvPatch.C.
Referenced by curvatureSeparation::calcCosAngle(), ReynoldsAnalogy::Cf(), processorFvPatch::makeWeights(), cyclicFvPatch::makeWeights(), cyclicAMIFvPatch::makeWeights(), cyclicACMIFvPatch::makeWeights(), boundaryAdjointContributionIncompressible::pressureSource(), and boundaryAdjointContributionIncompressible::tangentVelocitySource().
|
virtual |
Return cell-centre to face-centre vector except for coupled patches for which the cell-centre to coupled-cell-centre vector is returned
Reimplemented in coupledFvPatch, cyclicAMIFvPatch, cyclicACMIFvPatch, processorFvPatch, and cyclicFvPatch.
const Foam::scalarField & weights | ( | ) | const |
Return patch weighting factors.
Definition at line 196 of file fvPatch.C.
References boundaryMesh::mesh().
const Foam::scalarField & deltaCoeffs | ( | ) | const |
Return the face - cell distance coefficient except for coupled patches for which the cell-centre to coupled-cell-centre distance coefficient is returned
Definition at line 190 of file fvPatch.C.
References boundaryMesh::mesh().
Referenced by contactAngleForce::correct(), totalFlowRateAdvectiveDiffusiveFvPatchScalarField::updateCoeffs(), turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs(), and humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs().
Return given internal field next to patch as patch field.
Return given internal field next to patch as patch field.
Definition at line 54 of file fvPatchTemplates.C.
const GeometricField::Patch & patchField | ( | const GeometricField & | gf | ) | const |
Return the corresponding patchField of the named field.
Definition at line 72 of file fvPatchTemplates.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField().
Referenced by porousBafflePressureFvPatchField< Type >::updateCoeffs().
const GeometricField::Patch & lookupPatchField | ( | const word & | name, |
const GeometricField * | = nullptr , |
||
const Type * | = nullptr |
||
) | const |
Lookup and return the patchField of the named field from the local objectRegistry.
N.B. The dummy pointer arguments are used if this function is instantiated within a templated function to avoid a bug in gcc. See inletOutletFvPatchField.C and outletInletFvPatchField.C
Definition at line 34 of file fvPatchFvMeshTemplates.C.
References mesh, and Foam::name().
Referenced by semiPermeableBaffleMassFractionFvPatchScalarField::phiY(), totalFlowRateAdvectiveDiffusiveFvPatchScalarField::updateCoeffs(), mappedFlowRateFvPatchVectorField::updateCoeffs(), turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs(), porousBafflePressureFvPatchField< Type >::updateCoeffs(), and humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs().
Foam::tmp<Foam::Field<Type> > patchInternalField | ( | const UList< Type > & | f | ) | const |
Definition at line 34 of file fvPatchTemplates.C.
References f(), forAll, and tmp< T >::ref().
|
friend |
|
friend |