87 fvPatch(
const fvPatch&) =
delete;
90 void operator=(
const fvPatch&) =
delete;
178 return polyPatch_.
name();
184 return polyPatch_.
index();
190 return polyPatch_.start();
196 return polyPatch_.offset();
200 virtual label
size()
const
202 return polyPatch_.size();
220 return boundaryMesh_;
328 template<
class GeometricField,
class AnyType =
bool>
334 template<
class GeometricField,
class AnyType =
bool>
340 template<
class GeometricField>
Generic GeometricField class.
PatchField< Type > Patch
The patch field type for the GeometricBoundaryField.
SubList< T > subList
Declare type of subList.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A fvBoundaryMesh is a fvPatch list with a reference to the associated fvMesh, with additional search ...
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
static wordList constraintTypes()
Return a list of all the constraint patch types.
virtual label size() const
Patch size is the number of faces, but can be overloaded.
virtual const word & name() const
Return name.
virtual ~fvPatch()
Destructor.
static const fvPatch & lookupPatch(const polyPatch &p)
Lookup the polyPatch index on corresponding fvMesh.
label offset() const noexcept
The offset of this patch within the boundary face list.
const polyPatch & patch() const noexcept
Return the polyPatch.
virtual bool coupled() const
Return true if this patch is coupled.
virtual void makeWeights(scalarField &) const
Make patch weighting factors.
static autoPtr< fvPatch > New(const polyPatch &, const fvBoundaryMesh &)
Return a pointer to a new patch created on freestore from polyPatch.
virtual void makeNonOrthoDeltaCoeffs(scalarField &) const
Correct patch non-ortho deltaCoeffs.
virtual void makeDeltaCoeffs(scalarField &) const
Correct patch deltaCoeffs.
virtual void movePoints()
Correct patches after moving points.
tmp< vectorField > Cn() const
Return neighbour cell centres.
const GeometricField::Patch * cfindPatchField(const word &name) const
Find the named field (if any) from the local registry and return the patch field corresponding to thi...
const GeometricField::Patch & patchField(const GeometricField &gf) const
Return the patch field of the GeometricField corresponding to this patch.
label index() const noexcept
The index of this patch in the boundary mesh.
declareRunTimeSelectionTable(autoPtr, fvPatch, polyPatch,(const polyPatch &patch, const fvBoundaryMesh &bm),(patch, bm))
const fvBoundaryMesh & boundaryMesh() const noexcept
Return boundaryMesh reference.
virtual tmp< vectorField > delta() const
Return cell-centre to face-centre vector except for coupled patches for which the cell-centre to coup...
virtual void initMovePoints()
Initialise the patches for moving points.
virtual void makeNonOrthoCorrVectors(vectorField &) const
Correct patch non-ortho correction vectors.
friend class surfaceInterpolation
const scalarField & magSf() const
Return face area magnitudes, like the fvMesh::magSf() method.
const scalarField & weights() const
Return patch weighting factors.
friend class fvBoundaryMesh
tmp< vectorField > unitSf() const
Return face unit normals, like the fvMesh::unitSf() method. Same as nf().
label start() const noexcept
The patch start within the polyMesh face list.
const List< T >::subList patchSlice(const UList< T > &values) const
This patch slice from the complete list, which has size mesh::nFaces(), using the virtual patch size.
tmp< vectorField > nf() const
Return face unit normals, like the fvMesh::unitSf() method Same as unitSf().
fvBoundaryMesh BoundaryMesh
The boundary type associated with the patch.
const vectorField & Cf() const
Return face centres.
void patchInternalField(const UList< Type > &internalData, const labelUList &addressing, UList< Type > &pfld) const
Extract internal field next to patch using specified addressing.
const List< T >::subList boundarySlice(const UList< T > &values) const
This patch slice from the list of boundary values, which has size mesh::nBoundaryFaces(),...
const scalarField & deltaCoeffs() const
Return the face - cell distance coefficient except for coupled patches for which the cell-centre to c...
TypeName(polyPatch::typeName_())
Runtime type information.
const vectorField & Sf() const
Return face area vectors, like the fvMesh::Sf() method.
static bool constraintType(const word &patchType)
Return true if the given type is a constraint type.
virtual const labelUList & faceCells() const
Return faceCells.
tmp< Field< Type > > patchInternalField(const UList< Type > &internalData) const
Return given internal field next to patch as patch field using faceCells() mapping.
const GeometricField::Patch & lookupPatchField(const word &name) const
Lookup the named field from the local registry and return the patch field corresponding to this patch...
label index() const noexcept
The index of this patch in the boundaryMesh.
const word & name() const noexcept
The patch name.
A patch is a list of labels that address the faces in the global face list.
virtual bool coupled() const
Return true if this patch is geometrically coupled (i.e. faces and.
Cell to surface interpolation scheme. Included in fvMesh.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
List< word > wordList
List of word.
PtrList< fvPatch > fvPatchList
Store lists of fvPatch as a PtrList.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Field< vector > vectorField
Specialisation of Field<T> for vector.
UList< label > labelUList
A UList of labels.
Specialisations of Field<T> for scalar, vector and tensor.
Macros to ease declaration of run-time selection tables.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes).
Basic run-time type information using word as the type's name. Used to enhance the standard RTTI to c...
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.