56 Istream&
operator>>(Istream& is, globalIndex& gi);
57 Ostream&
operator<<(Ostream& os,
const globalIndex& gi);
182 gather(offsets_, comm, procIDs,
fld, allFld, tag, commsType);
212 gather(offsets_, comm, procIDs,
fld, tag, commsType);
242 scatter(offsets_, comm, procIDs, allFld,
fld, tag, commsType);
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
commsTypes
Types of communications.
static int & msgType()
Message tag of standard messages.
Calculates a unique integer (label so might not have enough room - 2G max) for processor + local inde...
friend Ostream & operator<<(Ostream &os, const globalIndex &gi)
label whichProcID(const label i) const
Which processor does global come from? Binary search.
label localSize() const
My local size.
label size() const
Global sum of localSizes.
static void gather(const labelUList &offsets, const label comm, const labelList &procIDs, const UList< Type > &fld, List< Type > &allFld, const int tag=UPstream::msgType(), const Pstream::commsTypes commsType=Pstream::commsTypes::nonBlocking)
Collect data in processor order on master (== procIDs[0]).
static void scatter(const labelUList &offsets, const label comm, const labelList &procIDs, const UList< Type > &allFld, UList< Type > &fld, const int tag=UPstream::msgType(), const Pstream::commsTypes commsType=Pstream::commsTypes::nonBlocking)
Distribute data in processor order. Requires fld to be sized!
label toGlobal(const label i) const
From local to global.
globalIndex()
Construct null.
labelList & offsets()
Change after construction.
label offset(const label proci) const
Start of proci data.
label toLocal(const label i) const
From global to local on current processor.
friend Istream & operator>>(Istream &is, globalIndex &gi)
bool isLocal(const label i) const
Is on local processor.
gmvFile<< "tracers "<< particles.size()<< nl;{ pointField positions(particles.size());label particlei=0;forAllConstIter(Cloud< passiveParticle >, particles, iter) { positions[particlei++]=iter().position(mesh);} for(i=0;i< pTraits< point >::nComponents;i++) { forAll(positions, particlei) { gmvFile<< component(positions[particlei], i)<< ' ';} gmvFile<< nl;}}forAll(lagrangianScalarNames, i){ const word &name=lagrangianScalarNames[i];IOField< scalar > fld(IOobject(name, runTime.name(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Istream & operator>>(Istream &, pistonPointEdgeData &)
Ostream & operator<<(Ostream &os, const fvConstraints &constraints)