Go to the documentation of this file.
77 const label ngbPolyPatchIndex_;
101 void operator=(
const faPatch&) =
delete;
250 virtual label
size()
const
252 return labelList::size();
256 inline label
whichEdge(
const label l)
const
344 template<
class GeometricField,
class Type>
355 template<
class GeometricField,
class Type>
360 const Type* =
nullptr
static autoPtr< T > New(Args &&... args)
Construct autoPtr of T with forwarding arguments.
label ngbPolyPatchIndex() const
Return neighbour polyPatch index.
tmp< vectorField > edgeFaceCentres() const
Return neighbour face centres.
const labelListList & pointEdges() const
Return patch point-edge addressing.
A class for handling words, derived from Foam::string.
A class for managing temporary objects.
virtual void movePoints(const pointField &)
Correct patch after moving points.
const scalarField & deltaCoeffs() const
Return patch edge - neighbour face distances.
virtual void makeWeights(scalarField &) const
Make patch weighting factors.
A List obtained as a section of another List.
virtual void calcGeometry()
Calculate the patch geometry.
void calcPointLabels() const
Calculate patch point labels.
static autoPtr< faPatch > New(const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm)
label nPoints() const
Return number of patch points.
tmp< Field< Type > > patchInternalField(const UList< Type > &) const
Return given internal field next to patch as patch field.
virtual tmp< vectorField > delta() const
Return cell-centre to face-centre vector.
const scalarField & weights() const
Return patch weighting factors.
virtual void initUpdateMesh()
Initialise the update of the patch topology.
tmp< vectorField > ngbPolyPatchFaceNormals() const
Return normals of neighbour polyPatch faces.
const labelUList & edgeFaces() const
Return edge-face addressing.
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
Finite area boundary mesh.
virtual void initMovePoints(const pointField &)
Initialise the patches for moving points.
const faBoundaryMesh & boundaryMesh() const
Return boundaryMesh reference.
Identifies a patch by name, patch index and physical type.
virtual void makeDeltaCoeffs(scalarField &) const
Make patch edge - neighbour face distances.
TypeName("patch")
Runtime type information.
const vectorField & edgeCentres() const
Return edge centres.
labelList ngbPolyPatchFaces() const
Return edge neighbour polyPatch faces.
declareRunTimeSelectionTable(autoPtr, faPatch, dictionary,(const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm),(name, dict, index, bm))
SubList< T > subList
Declare type of subList.
const GeometricField::Patch & patchField(const GeometricField &) const
Return the corresponding patchField of the named field.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
List< T >::subList patchSlice(const List< T > &l) const
Slice list to patch.
void makeCorrectionVectors(vectorField &) const
label start() const
Patch start in edge list.
virtual bool coupled() const
Return true if this patch is coupled.
virtual void updateMesh()
Update of the patch topology.
virtual ~faPatch()
Destructor.
const labelList & pointLabels() const
Return patch point labels.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
const scalarField & magEdgeLengths() const
Return edge length magnitudes.
friend Ostream & operator<<(Ostream &, const faPatch &)
Macros to ease declaration of run-time selection tables.
virtual void write(Ostream &) const
Write.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
tmp< vectorField > edgeNormals() const
Return edge normals.
virtual void initGeometry()
Initialise the calculation of the patch geometry.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
autoPtr< List< label > > clone() const
Clone.
Generic GeometricField class.
tmp< vectorField > ngbPolyPatchPointNormals() const
Return normals of neighbour polyPatch joined points.
Finite area patch class. Used for 2-D non-Euclidian finite area method.
void resetEdges(const labelList &)
Reset edge list.
const word & name() const
The patch name.
label index() const
The index of this patch in the boundaryMesh.
const vectorField & edgeLengths() const
Return edge length vectors.
faBoundaryMesh BoundaryMesh
void calcPointEdges() const
Calculate patch point-edge addressing.
const GeometricField::Patch & lookupPatchField(const word &name, const GeometricField *=nullptr, const Type *=nullptr) const
label whichEdge(const label l) const
Return label of edge in patch from global edge label.
virtual label size() const
Patch size.