Go to the documentation of this file.
85 if( patch0 != patch1 )
87 const edge&
e = edges[edgeI];
109 std::map<label, labelLongList> exchangeData;
111 exchangeData.insert(std::make_pair(beNeiProcs[i],
labelLongList()));
115 const label beI = it();
121 data.append(it.key());
131 const label geI = receivedData[i++];
132 const label patchI = receivedData[i++];
134 otherFacePatch.insert(globalToLocalEdges[geI], patchI);
140 const label beI = it.key();
144 if( otherFacePatch[beI] !=
facePatch_[edgeFaces(beI, 0)] )
146 const edge&
e = edges[beI];
153 exchangeData.
clear();
156 exchangeData.insert(std::make_pair(bpNeiProcs[i],
labelLongList()));
163 const label bpI = it();
167 const label procI = bpAtProcs(bpI, i);
183 receivedData.
clear();
188 while( counter < receivedData.
size() )
190 const label bpI = globalToLocal[receivedData[counter++]];
191 const label nEdges = receivedData[counter++];
225 std::map<label, labelLongList> exchangeData;
227 exchangeData[bpNeiProcs[i]].clear();
231 const label bpI = it();
235 const label neiProc = bpAtProcs(bpI, i);
242 data.append(it.key());
254 while( counter < receivedData.
size() )
256 const label bpI = globalToLocal[receivedData[counter++]];
257 const label size = receivedData[counter++];
259 for(
label i=0;i<size;++i)
266 Info <<
"Found " << counter
267 <<
" corners at the surface of the volume mesh" <<
endl;
270 Info <<
"Found " << counter
271 <<
" edge points at the surface of the volume mesh" <<
endl;
const VRWGraph & bpAtProcs() const
processors which contain the vertex
const labelList & bp() const
void append(const T &e)
Append an element at the end of the list.
const labelList & facePatch_
pointer to face patches
void calculateCornersEdgesAndAddressing()
find corners, edge points and addressing
const Map< label > & globalToLocalBndEdgeAddressing() const
global boundary edge label to local label. Only for processor edges
#define forAll(list, i)
Loop across all elements in list.
void clear()
Clear the list, i.e. set next free to zero.
static bool & parRun()
Is this a parallel run?
const DynList< label > & bpNeiProcs() const
communication matrix for sending point data
const VRWGraph & pointFaces() const
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
List< labelHashSet > patchPatches_
patch-patches addressing
Ostream & endl(Ostream &os)
Add newline and flush stream.
label size() const
Size of the active part of the list.
void appendIfNotIn(const label rowI, const label)
Append an element to the given row if it does not exist there.
VRWGraph pointPatches_
patches at a surface point
forAllConstIter(PtrDictionary< phaseModel >, mixture.phases(), phase)
void reduce(const List< UPstream::commsStruct > &comms, T &Value, const BinaryOp &bop, const int tag, const label comm)
labelHashSet corners_
labels of corner points
LocalMax-mean differencing scheme class.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
labelHashSet featureEdges_
labels of feature edges
const Map< label > & otherEdgeFaceAtProc() const
const DynList< label > & beNeiProcs() const
communication matrix for sending edge data
label size() const
Returns the number of rows.
void setSize(const label)
Reset the number of rows.
#define forAllRow(graph, rowI, index)
label sizeOfRow(const label rowI) const
Returns the number of elements in the given row.
labelHashSet edgePoints_
labels of edge points
label size() const
Return number of elements in table.
const VRWGraph & edgeFaces() const
const double e
Elementary charge.
const edgeList & edges() const
static int myProcNo(const label communicator=0)
Number of this process (starting from masterNo() = 0)
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
void setSize(const label)
Reset size of List.
const meshSurfaceEngine & meshSurface_
reference to mesh surface engine
void clear()
Clear all entries from table.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
void clear()
Clear the list, i.e. set size to zero.
void exchangeMap(const std::map< label, ListType > &m, LongList< T > &data, const Pstream::commsTypes commsType)
bool insert(const Key &key)
Insert a new entry.
labelList nEdgesAtPoint_
number of edges attached to a surface point
const labelList & boundaryPoints() const
const Map< label > & globalToLocalBndPointAddressing() const
global point label to local label. Only for processors points
void size(const label)
Override size to be inconsistent with allocated storage.
LongList< label > labelLongList
Database for solution data, solver performance and other reduced data.