Finite area patch class. Used for 2-D non-Euclidian finite area method. More...
#include <faPatch.H>


Public Types | |
| typedef faBoundaryMesh | BoundaryMesh |
| The boundary type associated with the patch. | |
| Public Types inherited from List< label > | |
| typedef SubList< label > | subList |
| Declare type of subList. | |
| Public Types inherited from UList< label > | |
| typedef label | value_type |
| The value type the list contains. | |
| typedef label * | pointer |
| The pointer type for non-const access to value_type items. | |
| typedef const label * | const_pointer |
| The pointer type for const access to value_type items. | |
| typedef label & | reference |
| The type used for storing into value_type objects. | |
| typedef const label & | const_reference |
| The type used for reading from constant value_type objects. | |
| typedef label * | iterator |
| Random access iterator for traversing a UList. | |
| typedef const label * | const_iterator |
| Random access iterator for traversing a UList. | |
| typedef label | size_type |
| The type to represent the size of a UList. | |
| typedef label | difference_type |
| The difference between iterator objects. | |
| typedef std::reverse_iterator< iterator > | reverse_iterator |
| Reverse iterator (non-const access). | |
| typedef std::reverse_iterator< const_iterator > | const_reverse_iterator |
| Reverse iterator (const access). | |
| using | is_List |
| Have unique tag. | |
Public Member Functions | |
| TypeName ("patch") | |
| Runtime type information. | |
| declareRunTimeSelectionTable (autoPtr, faPatch, dictionary,(const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm, const word &patchType),(name, dict, index, bm, patchType)) | |
| faPatch (const word &name, const labelUList &edgeLabels, const label index, const faBoundaryMesh &bm, const label nbrPolyPatchi, const word &patchType) | |
| Construct from components. | |
| faPatch (const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm, const word &patchType) | |
| Construct from dictionary. | |
| faPatch (const faPatch &p, const faBoundaryMesh &bm) | |
| Copy construct, resetting the boundary mesh. | |
| faPatch (const faPatch &p, const faBoundaryMesh &bm, const label index, const labelUList &edgeLabels, const label nbrPolyPatchi) | |
| Copy construct, resetting boundary mesh and addressing. | |
| virtual autoPtr< faPatch > | clone (const faBoundaryMesh &bm) const |
| Construct and return a clone, resetting the boundary mesh. | |
| virtual autoPtr< faPatch > | clone (const faBoundaryMesh &bm, const labelUList &edgeLabels, const label index, const label nbrPolyPatchi) const |
| Construct and return a clone, resetting the edge list and boundary mesh. | |
| virtual | ~faPatch () |
| Destructor. | |
| const labelList & | edgeLabels () const noexcept |
| Return the list of edges. | |
| label | nPoints () const |
| Number of patch points. | |
| label | nEdges () const noexcept |
| Number of edge labels (boundary edges) addressed by this patch. | |
| label | ngbPolyPatchIndex () const noexcept |
| The neighbour polyPatch index. | |
| const faBoundaryMesh & | boundaryMesh () const noexcept |
| Return boundaryMesh reference. | |
| virtual bool | coupled () const |
| Return true if this patch is coupled. | |
| label | offset () const |
| The offset where this patch starts in the boundary edge list. | |
| label | start () const |
| Patch start in edge list. | |
| virtual label | size () const |
| Patch size is the number of edge labels, but can be overloaded. | |
| label | whichEdge (const label edgei) const |
| Return label of edge in patch from global edge label. | |
| template<class T> | |
| const List< T >::subList | patchSlice (const UList< T > &values) const |
| This patch slice from the complete list of values, which has size mesh::nEdges(), using the virtual patch size. | |
| template<class T> | |
| const List< T >::subList | boundarySlice (const UList< T > &values) const |
| This patch slice from the list of boundary values, which has size mesh::nBoundaryEdges(), using the virtual patch size. | |
| virtual void | write (Ostream &) const |
| Write. | |
| List< labelPair > | boundaryConnections () const |
| List of proc/face for the boundary edge neighbours in locally reordered edge numbering. | |
| labelList | boundaryProcs () const |
| Boundary edge neighbour processors (does not include own proc). | |
| List< labelPair > | boundaryProcSizes () const |
| List of proc/size for the boundary edge neighbour processors (does not include own proc). | |
| const labelList & | pointLabels () const |
| Return patch point labels. | |
| const labelListList & | pointEdges () const |
| Return patch point-edge addressing. | |
| tmp< vectorField > | ngbPolyPatchFaceNormals () const |
| Return normals of neighbour polyPatch faces. | |
| tmp< vectorField > | ngbPolyPatchPointNormals () const |
| Return normals of neighbour polyPatch joined points. | |
| const labelUList & | edgeFaces () const |
| Return edge-face addressing. | |
| const vectorField & | edgeCentres () const |
| Return edge centres. | |
| const vectorField & | edgeLengths () const |
| Return edge length vectors, like the faMesh::Le() method. | |
| const scalarField & | magEdgeLengths () const |
| Return edge length magnitudes, like the faMesh::magLe() method. | |
| tmp< vectorField > | edgeNormals () const |
| Return edge unit normals, like the faMesh::unitLe() method. | |
| tmp< vectorField > | edgeFaceCentres () const |
| Return neighbour face centres. | |
| virtual tmp< vectorField > | delta () const |
| Return cell-centre to face-centre vector. | |
| virtual void | makeWeights (scalarField &) const |
| Make patch weighting factors. | |
| const scalarField & | weights () const |
| Return patch weighting factors. | |
| virtual void | makeLPN (scalarField &) const |
| Make patch geodesic distance between P and N. | |
| const scalarField & | lPN () const |
| Return patch geodesic distance between P and N. | |
| virtual void | makeDeltaCoeffs (scalarField &) const |
| Make patch edge - neighbour face distances. | |
| const scalarField & | deltaCoeffs () const |
| Return patch edge - neighbour face distances. | |
| virtual void | makeCorrectionVectors (vectorField &) const |
| Make non-orthogonality correction vectors. | |
| const vectorField & | skewCorrectionVectors () const |
| Return patch skew-correction vectors. | |
| void | resetEdges (const labelUList &newEdges) |
| Reset the list of edges (use with caution). | |
| void | resetEdges (labelList &&newEdges) |
| Reset the list of edges (use with caution). | |
| template<class Type> | |
| void | patchInternalField (const UList< Type > &internalData, const labelUList &addressing, UList< Type > &pfld) const |
| Extract internal field next to patch using specified addressing. | |
| template<class Type> | |
| void | patchInternalField (const UList< Type > &internalData, UList< Type > &pfld) const |
| Extract internal field next to patch as patch field using edgeFaces() mapping. | |
| template<class Type> | |
| tmp< Field< Type > > | patchInternalField (const UList< Type > &internalData) const |
| Return given internal field next to patch as patch field using edgeFaces() mapping. | |
| template<class GeometricField, class AnyType = bool> | |
| const GeometricField::Patch & | patchField (const GeometricField &gf) const |
| Return the patch field of the GeometricField corresponding to this patch. | |
| template<class GeometricField, class AnyType = bool> | |
| const GeometricField::Patch & | lookupPatchField (const word &fldName) const |
| Lookup the named field from the local registry and return the patch field corresponding to this patch. | |
| template<class GeometricField> | |
| const GeometricField::Patch * | cfindPatchField (const word &fldName) const |
| Lookup the named field (if any) from the local registry and return the patch field corresponding to this patch. | |
| template<class Type> | |
| Foam::tmp< Foam::Field< Type > > | patchInternalField (const UList< Type > &internalData) const |
| Public Member Functions inherited from patchIdentifier | |
| patchIdentifier (const patchIdentifier &)=default | |
| Copy construct. | |
| patchIdentifier (patchIdentifier &&)=default | |
| Move construct. | |
| patchIdentifier & | operator= (const patchIdentifier &)=default |
| Copy assignment. | |
| patchIdentifier & | operator= (patchIdentifier &&)=default |
| Move assignment. | |
| virtual | ~patchIdentifier ()=default |
| Destructor. | |
| patchIdentifier () | |
| Default construct: name="", index=0. | |
| patchIdentifier (const word &name, const label index) | |
| Construct from mandatory components. | |
| patchIdentifier (const word &name, const label index, const word &physicalType, const wordList &inGroups=wordList()) | |
| Construct from components. | |
| patchIdentifier (const word &name, const dictionary &dict, const label index) | |
| Construct from dictionary. | |
| patchIdentifier (const patchIdentifier &ident, const label newIndex) | |
| Copy construct, resetting the index (if non-negative). | |
| patchIdentifier (patchIdentifier &&ident, const label newIndex) | |
| Move construct, resetting the index (if non-negative). | |
| const word & | name () const noexcept |
| The patch name. | |
| word & | name () noexcept |
| Modifiable patch name. | |
| label | index () const noexcept |
| The index of this patch in the boundaryMesh. | |
| label & | index () noexcept |
| Modifiable index of this patch in the boundaryMesh. | |
| const word & | physicalType () const noexcept |
| The (optional) physical type of the patch. | |
| word & | physicalType () noexcept |
| Modifiable (optional) physical type of the patch. | |
| const wordList & | inGroups () const noexcept |
| The (optional) groups that the patch belongs to. | |
| wordList & | inGroups () noexcept |
| Modifiable (optional) groups that the patch belongs to. | |
| bool | inGroup (const word &name) const |
| True if given name is in a group. | |
| void | addGroup (const word &name) |
| Add (unique) group for the patch. | |
| void | removeGroup (const word &name) |
| Remove group for the patch. | |
| void | write (Ostream &os) const |
| Write (physicalType, inGroups) dictionary entries (without surrounding braces). | |
| Public Member Functions inherited from List< label > | |
| constexpr | List () noexcept |
| Default construct. | |
| List (const label len) | |
| Construct with given size. | |
| List (const label len, const label &val) | |
| Construct with given size and value for all elements. | |
| List (const label len, Foam::zero) | |
| Construct with given size initializing all elements to zero. | |
| List (Foam::one, const label &val) | |
| Construct with length=1, copying the value as the only content. | |
| List (Foam::one, label &&val) | |
| Construct with length=1, moving the value as the only content. | |
| List (Foam::one, Foam::zero) | |
| Construct with length=1, initializing content to zero. | |
| List (const List< label > &list) | |
| Copy construct from list. | |
| List (const UList< label > &list) | |
| Copy construct contents from list. | |
| List (List< label > &list, bool reuse) | |
| Construct as copy or re-use as specified. | |
| List (const UList< label > &list, const labelUList &indices) | |
| Copy construct subset of list. | |
| List (const UList< label > &list, const FixedList< label, N > &indices) | |
| Copy construct subset of list. | |
| List (const FixedList< label, N > &list) | |
| Construct as copy of FixedList<T, N>. | |
| List (const UPtrList< label > &list) | |
| Construct as copy of UPtrList<T> content. | |
| List (const IndirectListBase< label, Addr > &list) | |
| Construct as copy of IndirectList contents. | |
| List (std::initializer_list< label > list) | |
| Construct from an initializer list. | |
| List (List< label > &&list) noexcept | |
| Move construct from List. | |
| List (DynamicList< label, SizeMin > &&list) | |
| Move construct from DynamicList. | |
| List (Istream &is) | |
| Construct from Istream. | |
| autoPtr< List< label > > | clone () const |
| Clone. | |
| ~List () | |
| Destructor. | |
| void | clear () |
| Clear the list, i.e. set size to zero. | |
| void | resize (const label len) |
| Adjust allocated size of list. | |
| void | resize (const label len, const label &val) |
| Adjust allocated size of list and set val for new elements. | |
| void | resize_copy (label count, const label len) |
| Change allocated size of list, retaining the first count elements. | |
| void | resize_fill (const label len, const label &val) |
| Adjust allocated size of list and set val for all elements. | |
| void | resize_nocopy (const label len) |
| Adjust allocated size of list without necessarily. | |
| void | transfer (List< label > &list) |
| Transfer the contents of the argument List into this list and annul the argument list. | |
| void | transfer (DynamicList< label, SizeMin > &list) |
| Transfer the contents of the argument List into this list and annul the argument list. | |
| label & | newElmt (const label i) |
| Return subscript-checked element of UList and resizing the list if required. | |
| label & | emplace_back (Args &&... args) |
| Construct an element at the end of the list, return reference to the new list element. | |
| void | push_back (const label &val) |
| Append an element at the end of the list. | |
| void | push_back (label &&val) |
| Move append an element at the end of the list. | |
| void | push_back (const UList< label > &list) |
| Append a List to the end of this list. | |
| void | push_back (const IndirectListBase< label, Addr > &list) |
| Append IndirectList contents at the end of this list. | |
| label | push_uniq (const label &val) |
| Append an element if not already in the list. | |
| void | pop_back (label n=1) |
| Reduce size by 1 or more elements. Can be called on an empty list. | |
| void | operator= (const UList< label > &list) |
| Assignment to UList operator. Takes linear time. | |
| void | operator= (const List< label > &list) |
| Assignment operator. Takes linear time. | |
| void | operator= (const IndirectListBase< label, Addr > &list) |
| Assignment from IndirectList. Takes linear time. | |
| void | operator= (const FixedList< label, N > &list) |
| Copy assignment from FixedList. | |
| void | operator= (std::initializer_list< label > list) |
| Assignment to an initializer list. | |
| void | operator= (const label &val) |
| Assignment of all entries to the given value. | |
| void | operator= (Foam::zero) |
| Assignment of all entries to zero. | |
| void | operator= (List< label > &&list) |
| Move assignment. Takes constant time. | |
| void | operator= (DynamicList< label, SizeMin > &&list) |
| Move assignment. Takes constant time. | |
| Istream & | readList (Istream &is) |
| Read List from Istream, discarding contents of existing List. | |
| void | shallowCopy (const UList< label > &)=delete |
| No shallowCopy permitted. | |
| bool | set (const label i, bool val=true) |
| A bitSet::set() method for a list of bool. | |
| void | append (const label &val) |
| Append an element at the end of the list. | |
| void | append (label &&val) |
| Move append an element at the end of the list. | |
| void | append (const UList< label > &list) |
| Append a List to the end of this list. | |
| void | append (const IndirectListBase< label, Addr > &list) |
| Append IndirectList contents at the end of this list. | |
| label | appendUniq (const label &val) |
| Same as push_uniq(). | |
| void | setSize (label n) |
| Alias for resize(). | |
| void | setSize (label n, const label &val) |
| Alias for resize(). | |
| List (const Expression::ListExpression< E > &expr) | |
| Construct from value expression. | |
| void | operator= (const Expression::ListExpression< E > &expr) |
| Assign values from expression. | |
| void | resize (const label len) |
| Public Member Functions inherited from UList< label > | |
| UList (const UList< label > &) noexcept=default | |
| Copy construct, shallow copy. | |
| UList (UList< label > &&) noexcept=default | |
| Move construct, shallow copy. | |
| UList< label > & | operator= (const UList< label > &)=delete |
| No copy assignment (default: shallow copy). | |
| UList< label > & | operator= (UList< label > &&) noexcept=default |
| Move assignment, shallow copy. | |
| constexpr | UList () noexcept |
| Default construct, zero-sized and nullptr. | |
| UList (label *__restrict__ ptr, const label len) noexcept | |
| Construct from components. | |
| UList (SubList< label > &&) noexcept | |
| Move construct from a SubList, shallow copy. | |
| label | fcIndex (const label i) const noexcept |
| The forward circular index. The next index in the list which returns to the first at the end of the list. | |
| label | rcIndex (const label i) const noexcept |
| The reverse circular index. The previous index in the list which returns to the last at the beginning of the list. | |
| const label & | fcValue (const label i) const |
| Return forward circular value (ie, next value in the list). | |
| label & | fcValue (const label i) |
| Return forward circular value (ie, next value in the list). | |
| const label & | rcValue (const label i) const |
| Return reverse circular value (ie, previous value in the list). | |
| label & | rcValue (const label i) |
| Return reverse circular value (ie, previous value in the list). | |
| const label * | cdata () const noexcept |
| Return pointer to the underlying array serving as data storage. | |
| label * | data () noexcept |
| Return pointer to the underlying array serving as data storage. | |
| const char * | cdata_bytes () const noexcept |
| Return pointer to the underlying array serving as data storage,. | |
| char * | data_bytes () noexcept |
| Return pointer to the underlying array serving as data storage,. | |
| label & | front () |
| Access first element of the list, position [0]. | |
| const label & | front () const |
| Access first element of the list. | |
| label & | back () |
| Access last element of the list, position [size()-1]. | |
| const label & | back () const |
| Access last element of the list, position [size()-1]. | |
| std::streamsize | size_bytes () const noexcept |
| Number of contiguous bytes for the List data. | |
| std::streamsize | byteSize () const |
| Number of contiguous bytes for the List data, runtime FatalError if type is not contiguous. | |
| void | checkStart (const label start) const |
| Check start is within valid range [0,size). | |
| void | checkSize (const label size) const |
| Check size is within valid range [0,size]. | |
| void | checkRange (const label start, const label len) const |
| Check that start and length define a valid range. | |
| void | checkIndex (const label i) const |
| Check index is within valid range [0,size). | |
| bool | uniform () const |
| True if all entries have identical values, and list is non-empty. | |
| bool | contains (const label &val) const |
| True if the value is contained in the list. | |
| bool | contains (const label &val, label pos, label len=-1) const |
| Is the value contained in the list? | |
| label | find (const label &val) const |
| Find index of the first occurrence of the value. | |
| label | find (const label &val, label pos, label len=-1) const |
| Find index of the first occurrence of the value. | |
| label | rfind (const label &val, label pos=-1) const |
| Find index of the last occurrence of the value. | |
| void | moveFirst (const label i) |
| Move element to the first position. | |
| void | moveLast (const label i) |
| Move element to the last position. | |
| void | swapFirst (const label i) |
| Swap element with the first element. Fatal on an empty list. | |
| void | swapLast (const label i) |
| Swap element with the last element. Fatal on an empty list. | |
| void | shallowCopy (label *__restrict__ ptr, const label len) noexcept |
| Copy the pointer and size. | |
| void | shallowCopy (std::nullptr_t) noexcept |
| Copy nullptr and zero size. | |
| void | shallowCopy (const UList< label > &list) noexcept |
| Copy the pointer and size held by the given UList. | |
| void | deepCopy (const UList< label > &list) |
| Copy elements of the given UList. Sizes must match! | |
| void | deepCopy (const IndirectListBase< label, Addr > &list) |
| Copy elements of the given indirect list. Sizes must match! | |
| SubList< label > | slice (const label pos, label len=-1) |
| Return SubList slice (non-const access) - no range checking. | |
| const SubList< label > | slice (const label pos, label len=-1) const |
| Return SubList slice (const access) - no range checking. | |
| SubList< label > | slice (const labelRange &range) |
| Return SubList slice (non-const access) - with range checking. | |
| const SubList< label > | slice (const labelRange &range) const |
| Return SubList slice (const access) - with range checking. | |
| label & | operator[] (const label i) |
| Return element of UList. | |
| const label & | operator[] (const label i) const |
| Return element of constant UList. | |
| operator const Foam::List< label > & () const | |
| Allow cast to a const List<T>&. | |
| void | operator= (const label &val) |
| Assignment of all entries to the given value. | |
| void | operator= (Foam::zero) |
| Assignment of all entries to zero. | |
| iterator | begin () noexcept |
| Return an iterator to begin traversing the UList. | |
| iterator | end () noexcept |
| Return an iterator to end traversing the UList. | |
| iterator | begin (const label i) noexcept |
| Return iterator at offset i from begin, clamped to [0,size] range. | |
| const_iterator | cbegin () const noexcept |
| Return const_iterator to begin traversing the constant UList. | |
| const_iterator | cend () const noexcept |
| Return const_iterator to end traversing the constant UList. | |
| const_iterator | begin () const noexcept |
| Return const_iterator to begin traversing the constant UList. | |
| const_iterator | end () const noexcept |
| Return const_iterator to end traversing the constant UList. | |
| const_iterator | cbegin (const label i) const noexcept |
| Return const_iterator at offset i from begin, clamped to [0,size] range. | |
| const_iterator | begin (const label i) const noexcept |
| Return const_iterator at offset i from begin, clamped to [0,size] range. | |
| reverse_iterator | rbegin () |
| Return reverse_iterator to begin reverse traversing the UList. | |
| reverse_iterator | rend () |
| Return reverse_iterator to end reverse traversing the UList. | |
| const_reverse_iterator | crbegin () const |
| Return const_reverse_iterator to begin reverse traversing the UList. | |
| const_reverse_iterator | crend () const |
| Return const_reverse_iterator to end reverse traversing the UList. | |
| const_reverse_iterator | rbegin () const |
| Return const_reverse_iterator to begin reverse traversing the UList. | |
| const_reverse_iterator | rend () const |
| Return const_reverse_iterator to end reverse traversing the UList. | |
| bool | empty () const noexcept |
| True if List is empty (ie, size() is zero). | |
| label | size () const noexcept |
| The number of elements in the container. | |
| label | capacity () const noexcept |
| Size of the underlying storage. | |
| void | swap (UList< label > &list) noexcept |
| Swap content with another UList of the same type in constant time. | |
| bool | operator== (const UList< label > &list) const |
| Equality operation on ULists of the same type. | |
| bool | operator!= (const UList< label > &list) const |
| The opposite of the equality operation. Takes linear time. | |
| bool | operator< (const UList< label > &list) const |
| Compare two ULists lexicographically. Takes linear time. | |
| bool | operator> (const UList< label > &list) const |
| Compare two ULists lexicographically. Takes linear time. | |
| bool | operator<= (const UList< label > &list) const |
| Return true if !(a > b). Takes linear time. | |
| bool | operator>= (const UList< label > &list) const |
| Return true if !(a < b). Takes linear time. | |
| Istream & | readList (Istream &is) |
| Read List contents from Istream. | |
| void | writeEntry (const word &keyword, Ostream &os) const |
| Write the List as a dictionary entry with keyword. | |
| Ostream & | writeList (Ostream &os, const label shortLen=0) const |
| Write List, with line-breaks in ASCII when length exceeds shortLen. | |
| bool | all () const |
| True if all entries are 'true' or if the list is empty. | |
| bool | any () const |
| True if any entries are 'true'. | |
| bool | none () const |
| True if no entries are 'true'. | |
| bool | test (const label i) const |
Test bool value at specified position, always false for out-of-range access. | |
| bool | get (const label i) const |
Return bool value at specified position, always false for out-of-range access. | |
| bool | unset (const label i) |
Unset the bool entry at specified position, always false for out-of-range access. | |
| std::string_view | view () const |
| Return a string_view of the charList. Content is non-modifiable. | |
| label & | first () |
| Access first element of the list, position [0]. | |
| const label & | first () const |
| Access first element of the list. | |
| label & | last () |
| Access last element of the list, position [size()-1]. | |
| const label & | last () const |
| Access last element of the list, position [size()-1]. | |
| bool | found (const label &val, label pos=0) const |
| Same as contains(). | |
| auto | expr () const |
| Wrap value as expression. | |
| void | operator= (const Expression::ListExpression< E > &expr) |
| Assign values from expression. | |
| operator const Foam::List< label > & () const | |
| Allow cast to a const List<T>&. | |
Static Public Member Functions | |
| static autoPtr< faPatch > | New (const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm) |
| Return pointer to a new patch created on freestore from dictionary. | |
| static autoPtr< faPatch > | New (const word &patchType, const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm) |
| Return pointer to a new patch created on freestore from dictionary. | |
| static bool | constraintType (const word &patchType) |
| Return true if the given type is a constraint type. | |
| static wordList | constraintTypes () |
| Return a list of all the constraint patch types. | |
| Static Public Member Functions inherited from patchIdentifier | |
| static word | defaultName (const label n=-1) |
| Default patch name: "patch" or "patchN". | |
| Static Public Member Functions inherited from List< label > | |
| static const List< label > & | null () noexcept |
| Return a null List (reference to a nullObject). Behaves like an empty List. | |
| Static Public Member Functions inherited from UList< label > | |
| static const UList< label > & | null () noexcept |
| Return a null UList (reference to a nullObject). Behaves like an empty UList. | |
| static constexpr label | max_size () noexcept |
| The size of the largest possible UList. | |
Protected Member Functions | |
| void | calcPointLabels () const |
| Calculate patch point labels. | |
| void | calcPointEdges () const |
| Calculate patch point-edge addressing. | |
| virtual void | initGeometry (PstreamBuffers &) |
| Initialise the calculation of the patch geometry. | |
| virtual void | calcGeometry (PstreamBuffers &) |
| Calculate the patch geometry. | |
| virtual void | initMovePoints (PstreamBuffers &, const pointField &) |
| Initialise the patches for moving points. | |
| virtual void | movePoints (PstreamBuffers &, const pointField &) |
| Correct patch after moving points. | |
| virtual void | initUpdateMesh (PstreamBuffers &) |
| Initialise the update of the patch topology. | |
| virtual void | updateMesh (PstreamBuffers &) |
| Update of the patch topology. | |
| Protected Member Functions inherited from UList< label > | |
| void | setAddressableSize (const label n) noexcept |
| Set addressed size to be inconsistent with allocated storage. | |
| void | size (const label n) |
| Older name for setAddressableSize. | |
| void | writeEntry (Ostream &os) const |
| Write the UList with its compound type. | |
| labelRange | validateRange (const labelRange &requestedRange) const |
| Return a validated (start,size) subset range, which means that it always addresses a valid section of the list. | |
| void | fill_uniform (const label &val) |
| Assign all entries to the given value. | |
| void | fill_uniform (Foam::zero) |
| Assign all entries to zero. | |
Friends | |
| class | faBoundaryMesh |
| The faPatch geometry initialisation is called by faBoundaryMesh. | |
| Ostream & | operator<< (Ostream &, const faPatch &) |
Finite area patch class. Used for 2-D non-Euclidian finite area method.
Author Zeljko Tukovic, FMENA Hrvoje Jasak, Wikki Ltd.
| typedef faBoundaryMesh BoundaryMesh |
| faPatch | ( | const word & | name, |
| const labelUList & | edgeLabels, | ||
| const label | index, | ||
| const faBoundaryMesh & | bm, | ||
| const label | nbrPolyPatchi, | ||
| const word & | patchType ) |
Construct from components.
Definition at line 88 of file faPatch.C.
References patchIdentifier::addGroup(), constraintType(), edgeLabels(), faBoundaryMesh, patchIdentifier::index(), patchIdentifier::name(), and patchIdentifier::patchIdentifier().

