Go to the documentation of this file.
78 const label nbrPolyPatchId_;
99 void operator=(
const faPatch&) =
delete;
228 return static_cast<const labelList&
>(*this);
241 label
nEdges() const noexcept
243 return labelList::size();
249 return nbrPolyPatchId_;
265 virtual label
size()
const
267 return labelList::size();
271 inline label
whichEdge(
const label l)
const
384 template<
class GeometricField,
class Type>
395 template<
class GeometricField,
class Type>
400 const Type* =
nullptr
static autoPtr< T > New(Args &&... args)
Construct autoPtr of T with forwarding arguments.
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.
void resetEdges(const UList< label > &newEdges)
Reset the list of edges (use with caution)
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
Number of patch points.
tmp< Field< Type > > patchInternalField(const UList< Type > &) const
Return given internal field next to patch as patch field.
const faBoundaryMesh & boundaryMesh() const noexcept
Return boundaryMesh reference.
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.
const labelList & edgeLabels() const noexcept
Return the list of edges.
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.
Identifies a patch by name and index, with optional physical type and group information.
labelList boundaryProcs() const
virtual void makeDeltaCoeffs(scalarField &) const
Make patch edge - neighbour face distances.
TypeName("patch")
Runtime type information.
const vectorField & edgeCentres() const
Return edge centres.
label nEdges() const noexcept
Number of edge labels (boundary edges) addressed by this patch.
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.
List< labelPair > boundaryProcSizes() const
void makeCorrectionVectors(vectorField &) const
label index() const noexcept
The index of this patch in the boundaryMesh.
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.
List< labelPair > boundaryConnections() const
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.
const word & name() const noexcept
The patch name.
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< T > > 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.
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 ngbPolyPatchIndex() const noexcept
The neighbour polyPatch index.
label whichEdge(const label l) const
Return label of edge in patch from global edge label.
virtual label size() const
Patch size is the number of edge labels.