41#ifndef fvMeshPrimitiveLduAddressing_H
42#define fvMeshPrimitiveLduAddressing_H
58class fvMeshPrimitiveLduAddressing
80 fvMeshPrimitiveLduAddressing
82 const fvMeshPrimitiveLduAddressing&
86 void operator=(
const fvMeshPrimitiveLduAddressing&) =
delete;
94 explicit fvMeshPrimitiveLduAddressing(
const fvMesh&
mesh);
97 fvMeshPrimitiveLduAddressing
128 return patchAddr_[patchi];
134 return patchSchedule_;
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
virtual ~fvMeshPrimitiveLduAddressing()=default
Destructor.
virtual const labelUList & patchAddr(const label patchi) const
Return patch addressing for given patch.
static label triIndex(const lduAddressing &, const label, const label)
Return off-diagonal index given owner and neighbour label.
virtual const labelUList & lowerAddr() const noexcept
Return lower addressing (i.e. lower label = upper triangle).
virtual const lduSchedule & patchSchedule() const noexcept
Return patch field evaluation schedule.
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).
virtual const labelUList & upperAddr() const noexcept
Return upper addressing (i.e. upper label).
Mesh data needed to do the Finite Volume discretisation.
Calculates a non-overlapping list of offsets based on an input size (eg, number of cells) from differ...
The class contains the addressing required by the lduMatrix: upper, lower and losort.
lduAddressing(const lduAddressing &)=delete
No copy construct.
List< labelList > labelListList
List of labelList.
List< label > labelList
A List of labels.
List< lduScheduleEntry > lduSchedule
A List of lduSchedule entries.
UList< label > labelUList
A UList of labels.