| faPatch | ( | const word & | name, |
| const dictionary & | dict, | ||
| const label | index, | ||
| const faBoundaryMesh & | bm, | ||
| const word & | patchType ) |
Construct from dictionary.
Definition at line 110 of file faPatch.C.
References patchIdentifier::addGroup(), constraintType(), dict, faBoundaryMesh, UList< label >::get(), patchIdentifier::index(), patchIdentifier::name(), and patchIdentifier::patchIdentifier().

| faPatch | ( | const faPatch & | p, |
| const faBoundaryMesh & | bm ) |
Copy construct, resetting the boundary mesh.
Definition at line 147 of file faPatch.C.
References edgeLabels(), faBoundaryMesh, patchIdentifier::index(), and p.

| faPatch | ( | const faPatch & | p, |
| const faBoundaryMesh & | bm, | ||
| const label | index, | ||
| const labelUList & | edgeLabels, | ||
| const label | nbrPolyPatchi ) |
Copy construct, resetting boundary mesh and addressing.
Definition at line 131 of file faPatch.C.
References edgeLabels(), faBoundaryMesh, patchIdentifier::index(), p, and patchIdentifier::patchIdentifier().

|
protected |
Calculate patch point labels.
const auto& edgePoints = *pointLabelsPtr_;
// Cannot use invertManyToMany - we have non-local edge numbering
// Intermediate storage for pointEdges. // Points on the boundary will normally connect 1 or 2 edges only. List<DynamicList<label,2>> dynPointEdges(edgePoints.size());
forAll(edges, edgei) { const edge& e = edges[edgei];
dynPointEdges[markedPoints[e.first()]].append(edgei); dynPointEdges[markedPoints[e.second()]].append(edgei); }
// Flatten to regular list pointEdgesPtr_.reset(new labelListList(edgePoints.size())); auto& pEdges = *pointEdgesPtr_;
forAll(pEdges, pointi) { pEdges[pointi] = std::move(dynPointEdges[pointi]); }
Definition at line 289 of file faPatch.C.
References DynamicList< T, SizeMin >::append(), boundaryMesh(), e, HashSet< Key, Hash >::insert(), mesh, patchSlice(), and UList< T >::size().
Referenced by pointLabels().


