Variant of fvMeshLduAddressing that contains addressing instead of slices. More...
#include <fvMeshPrimitiveLduAddressing.H>


Public Member Functions | |
| fvMeshPrimitiveLduAddressing (const fvMesh &mesh) | |
| Construct from mesh. | |
| fvMeshPrimitiveLduAddressing (const label nCells, labelList &&lowerAddr, labelList &&upperAddr, const UPtrList< const labelUList > &patchAddr, const lduSchedule &ps) | |
| Construct from components. | |
| virtual | ~fvMeshPrimitiveLduAddressing ()=default |
| Destructor. | |
| virtual const labelUList & | lowerAddr () const noexcept |
| Return lower addressing (i.e. lower label = upper triangle). | |
| virtual const labelUList & | upperAddr () const noexcept |
| Return upper addressing (i.e. upper label). | |
| virtual const labelUList & | patchAddr (const label patchi) const |
| Return patch addressing for given patch. | |
| virtual const lduSchedule & | patchSchedule () const noexcept |
| Return patch field evaluation schedule. | |
| Public Member Functions inherited from lduAddressing | |
| lduAddressing (const lduAddressing &)=delete | |
| No copy construct. | |
| void | operator= (const lduAddressing &)=delete |
| No copy assignment. | |
| lduAddressing (const label nEqns) noexcept | |
| Construct with size (number of equations). | |
| virtual | ~lduAddressing ()=default |
| Destructor. | |
| label | size () const noexcept |
| Return number of equations. | |
| void | clearOut () |
| Clear additional addressing. | |
| const labelUList & | losortAddr () const |
| Return losort addressing. | |
| const labelUList & | ownerStartAddr () const |
| Return owner start addressing. | |
| const labelUList & | losortStartAddr () const |
| Return losort start addressing. | |
| const labelUList & | lowerCSRAddr () const |
| Return CSR addressing. | |
| label | triIndex (const label a, const label b) const |
| Return off-diagonal index given owner and neighbour label. | |
| Tuple2< label, scalar > | band () const |
| Calculate bandwidth and profile of addressing. | |
| template<class Type> | |
| void | map (const UList< Type > &faceVals, List< Type > &vals) const |
| Helper to convert lower addressing & data into CSR format. | |
Static Public Member Functions | |
| static labelList | addAddressing (const lduAddressing &addr, const labelListList &nbrCells, label &nExtraFaces, labelList &lower, labelList &upper, labelListList &nbrCellFaces, const globalIndex &, const labelList &globalCellIDs, labelListList &localFaceCells, labelListList &remoteFaceCells) |
| Given additional addressing (in the form of additional neighbour cells, i.e. like cellCells). | |
| static label | triIndex (const lduAddressing &, const label, const label) |
| Return off-diagonal index given owner and neighbour label. | |
Variant of fvMeshLduAddressing that contains addressing instead of slices.
Alternatively use lduPrimitiveMesh but that assumes there are only lduInterfaces and not also generic patches.
Definition at line 53 of file fvMeshPrimitiveLduAddressing.H.
|
explicit |
Construct from mesh.
Definition at line 28 of file fvMeshPrimitiveLduAddressing.C.
References boundary, lduAddressing::lduAddressing(), mesh, and patchSchedule().

| fvMeshPrimitiveLduAddressing | ( | const label | nCells, |
| labelList && | lowerAddr, | ||
| labelList && | upperAddr, | ||
| const UPtrList< const labelUList > & | patchAddr, | ||
| const lduSchedule & | ps ) |
Construct from components.
Definition at line 48 of file fvMeshPrimitiveLduAddressing.C.
References lduAddressing::lduAddressing(), lowerAddr(), patchAddr(), and upperAddr().

|
virtualdefault |
Destructor.
|
inlinevirtualnoexcept |
Return lower addressing (i.e. lower label = upper triangle).
Implements lduAddressing.
Definition at line 129 of file fvMeshPrimitiveLduAddressing.H.
References Foam::noexcept.
Referenced by oversetFvMeshBase::active(), and fvMeshPrimitiveLduAddressing().

|
inlinevirtualnoexcept |
Return upper addressing (i.e. upper label).
Implements lduAddressing.
Definition at line 137 of file fvMeshPrimitiveLduAddressing.H.
References Foam::noexcept.
Referenced by fvMeshPrimitiveLduAddressing().

|
inlinevirtual |
Return patch addressing for given patch.
Implements lduAddressing.
Definition at line 145 of file fvMeshPrimitiveLduAddressing.H.
Referenced by fvMeshPrimitiveLduAddressing().

|
inlinevirtualnoexcept |
Return patch field evaluation schedule.
Implements lduAddressing.
Definition at line 153 of file fvMeshPrimitiveLduAddressing.H.
References Foam::noexcept.
Referenced by fvMeshPrimitiveLduAddressing().

|
static |
Given additional addressing (in the form of additional neighbour cells, i.e. like cellCells).
Definition at line 93 of file fvMeshPrimitiveLduAddressing.C.
References forAll, Foam::inplaceRenumber(), Foam::inplaceReorder(), lduAddressing::lduAddressing(), lduAddressing::lowerAddr(), Foam::max(), Foam::min(), UPstream::nProcs(), List< T >::setSize(), lduAddressing::size(), UList< T >::size(), globalIndex::toLocal(), triIndex(), lduAddressing::upperAddr(), lduPrimitiveMesh::upperTriOrder(), globalIndex::whichProcID(), and Foam::Zero.
Referenced by oversetFvMeshBase::updateAddressing().


|
static |
Return off-diagonal index given owner and neighbour label.
Definition at line 67 of file fvMeshPrimitiveLduAddressing.C.
References b, lduAddressing::lduAddressing(), Foam::max(), Foam::min(), lduAddressing::ownerStartAddr(), and lduAddressing::upperAddr().
Referenced by addAddressing().

