93 cfiAndFeiToCei_.
m().
size()/2,
106 const face&
f = fs[
c[cfi]];
119 const face&
f = fs[
c[cfi]];
121 cfiAndFeiToCei_[cfi] = -1;
127 cfiAndFeiToCei_[cfi][fei] = cei;
130 ceiToCfiAndFei_[cei][0] !=
labelPair(-1, -1)
137 cOwns_[0] = cOwnsFirst;
142 label cfi = 0, fei = 0;
147 const label cei = cfiAndFeiToCei_[cfi][fei];
150 ceiToCfiAndFei_[cei][ceiToCfiAndFei_[cei][0] == cfiAndFei];
151 const label cfj = cfjAndFej[0], fej = cfjAndFej[1];
163 fs[
c[cfi]].faceEdge(fei),
164 fs[
c[cfj]].faceEdge(fej)
167 cOwns_[cfj] =
sign < 0 ? cOwns_[cfi] : !cOwns_[cfi];
171 fei = (fej + 1) % fs[
c[cfj]].size();
179 fei = (fei + 1) % fs[
c[cfi]].size();
190 while (cfi != 0 || fei != 0);
#define forAll(list, i)
Loop across all elements in list.
void resize(const label mRows)
Reset size of CompactListList.
Templated abstract base-class for demand-driven mesh objects used to automate their allocation to the...
void resize(const label)
Alter the addressed list size.
HashList class. Like HashTable, but much less dynamic memory-y. Should be faster for small sets of no...
static const Key nullKey
Null key value for unset elements in the list.
An ordered pair of two objects of type <T> with first() and second() elements.
const UList< T > & m() const
Return the packed matrix of data.
A List with indirect addressing.
label size() const
Return the number of elements in the UList.
cellEdgeAddressingData(const cell &c, const faceList &fs, const bool cOwnsFirst)
Construct from a cell and its faces.
virtual bool movePoints()
Update following mesh motion.
cellEdgeAddressingList(const polyMesh &mesh)
Construct for a mesh.
virtual void mapMesh(const polyMeshMap &map)
Update following mapping.
virtual void distribute(const polyDistributionMap &map)
Update following mesh distribution.
virtual void topoChange(const polyTopoChangeMap &map)
Update following topology change.
A cell is defined as a list of faces with extra functionality.
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
static int compare(const edge &, const edge &)
Compare edges.
A face is a list of labels corresponding to mesh vertices.
Class containing mesh-to-mesh mapping information after a mesh distribution where we send parts of me...
const polyMesh & mesh() const
Return polyMesh.
Class containing mesh-to-mesh mapping information.
const polyMesh & mesh() const
Return polyMesh.
Mesh consisting of general polyhedral cells.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
const polyMesh & mesh() const
Return polyMesh.
const dimensionedScalar c
Speed of light in a vacuum.
Pair< label > labelPair
Label pair.
dimensionedScalar sign(const dimensionedScalar &ds)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
List< bool > boolList
Bool container classes.
struct Foam::cellEdgeAddressingWorkspace workspace_
static const label labelMax
unsigned operator()(const edge &e)
HashList< label, edge, QuickHashEdge > edgeToCei
cellEdgeAddressingWorkspace()
DynamicList< label > cfei0
void resizeAndClear(const label nCellFaces, const label nCellEdges)