|
protected |
Calculate patch point-edge addressing.
Definition at line 347 of file faPatch.C.
References List< T >::append(), boundaryMesh(), e, UList< T >::find(), forAll, mesh, patchSlice(), pointLabels(), and UList< T >::size().
Referenced by pointEdges().


|
inlineprotectedvirtual |
Initialise the calculation of the patch geometry.
Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.
Definition at line 145 of file faPatch.H.
Referenced by cyclicFaPatch::initGeometry().

|
inlineprotectedvirtual |
Calculate the patch geometry.
Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.
Definition at line 151 of file faPatch.H.
Referenced by cyclicFaPatch::calcGeometry().

|
inlineprotectedvirtual |
Initialise the patches for moving points.
Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.
Definition at line 157 of file faPatch.H.
Referenced by cyclicFaPatch::initMovePoints().

|
protectedvirtual |
Correct patch after moving points.
Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.
Definition at line 547 of file faPatch.C.
Referenced by processorFaPatch::initMovePoints(), and cyclicFaPatch::movePoints().

|
inlineprotectedvirtual |
Initialise the update of the patch topology.
Reimplemented in processorFaPatch.
Definition at line 168 of file faPatch.H.
Referenced by processorFaPatch::initUpdateMesh().

|
inlineprotectedvirtual |
Update of the patch topology.
Reimplemented in processorFaPatch.
Definition at line 174 of file faPatch.H.
Referenced by processorFaPatch::updateMesh().

