A finiteVolume patch using a polyPatch and a fvBoundaryMesh. More...
Public Types | |
typedef fvBoundaryMesh | BoundaryMesh |
The boundary type associated with the patch. More... | |
Public 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... | |
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 > | |
tmp< Field< Type > > | patchInternalField (const UList< Type > &, const labelUList &faceCells) const |
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 |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | patchInternalField (const UList< Type > &f, const labelUList &faceCells) 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... | |
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.
|
virtual |
Make patch weighting factors.
Reimplemented in cyclicFvPatch, cyclicACMIFvPatch, cyclicAMIFvPatch, processorFvPatch, and coupledFvPatch.
Definition at line 170 of file fvPatch.C.
References fvPatch::makeWeights().
Referenced by fvPatch::makeWeights().
|
virtual |
Correct patch deltaCoeffs.
Reimplemented in cyclicAMIFvPatch, and mappedVariableThicknessWallFvPatch.
Definition at line 176 of file fvPatch.C.
References fvPatch::makeDeltaCoeffs().
Referenced by fvPatch::makeDeltaCoeffs().
|
virtual |
Correct patch non-ortho deltaCoeffs.
Reimplemented in cyclicAMIFvPatch.
|
virtual |
Correct patch non-ortho correction vectors.
Reimplemented in cyclicAMIFvPatch.
|
virtual |
Initialise the patches for moving points.
Definition at line 188 of file fvPatch.C.
Referenced by cyclicFaPatch::initMovePoints(), mappedPolyPatch::initMovePoints(), mappedWallPolyPatch::initMovePoints(), cyclicPolyPatch::initMovePoints(), oldCyclicPolyPatch::initMovePoints(), and cyclicACMIPolyPatch::initMovePoints().
|
virtual |
Correct patches after moving points.
Reimplemented in cyclicACMIFvPatch, and cyclicAMIFvPatch.
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 34 of file fvPatchNew.C.
References DebugInFunction, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInLookup, and fvPatch::patch().
|
static |
Lookup the polyPatch index on corresponding fvMesh.
Definition at line 49 of file fvPatch.C.
References fvMesh::boundary(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, DimensionedField< Type, GeoMesh >::mesh(), Foam::nl, and p.
|
inline |
Return the polyPatch.
Definition at line 167 of file fvPatch.H.
Referenced by reconstructedDistanceFunction::constructRDF(), Foam::evaluateConstraintTypes(), fvMeshSubset::interpolate(), mappedVariableThicknessWallFvPatch::makeDeltaCoeffs(), inverseDistance::markBoundaries(), trackingInverseDistance::markBoundaries(), cyclicACMIFvPatch::movePoints(), fvPatch::New(), parseDriver::pointSize(), cyclicACMIFvPatch::resetPatchAreas(), parseDriver::size(), activeBaffleVelocityFvPatchVectorField::updateCoeffs(), activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs(), outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs(), and regionSizeDistribution::write().
|
inlinevirtual |
Return name.
Definition at line 173 of file fvPatch.H.
References patchIdentifier::name().
Referenced by advectiveFvPatchField< Type >::advectiveFvPatchField(), fieldExtents::calcFieldExtents(), cyclicACMIFvPatchField< Type >::cyclicACMIFvPatchField(), cyclicAMIFvPatchField< Type >::cyclicAMIFvPatchField(), cyclicFvPatchField< Type >::cyclicFvPatchField(), wallHeatFlux::execute(), genericFvPatchField< Type >::genericFvPatchField(), genericFvsPatchField< Type >::genericFvsPatchField(), meshToMesh0::interpolate(), fvPatch::lookupPatchField(), processorCyclicFvPatchField< Type >::processorCyclicFvPatchField(), processorFvPatchField< Type >::processorFvPatchField(), symmetryFvPatchField< Type >::symmetryFvPatchField(), symmetryPlaneFvPatchField< Type >::symmetryPlaneFvPatchField(), fvMeshDistribute::testField(), cyclicACMIFvPatch::updateAreas(), mappedFlowRateFvPatchVectorField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs(), thermalBaffle1DFvPatchScalarField< solidType >::updateCoeffs(), wedgeFvPatchField< Type >::wedgeFvPatchField(), and wallShearStress::write().
|
inlinevirtual |
Return start label of this patch in the polyMesh face list.
Definition at line 179 of file fvPatch.H.
References polyPatch::start().
Referenced by CentredFitSnGradData< Polynomial >::calcFit(), LeastSquaresGrad< Type, Stencil >::calcGrad(), extendedCellToFaceStencil::collectData(), extendedFaceToCellStencil::collectData(), adjointBoundaryCondition< Type >::computePatchGrad(), inverseFaceDistanceDiffusivity::correct(), inversePointDistanceDiffusivity::correct(), pointLinear< Type >::correction(), fvMeshSubset::interpolate(), dynamicRefineFvMesh::mapFields(), fvMeshAdder::MapSurfaceField(), Foam::oversetAdjustPhi(), fvPatch::patchSlice(), fvMeshDistribute::testField(), mappedFixedInternalValueFvPatchField< Type >::updateCoeffs(), mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), extendedCellToFaceStencil::weightedSum(), and extendedUpwindCellToFaceStencil::weightedSum().
|
inlinevirtual |
Return size.
Reimplemented in emptyFvPatch.
Definition at line 185 of file fvPatch.H.
Referenced by boundaryAdjointContribution::adjointTMVariable1Source(), boundaryAdjointContribution::adjointTMVariable2Source(), boundaryAdjointContribution::dJdGradU(), boundaryAdjointContribution::dJdnut(), fvMeshSubset::interpolate(), boundaryAdjointContributionIncompressible::laminarDiffusivity(), fvPatch::patchSlice(), fvPatchMapper::size(), boundaryAdjointContributionIncompressible::sumContributions(), boundaryAdjointContributionIncompressible::thermalDiffusion(), boundaryAdjointContribution::TMVariable1(), boundaryAdjointContribution::TMVariable1Diffusion(), boundaryAdjointContribution::TMVariable2(), boundaryAdjointContribution::TMVariable2Diffusion(), and liquidFilmBase::Up().
|
inlinevirtual |
Return true if this patch is coupled.
Reimplemented in coupledFvPatch, cyclicACMIFvPatch, cyclicAMIFvPatch, and processorFvPatch.
Definition at line 191 of file fvPatch.H.
References polyPatch::coupled().
|
static |
Return a list of all the constraint patch types.
Definition at line 91 of file fvPatch.C.
References forAllConstIters, and List< T >::setSize().
|
inline |
Return the index of this patch in the fvBoundaryMesh.
Definition at line 203 of file fvPatch.H.
References patchIdentifier::index().
Referenced by atmEpsilonWallFunctionFvPatchScalarField::calculate(), atmOmegaWallFunctionFvPatchScalarField::calculate(), cyclicACMIFvsPatchField< Type >::cyclicACMIFvsPatchField(), cyclicAMIFvsPatchField< Type >::cyclicAMIFvsPatchField(), cyclicFvsPatchField< Type >::cyclicFvsPatchField(), emptyFvsPatchField< Type >::emptyFvsPatchField(), boundaryAdjointContributionIncompressible::laminarDiffusivity(), boundaryAdjointContributionIncompressible::momentumDiffusion(), cyclicAMIFvPatch::movePoints(), boundaryAdjointContributionIncompressible::pab(), boundaryAdjointContributionIncompressible::pb(), boundaryAdjointContributionIncompressible::phiab(), boundaryAdjointContributionIncompressible::phib(), boundaryAdjointContributionIncompressible::pressureSource(), processorCyclicFvsPatchField< Type >::processorCyclicFvsPatchField(), processorFvsPatchField< Type >::processorFvsPatchField(), boundaryAdjointContributionIncompressible::sumContributions(), symmetryFvsPatchField< Type >::symmetryFvsPatchField(), symmetryPlaneFvsPatchField< Type >::symmetryPlaneFvsPatchField(), boundaryAdjointContributionIncompressible::tangentVelocitySource(), boundaryAdjointContributionIncompressible::TMVariable1(), boundaryAdjointContributionIncompressible::TMVariable1Diffusion(), boundaryAdjointContributionIncompressible::TMVariable2(), boundaryAdjointContributionIncompressible::TMVariable2Diffusion(), boundaryAdjointContributionIncompressible::turbulentDiffusivity(), boundaryAdjointContributionIncompressible::Uab(), boundaryAdjointContributionIncompressible::Ub(), liquidFilmBase::Up(), velocityFilmShellFvPatchVectorField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), liquidFilmBase::Uw(), boundaryAdjointContributionIncompressible::velocitySource(), boundaryAdjointContributionIncompressible::wallDistance(), and wedgeFvsPatchField< Type >::wedgeFvsPatchField().
|
inline |
Return boundaryMesh reference.
Definition at line 209 of file fvPatch.H.
Referenced by fvPatch::lookupPatchField(), waWallFunctionFvPatchScalarField::manipulateMatrix(), parseDriver::mesh(), parseDriver::parseDriver(), and outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs().
Slice list to patch.
Definition at line 216 of file fvPatch.H.
References fvPatch::size(), and fvPatch::start().
Referenced by fvFieldDecomposer::reset().
|
virtual |
Return faceCells.
Reimplemented in coupledFvPatch, emptyFvPatch, and oversetFvPatch.
Definition at line 113 of file fvPatch.C.
Referenced by curvatureSeparation::calcCosAngle(), atmEpsilonWallFunctionFvPatchScalarField::calculate(), atmOmegaWallFunctionFvPatchScalarField::calculate(), epsilonWallFunctionFvPatchScalarField::calculateTurbulenceFields(), omegaWallFunctionFvPatchScalarField::calculateTurbulenceFields(), inverseFaceDistanceDiffusivity::correct(), inversePointDistanceDiffusivity::correct(), LRR< BasicTurbulenceModel >::correct(), SSG< BasicTurbulenceModel >::correct(), contactAngleForce::correct(), ThermalPhaseChangePhaseSystem< BasePhaseSystem >::correctInterfaceThermo(), pointLinear< Type >::correction(), coupledFvPatch::faceCells(), cellVolumeWeight::findHoles(), inverseDistance::findHoles(), waWallFunctionFvPatchScalarField::manipulateMatrix(), inverseDistance::markBoundaries(), trackingInverseDistance::markBoundaries(), cellVolumeWeight::markPatchCells(), Foam::oversetAdjustPhi(), and fvPatch::patchInternalField().
const Foam::vectorField & Cf | ( | ) | const |
Return face centres.
Definition at line 119 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 125 of file fvPatch.C.
References forAll, boundaryMesh::mesh(), and Time::New().
const Foam::vectorField & Sf | ( | ) | const |
Return face area vectors.
Definition at line 150 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 156 of file fvPatch.C.
References boundaryMesh::mesh().
Referenced by parseDriver::areaAverage(), parseDriver::areaSum(), cyclicACMIFvPatch::movePoints(), cyclicAMIFvPatch::movePoints(), cyclicACMIFvPatch::resetPatchAreas(), activeBaffleVelocityFvPatchVectorField::updateCoeffs(), activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs(), outletMappedUniformInletFvPatchField< Type >::updateCoeffs(), and outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs().
Foam::tmp< Foam::vectorField > nf | ( | ) | const |
Return face normals.
Definition at line 144 of file fvPatch.C.
Referenced by curvatureSeparation::calcCosAngle(), ReynoldsAnalogy::Cf(), cyclicFvPatch::makeWeights(), cyclicACMIFvPatch::makeWeights(), cyclicAMIFvPatch::makeWeights(), processorFvPatch::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 cyclicFvPatch, cyclicACMIFvPatch, cyclicAMIFvPatch, processorFvPatch, and coupledFvPatch.
const Foam::scalarField & weights | ( | ) | const |
Return patch weighting factors.
Definition at line 202 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 196 of file fvPatch.C.
References boundaryMesh::mesh().
Referenced by contactAngleForce::correct(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs(), and turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs().
Return given internal field next to patch as patch field.
Referenced by fvPatch::patchInternalField().
tmp< Field< Type > > patchInternalField | ( | const UList< Type > & | , |
const labelUList & | faceCells | ||
) | const |
Return given internal field next to patch as patch field using faceCells mapping
Return given internal field next to patch as patch field.
Definition at line 63 of file fvPatchTemplates.C.
References f(), forAll, and List< T >::resize().
const GeometricField::Patch & patchField | ( | const GeometricField & | gf | ) | const |
Return the corresponding patchField of the named field.
Definition at line 81 of file fvPatchTemplates.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField().
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 33 of file fvPatchFvMeshTemplates.C.
References fvPatch::boundaryMesh(), mesh, and fvPatch::name().
Referenced by semiPermeableBaffleMassFractionFvPatchScalarField::phiY(), mappedFlowRateFvPatchVectorField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs(), and turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs().
Foam::tmp< Foam::Field< Type > > patchInternalField | ( | const UList< Type > & | f | ) | const |
Definition at line 34 of file fvPatchTemplates.C.
References f(), fvPatch::faceCells(), and fvPatch::patchInternalField().
Foam::tmp< Foam::Field< Type > > patchInternalField | ( | const UList< Type > & | f, |
const labelUList & | faceCells | ||
) | const |
Definition at line 44 of file fvPatchTemplates.C.
References f(), forAll, and Foam::New().
|
friend |
|
friend |