Base class for extended cell-to-face stencils (face values from neighbouring cells) More...
Classes | |
class | unionEqOp |
Combine operator for labelLists. More... | |
Public Member Functions | |
cellToFaceStencil (const polyMesh &) | |
Construct from mesh. More... | |
const polyMesh & | mesh () const |
const globalIndex & | globalNumbering () const |
Global numbering for cells and boundary faces. More... | |
Public Member Functions inherited from List< T > | |
List () | |
Null constructor. More... | |
List (const label) | |
Construct with given size. More... | |
List (const label, const T &) | |
Construct with given size and value for all elements. More... | |
List (const label, const zero) | |
Construct with given size initialising all elements to zero. More... | |
List (const List< T > &) | |
Copy constructor. More... | |
template<class T2 > | |
List (const List< T2 > &) | |
Copy constructor from list containing another type. More... | |
List (List< T > &&) | |
Move constructor. More... | |
List (List< T > &, bool reuse) | |
Construct as copy or re-use as specified. More... | |
List (const UList< T > &, const labelUList &mapAddressing) | |
Construct as subset. More... | |
template<class InputIterator > | |
List (InputIterator first, InputIterator last) | |
Construct given start and end iterators. More... | |
template<unsigned Size> | |
List (const FixedList< T, Size > &) | |
Construct as copy of FixedList<T, Size> More... | |
List (const PtrList< T > &) | |
Construct as copy of PtrList<T> More... | |
List (const SLList< T > &) | |
Construct as copy of SLList<T> More... | |
List (const UIndirectList< T > &) | |
Construct as copy of UIndirectList<T> More... | |
List (const BiIndirectList< T > &) | |
Construct as copy of BiIndirectList<T> More... | |
List (std::initializer_list< T >) | |
Construct from an initialiser list. More... | |
List (Istream &) | |
Construct from Istream. More... | |
autoPtr< List< T > > | clone () const |
Clone. More... | |
~List () | |
Destructor. More... | |
label | size () const |
Return the number of elements in the UList. More... | |
void | resize (const label) |
Alias for setSize(const label) More... | |
void | resize (const label, const T &) |
Alias for setSize(const label, const T&) More... | |
void | setSize (const label) |
Reset size of List. More... | |
void | setSize (const label, const T &) |
Reset size of List and value for new elements. More... | |
void | clear () |
Clear the list, i.e. set size to zero. More... | |
void | append (const T &) |
Append an element at the end of the list. More... | |
void | append (const UList< T > &) |
Append a List at the end of this list. More... | |
void | append (const UIndirectList< T > &) |
Append a UIndirectList at the end of this list. More... | |
void | transfer (List< T > &) |
Transfer the contents of the argument List into this list. More... | |
template<unsigned SizeInc, unsigned SizeMult, unsigned SizeDiv> | |
void | transfer (DynamicList< T, SizeInc, SizeMult, SizeDiv > &) |
Transfer the contents of the argument List into this list. More... | |
void | transfer (SortableList< T > &) |
Transfer the contents of the argument List into this list. More... | |
T & | newElmt (const label) |
Return subscript-checked element of UList. More... | |
void | shallowCopy (const UList< T > &)=delete |
Disallow implicit shallowCopy. More... | |
void | operator= (const UList< T > &) |
Assignment to UList operator. Takes linear time. More... | |
void | operator= (const List< T > &) |
Assignment operator. Takes linear time. More... | |
void | operator= (List< T > &&) |
Move assignment operator. More... | |
void | operator= (const SLList< T > &) |
Assignment to SLList operator. Takes linear time. More... | |
void | operator= (const UIndirectList< T > &) |
Assignment to UIndirectList operator. Takes linear time. More... | |
void | operator= (const BiIndirectList< T > &) |
Assignment to BiIndirectList operator. Takes linear time. More... | |
void | operator= (std::initializer_list< T >) |
Assignment to an initialiser list. More... | |
void | operator= (const T &) |
Assignment of all entries to the given value. More... | |
void | operator= (const zero) |
Assignment of all entries to zero. More... | |
Public Member Functions inherited from UList< T > | |
UList () | |
Null constructor. More... | |
UList (T *__restrict__ v, label size) | |
Construct from components. More... | |
label | fcIndex (const label i) const |
Return the forward circular index, i.e. the next index. More... | |
label | rcIndex (const label i) const |
Return the reverse circular index, i.e. the previous index. More... | |
std::streamsize | byteSize () const |
Return the binary size in number of characters of the UList. More... | |
const T * | cdata () const |
Return a const pointer to the first data element,. More... | |
T * | data () |
Return a pointer to the first data element,. More... | |
T & | first () |
Return the first element of the list. More... | |
const T & | first () const |
Return first element of the list. More... | |
T & | last () |
Return the last element of the list. More... | |
const T & | last () const |
Return the last element of the list. More... | |
void | checkStart (const label start) const |
Check start is within valid range (0 ... size-1) More... | |
void | checkSize (const label size) const |
Check size is within valid range (0 ... size) More... | |
void | checkIndex (const label i) const |
Check index i is within valid range (0 ... size-1) More... | |
void | shallowCopy (const UList< T > &) |
Copy the pointer held by the given UList. More... | |
void | deepCopy (const UList< T > &) |
Copy elements of the given UList. More... | |
T & | operator[] (const label) |
Return element of UList. More... | |
const T & | operator[] (const label) const |
Return element of constant UList. More... | |
operator const Foam::List< T > & () const | |
Allow cast to a const List<T>&. More... | |
void | operator= (const T &) |
Assignment of all entries to the given value. More... | |
void | operator= (const zero) |
Assignment of all entries to zero. More... | |
iterator | begin () |
Return an iterator to begin traversing the UList. More... | |
iterator | end () |
Return an iterator to end traversing the UList. More... | |
const_iterator | cbegin () const |
Return const_iterator to begin traversing the constant UList. More... | |
const_iterator | cend () const |
Return const_iterator to end traversing the constant UList. More... | |
const_iterator | begin () const |
Return const_iterator to begin traversing the constant UList. More... | |
const_iterator | end () const |
Return const_iterator to end traversing the constant UList. More... | |
reverse_iterator | rbegin () |
Return reverse_iterator to begin reverse traversing the UList. More... | |
reverse_iterator | rend () |
Return reverse_iterator to end reverse traversing the UList. More... | |
const_reverse_iterator | crbegin () const |
Return const_reverse_iterator to begin reverse traversing the UList. More... | |
const_reverse_iterator | crend () const |
Return const_reverse_iterator to end reverse traversing the UList. More... | |
const_reverse_iterator | rbegin () const |
Return const_reverse_iterator to begin reverse traversing the UList. More... | |
const_reverse_iterator | rend () const |
Return const_reverse_iterator to end reverse traversing the UList. More... | |
label | size () const |
Return the number of elements in the UList. More... | |
label | max_size () const |
Return size of the largest possible UList. More... | |
bool | empty () const |
Return true if the UList is empty (ie, size() is zero) More... | |
void | swap (UList< T > &) |
Swap two ULists of the same type in constant time. More... | |
bool | operator== (const UList< T > &) const |
Equality operation on ULists of the same type. More... | |
bool | operator!= (const UList< T > &) const |
The opposite of the equality operation. Takes linear time. More... | |
bool | operator< (const UList< T > &) const |
Compare two ULists lexicographically. Takes linear time. More... | |
bool | operator> (const UList< T > &) const |
Compare two ULists lexicographically. Takes linear time. More... | |
bool | operator<= (const UList< T > &) const |
Return true if !(a > b). Takes linear time. More... | |
bool | operator>= (const UList< T > &) const |
Return true if !(a < b). Takes linear time. More... | |
template<> | |
const bool & | operator[] (const label i) const |
Protected Member Functions | |
void | validBoundaryFaces (boolList &isValidBFace) const |
Valid boundary faces (not empty and not coupled) More... | |
autoPtr< indirectPrimitivePatch > | allCoupledFacesPatch () const |
Return patch of all coupled faces. More... | |
void | insertFaceCells (const label exclude0, const label exclude1, const boolList &nonEmptyFace, const labelList &faceLabels, labelHashSet &globals) const |
Collect cell neighbours of faces in global numbering. More... | |
labelList | calcFaceCells (const boolList &nonEmptyFace, const labelList &faceLabels, labelHashSet &globals) const |
Collect cell neighbours of faces in global numbering. More... | |
void | calcFaceStencil (const labelListList &globalCellCells, labelListList &faceStencil) const |
Collect cell neighbours into extended stencil. More... | |
Protected Member Functions inherited from List< T > | |
void | size (const label) |
Override size to be inconsistent with allocated storage. More... | |
Static Protected Member Functions | |
static void | merge (const label global0, const label global1, const labelList &listA, labelList &listB) |
Merge two lists. More... | |
static void | merge (const label globalI, const labelList &pGlobals, labelList &cCells) |
Merge two lists and guarantee globalI is first. More... | |
Additional Inherited Members | |
Public Types inherited from List< T > | |
typedef SubList< T > | subList |
Declare type of subList. More... | |
Public Types inherited from UList< T > | |
typedef T | value_type |
Type of values the UList contains. More... | |
typedef T & | reference |
Type that can be used for storing into. More... | |
typedef const T & | const_reference |
Type that can be used for storing into. More... | |
typedef label | difference_type |
The type that can represent the difference between any two. More... | |
typedef label | size_type |
The type that can represent the size of a UList. More... | |
typedef T * | iterator |
Random access iterator for traversing UList. More... | |
typedef const T * | const_iterator |
Random access iterator for traversing UList. More... | |
typedef std::reverse_iterator< iterator > | reverse_iterator |
Reverse iterator for reverse traversal of UList. More... | |
typedef std::reverse_iterator< const_iterator > | const_reverse_iterator |
Reverse iterator for reverse traversal of constant UList. More... | |
Static Public Member Functions inherited from List< T > | |
static const List< T > & | null () |
Return a null List. More... | |
Static Public Member Functions inherited from UList< T > | |
static const UList< T > & | null () |
Return a null UList. More... | |
Base class for extended cell-to-face stencils (face values from neighbouring cells)
Definition at line 54 of file cellToFaceStencil.H.
|
explicit |
Construct from mesh.
Definition at line 511 of file cellToFaceStencil.C.
|
staticprotected |
Merge two lists.
Guarantee global0, global1 are first.
Definition at line 35 of file cellToFaceStencil.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Foam::findSortedIndex(), forAll, List< T >::size(), Foam::sort(), and List< T >::transfer().
Merge two lists and guarantee globalI is first.
Definition at line 135 of file cellToFaceStencil.C.
References forAll, forAllConstIter, n, and List< T >::setSize().
|
protected |
Valid boundary faces (not empty and not coupled)
Definition at line 169 of file cellToFaceStencil.C.
References polyMesh::boundaryMesh(), polyPatch::coupled(), forAll, cellToFaceStencil::mesh(), primitiveMesh::nInternalFaces(), patches, patchi, List< T >::setSize(), and polyPatch::start().
|
protected |
Return patch of all coupled faces.
Definition at line 192 of file cellToFaceStencil.C.
References polyMesh::boundaryMesh(), polyPatch::coupled(), forAll, cellToFaceStencil::mesh(), patches, patchi, points, and polyPatch::start().
|
protected |
Collect cell neighbours of faces in global numbering.
Definition at line 266 of file cellToFaceStencil.C.
References cellToFaceStencil::calcFaceCells(), polyMesh::faceNeighbour(), polyMesh::faceOwner(), forAll, cellToFaceStencil::globalNumbering(), HashSet< Key, Hash >::insert(), cellToFaceStencil::mesh(), primitiveMesh::nInternalFaces(), and globalIndex::toGlobal().
Referenced by cellToFaceStencil::calcFaceCells(), and cellToFaceStencil::unionEqOp::operator()().
|
protected |
Collect cell neighbours of faces in global numbering.
Definition at line 318 of file cellToFaceStencil.C.
References cellToFaceStencil::calcFaceStencil(), HashTable< T, Key, Hash >::clear(), cellToFaceStencil::insertFaceCells(), and HashTable< T, Key, Hash >::toc().
Referenced by cellToFaceStencil::insertFaceCells().
|
protected |
Collect cell neighbours into extended stencil.
Definition at line 340 of file cellToFaceStencil.C.
References polyMesh::boundaryMesh(), HashTable< T, Key, Hash >::clear(), polyPatch::coupled(), polyMesh::faceNeighbour(), polyMesh::faceOwner(), forAll, forAllConstIter, HashSet< Key, Hash >::insert(), n, primitiveMesh::nFaces(), primitiveMesh::nInternalFaces(), patches, patchi, List< T >::setSize(), HashTable< T, Key, Hash >::size(), polyPatch::start(), and syncTools::syncBoundaryFaceList().
Referenced by cellToFaceStencil::calcFaceCells(), CECCellToFaceStencil::CECCellToFaceStencil(), CFCCellToFaceStencil::CFCCellToFaceStencil(), and CPCCellToFaceStencil::CPCCellToFaceStencil().
|
inline |
Definition at line 136 of file cellToFaceStencil.H.
Referenced by cellToFaceStencil::allCoupledFacesPatch(), extendedUpwindCellToFaceStencil::extendedUpwindCellToFaceStencil(), cellToFaceStencil::insertFaceCells(), and cellToFaceStencil::validBoundaryFaces().
|
inline |
Global numbering for cells and boundary faces.
Definition at line 142 of file cellToFaceStencil.H.
Referenced by extendedCentredCellToFaceStencil::extendedCentredCellToFaceStencil(), extendedUpwindCellToFaceStencil::extendedUpwindCellToFaceStencil(), and cellToFaceStencil::insertFaceCells().