| TypeName | ( | "patch" | ) |
Runtime type information.
| declareRunTimeSelectionTable | ( | autoPtr | , |
| faPatch | , | ||
| dictionary | , | ||
| (const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm, const word &patchType) | , | ||
| (name, dict, index, bm, patchType) | ) |
References dict, edgeLabels(), faBoundaryMesh, patchIdentifier::index(), patchIdentifier::name(), and p.

|
inlinevirtual |
Construct and return a clone, resetting the boundary mesh.
Reimplemented in emptyFaPatch, ignoreFaPatch, and symmetryFaPatch.
Definition at line 257 of file faPatch.H.
References faBoundaryMesh, and autoPtr< T >::New().

|
inlinevirtual |
Construct and return a clone, resetting the edge list and boundary mesh.
Reimplemented in emptyFaPatch, ignoreFaPatch, and symmetryFaPatch.
Definition at line 266 of file faPatch.H.
References edgeLabels(), faBoundaryMesh, patchIdentifier::index(), and autoPtr< T >::New().

|
static |
Return pointer to a new patch created on freestore from dictionary.
Definition at line 27 of file faPatchNew.C.
References dict, faBoundaryMesh, patchIdentifier::index(), patchIdentifier::name(), and New().
Referenced by New().


|
static |
Return pointer to a new patch created on freestore from dictionary.
Definition at line 42 of file faPatchNew.C.
References DebugInFunction, dict, Foam::endl(), Foam::exit(), faBoundaryMesh, Foam::FatalIOError, FatalIOErrorInLookup, patchIdentifier::index(), and patchIdentifier::name().

|
static |
Return true if the given type is a constraint type.
Definition at line 45 of file faPatch.C.
References polyPatch::constraintType().
Referenced by constraintTypes(), faPatch(), and faPatch().


|
static |
Return a list of all the constraint patch types.
Definition at line 54 of file faPatch.C.
References constraintType(), forAllConstIters, and List< T >::resize().

|
inlinenoexcept |
Return the list of edges.
Definition at line 335 of file faPatch.H.
References Foam::noexcept.
Referenced by faPatchData::assign(), boundaryConnections(), boundaryProcs(), boundaryProcSizes(), emptyFaPatch::clone(), clone(), ignoreFaPatch::clone(), symmetryFaPatch::clone(), coupledFaPatch::coupledFaPatch(), declareRunTimeSelectionTable(), emptyFaPatch::emptyFaPatch(), emptyFaPatch::emptyFaPatch(), faPatch(), faPatch(), faPatch(), ignoreFaPatch::ignoreFaPatch(), ignoreFaPatch::ignoreFaPatch(), processorFaPatch::processorFaPatch(), processorFaPatch::processorFaPatch(), symmetryFaPatch::symmetryFaPatch(), symmetryFaPatch::symmetryFaPatch(), emptyFaPatch::TypeName(), ignoreFaPatch::TypeName(), processorFaPatch::TypeName(), and symmetryFaPatch::TypeName().

|
inline |
Number of patch points.
Definition at line 343 of file faPatch.H.
References pointLabels(), and UList< T >::size().
Referenced by processorFaPatch::updateMesh().


|
inlinenoexcept |
Number of edge labels (boundary edges) addressed by this patch.
Definition at line 351 of file faPatch.H.
References Foam::noexcept, and UList< label >::size().
Referenced by boundaryConnections().


|
inlinenoexcept |
The neighbour polyPatch index.
Definition at line 359 of file faPatch.H.
References Foam::noexcept.
Referenced by faPatchData::assign(), symmetryFaPatch::symmetryFaPatch(), and wedgeFaPatch::wedgeFaPatch().

|
noexcept |
Return boundaryMesh reference.
Definition at line 174 of file faPatch.C.
References Foam::noexcept.
Referenced by boundaryConnections(), boundaryProcs(), boundaryProcSizes(), calcPointEdges(), calcPointLabels(), cfindPatchField(), deltaCoeffs(), edgeCentres(), edgeFaceCentres(), edgeFaces(), edgeLengths(), lookupPatchField(), lPN(), magEdgeLengths(), ngbPolyPatchFaceNormals(), ngbPolyPatchPointNormals(), offset(), skewCorrectionVectors(), start(), and weights().

|
inlinevirtual |
Return true if this patch is coupled.
Reimplemented in coupledFaPatch, and processorFaPatch.
Definition at line 372 of file faPatch.H.
References coupled().
Referenced by coupled().


| Foam::label offset | ( | ) | const |
The offset where this patch starts in the boundary edge list.
The value is the same as patch.start() - mesh.nInternalEdges()
Definition at line 180 of file faPatch.C.
References boundaryMesh(), patchIdentifier::index(), Foam::max(), and mesh.
Referenced by boundarySlice().


| Foam::label start | ( | ) | const |
Patch start in edge list.
Definition at line 191 of file faPatch.C.
References boundaryMesh(), and patchIdentifier::index().
Referenced by faMesh::edgeLengthCorrection(), processorFaPatch::makeCorrectionVectors(), processorFaPatch::makeDeltaCoeffs(), patchSlice(), and whichEdge().


|
inlinevirtual |
Patch size is the number of edge labels, but can be overloaded.
Reimplemented in emptyFaPatch.
Definition at line 392 of file faPatch.H.
References UList< label >::size().
Referenced by boundarySlice(), coupledFaPatch::calcTransformTensors(), cyclicFaPatch::interfaceInternalField(), processorFaPatch::interfaceInternalField(), processorFaPatch::interfaceSize(), cyclicFaPatch::internalFieldTransfer(), processorFaPatch::internalFieldTransfer(), processorFaPatch::internalFieldTransfer(), patchInternalField(), patchInternalField(), patchSlice(), cyclicFaPatch::transfer(), processorFaPatch::transfer(), and emptyFaPatchField< Type >::updateCoeffs().


|
inline |
This patch slice from the complete list of values, which has size mesh::nEdges(), using the virtual patch size.
Definition at line 411 of file faPatch.H.
References size(), and start().
Referenced by calcPointEdges(), calcPointLabels(), edgeFaces(), processorFaPatch::initUpdateMesh(), and processorFaPatch::updateMesh().


|
virtual |
Write.
Reimplemented in processorFaPatch.
Definition at line 565 of file faPatch.C.
References os(), Foam::type(), and patchIdentifier::write().
Referenced by processorFaPatch::write().


| Foam::List< Foam::labelPair > boundaryConnections | ( | ) | const |
List of proc/face for the boundary edge neighbours in locally reordered edge numbering.
Definition at line 197 of file faPatch.C.
References boundaryMesh(), edgeLabels(), and nEdges().

| Foam::labelList boundaryProcs | ( | ) | const |
Boundary edge neighbour processors (does not include own proc).
Definition at line 217 of file faPatch.C.
References boundaryMesh(), edgeLabels(), HashTable< T, Key, Hash >::erase(), HashSet< Key, Hash >::insert(), UPstream::myProcNo(), UPstream::nProcs(), and HashTable< T, Key, Hash >::sortedToc().

| Foam::List< Foam::labelPair > boundaryProcSizes | ( | ) | const |
List of proc/size for the boundary edge neighbour processors (does not include own proc).
Definition at line 237 of file faPatch.C.
References boundaryMesh(), edgeLabels(), HashTable< T, Key, Hash >::erase(), UList< T >::first(), UPstream::myProcNo(), UPstream::nProcs(), HashTable< T, Key, Hash >::size(), and HashTable< T, Key, Hash >::sortedToc().

| const Foam::labelList & pointLabels | ( | ) | const |
Return patch point labels.
Definition at line 267 of file faPatch.C.
References calcPointLabels().
Referenced by nPoints(), and faGlobalMeshData::updateMesh().


| const Foam::labelListList & pointEdges | ( | ) | const |
Return patch point-edge addressing.
Definition at line 278 of file faPatch.C.
References calcPointEdges().
Referenced by processorFaPatch::initUpdateMesh(), and ngbPolyPatchPointNormals().


| Foam::tmp< Foam::vectorField > ngbPolyPatchFaceNormals | ( | ) | const |
Return normals of neighbour polyPatch faces.
Same as faMesh::haloFaceNormals()
Definition at line 378 of file faPatch.C.
References boundaryMesh(), patchIdentifier::index(), and tmp< T >::New().

| Foam::tmp< Foam::vectorField > ngbPolyPatchPointNormals | ( | ) | const |
Return normals of neighbour polyPatch joined points.
Definition at line 389 of file faPatch.C.
References boundaryMesh(), forAll, patchIdentifier::index(), mesh, n, tmp< T >::New(), pointEdges(), UList< T >::size(), and Foam::Zero.

| const Foam::labelUList & edgeFaces | ( | ) | const |
Return edge-face addressing.
Definition at line 424 of file faPatch.C.
References boundaryMesh(), mesh, and patchSlice().
Referenced by coupledFaPatch::faceCells(), cyclicFaPatch::interfaceInternalField(), processorFaPatch::interfaceInternalField(), patchInternalField(), and patchInternalField().


| const Foam::vectorField & edgeCentres | ( | ) | const |
Return edge centres.
Definition at line 438 of file faPatch.C.
References boundaryMesh(), and patchIdentifier::index().

| const Foam::vectorField & edgeLengths | ( | ) | const |
Return edge length vectors, like the faMesh::Le() method.
Definition at line 444 of file faPatch.C.
References boundaryMesh(), and patchIdentifier::index().
Referenced by edgeNormals(), processorFaPatch::initGeometry(), processorFaPatch::makeCorrectionVectors(), and processorFaPatch::makeDeltaCoeffs().


| const Foam::scalarField & magEdgeLengths | ( | ) | const |
Return edge length magnitudes, like the faMesh::magLe() method.
Definition at line 450 of file faPatch.C.
References boundaryMesh(), and patchIdentifier::index().
Referenced by processorFaPatch::calcGeometry(), and cyclicFaPatch::makeWeights().


| Foam::tmp< Foam::vectorField > edgeNormals | ( | ) | const |
Return edge unit normals, like the faMesh::unitLe() method.
Definition at line 456 of file faPatch.C.
References edgeLengths(), and tmp< T >::New().
Referenced by processorFaPatch::calcGeometry(), delta(), makeCorrectionVectors(), cyclicFaPatch::makeDeltaCoeffs(), makeDeltaCoeffs(), processorFaPatch::makeDeltaCoeffs(), makeLPN(), and cyclicFaPatch::makeWeights().


| Foam::tmp< Foam::vectorField > edgeFaceCentres | ( | ) | const |
Return neighbour face centres.
Definition at line 466 of file faPatch.C.
References boundaryMesh(), mesh, and patchInternalField().
Referenced by coupledFaPatch::delta(), delta(), processorFaPatch::initGeometry(), and processorFaPatch::makeLPN().


|
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 coupledFaPatch, cyclicFaPatch, and processorFaPatch.
Definition at line 472 of file faPatch.C.
References e, edgeCentres(), edgeFaceCentres(), edgeNormals(), and VectorSpace< Form, Cmpt, Ncmpts >::uniform().

|
virtual |
Make patch weighting factors.
Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.
| const Foam::scalarField & weights | ( | ) | const |
Return patch weighting factors.
Definition at line 541 of file faPatch.C.
References boundaryMesh(), and patchIdentifier::index().

|
virtual |
Make patch geodesic distance between P and N.
Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.
Definition at line 496 of file faPatch.C.
References delta, edgeNormals(), and lPN().

| const Foam::scalarField & lPN | ( | ) | const |
Return patch geodesic distance between P and N.
Definition at line 502 of file faPatch.C.
References boundaryMesh(), and patchIdentifier::index().
Referenced by processorFaPatch::makeDeltaCoeffs(), cyclicFaPatch::makeLPN(), makeLPN(), processorFaPatch::makeLPN(), and processorFaPatch::makeWeights().


|
virtual |
Make patch edge - neighbour face distances.
Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.
Definition at line 508 of file faPatch.C.
References delta, and edgeNormals().

| const Foam::scalarField & deltaCoeffs | ( | ) | const |
Return patch edge - neighbour face distances.
Definition at line 514 of file faPatch.C.
References boundaryMesh(), and patchIdentifier::index().

|
virtual |
Make non-orthogonality correction vectors.
Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.
Definition at line 520 of file faPatch.C.
References delta, edgeNormals(), k, and Foam::mag().

| const Foam::vectorField & skewCorrectionVectors | ( | ) | const |
Return patch skew-correction vectors.
Definition at line 528 of file faPatch.C.
References boundaryMesh(), and patchIdentifier::index().

| void resetEdges | ( | const labelUList & | newEdges | ) |
| void resetEdges | ( | labelList && | newEdges | ) |
|
inline |
Extract internal field next to patch using specified addressing.
| internalData | The internal field to extract from | |
| addressing | Addressing from patch into internal field | |
| [out] | pfld | The extracted patch field. Should normally be sized according to the patch size(), which can be smaller than the addressing size |
Definition at line 27 of file faPatchTemplates.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, FOAM_UNLIKELY, Foam::nl, size(), and UList< T >::size().
Referenced by edgeFaceCentres(), processorFaPatch::initInternalFieldTransfer(), cyclicFaPatch::interfaceInternalField(), cyclicFaPatch::interfaceInternalField(), processorFaPatch::interfaceInternalField(), processorFaPatch::interfaceInternalField(), patchInternalField(), and patchInternalField().


| void patchInternalField | ( | const UList< Type > & | internalData, |
| UList< Type > & | pfld ) const |
Extract internal field next to patch as patch field using edgeFaces() mapping.
| internalData | The internal field to extract from | |
| [out] | pfld | The extracted patch field. Should normally be sized according to the patch size(), which can be smaller than the edgeFaces() size |
Definition at line 61 of file faPatchTemplates.C.
References edgeFaces(), and patchInternalField().

|
nodiscard |
Return given internal field next to patch as patch field using edgeFaces() mapping.
| internalData | The internal field to extract from |
| const GeometricField::Patch & patchField | ( | const GeometricField & | gf | ) | const |
Return the patch field of the GeometricField corresponding to this patch.
Definition at line 89 of file faPatchTemplates.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), and patchIdentifier::index().

| const GeometricField::Patch & lookupPatchField | ( | const word & | fldName | ) | const |
Lookup the named field from the local registry and return the patch field corresponding to this patch.
Definition at line 28 of file faPatchFaMeshTemplates.C.
References boundaryMesh(), patchIdentifier::index(), faBoundaryMesh::mesh(), and faMesh::thisDb().

| const GeometricField::Patch * cfindPatchField | ( | const word & | fldName | ) | const |
Lookup the named field (if any) from the local registry and return the patch field corresponding to this patch.
Definition at line 39 of file faPatchFaMeshTemplates.C.
References boundaryMesh(), and patchIdentifier::index().

| Foam::tmp< Foam::Field< Type > > patchInternalField | ( | const UList< Type > & | internalData | ) | const |
Definition at line 77 of file faPatchTemplates.C.
References edgeFaces(), Foam::New(), patchInternalField(), and size().

|
friend |
The faPatch geometry initialisation is called by faBoundaryMesh.
Definition at line 130 of file faPatch.H.
References faBoundaryMesh.
Referenced by emptyFaPatch::clone(), emptyFaPatch::clone(), clone(), clone(), ignoreFaPatch::clone(), ignoreFaPatch::clone(), symmetryFaPatch::clone(), symmetryFaPatch::clone(), coupledFaPatch::coupledFaPatch(), coupledFaPatch::coupledFaPatch(), declareRunTimeSelectionTable(), emptyFaPatch::emptyFaPatch(), emptyFaPatch::emptyFaPatch(), emptyFaPatch::emptyFaPatch(), emptyFaPatch::emptyFaPatch(), emptyFaPatch::emptyFaPatch(), faBoundaryMesh, faPatch(), faPatch(), faPatch(), faPatch(), ignoreFaPatch::ignoreFaPatch(), ignoreFaPatch::ignoreFaPatch(), ignoreFaPatch::ignoreFaPatch(), ignoreFaPatch::ignoreFaPatch(), ignoreFaPatch::ignoreFaPatch(), New(), New(), symmetryFaPatch::symmetryFaPatch(), symmetryFaPatch::symmetryFaPatch(), symmetryFaPatch::symmetryFaPatch(), symmetryFaPatch::symmetryFaPatch(), emptyFaPatch::TypeName(), ignoreFaPatch::TypeName(), symmetryFaPatch::TypeName(), wedgeFaPatch::TypeName(), and wedgeFaPatch::wedgeFaPatch().