133 #ifndef mapDistribute_H 134 #define mapDistribute_H 146 class globalIndexAndTransform;
153 Istream&
operator>>(Istream&, mapDistribute&);
154 Ostream&
operator<<(Ostream&,
const mapDistribute&);
181 template<
class T,
class TransformOp>
186 const TransformOp& top
191 void applyDummyInverseTransforms(
List<T>& field)
const;
193 template<
class T,
class TransformOp>
194 void applyInverseTransforms
198 const TransformOp& top
221 vt.transformList(fld);
225 vt.invTransformList(fld);
254 template<
class Type,
template<
class>
class Container>
280 fld = vt.transformPosition(pfld);
284 fld = vt.invTransformPosition(pfld);
307 template<
template<
class>
class Container>
322 forAllIter(
typename Container<point>, map, iter)
352 const label constructSize,
448 return transformElements_;
454 return transformStart_;
476 template<
class T,
class negateOp>
480 const negateOp& negOp,
498 const label constructSize,
510 const label constructSize,
518 template<
class T,
class TransformOp>
523 const TransformOp& top,
528 template<
class T,
class TransformOp>
532 const label constructSize,
534 const TransformOp& top,
539 template<
class T,
class TransformOp>
543 const label constructSize,
546 const TransformOp& top,
559 "mapDistribute::updateMesh(const mapPolyMesh&)" 580 void mapDistribute::transform::operator()
587 void mapDistribute::transform::operator()
593 void mapDistribute::transform::operator()
595 const coupledPolyPatch&,
599 void mapDistribute::transform::operator()
601 const coupledPolyPatch&,
606 void mapDistribute::transform::operator()
608 const coupledPolyPatch&,
612 void mapDistribute::transform::operator()
619 void mapDistribute::transform::operator()
621 const coupledPolyPatch&,
625 void mapDistribute::transform::operator()
627 const coupledPolyPatch&,
632 void mapDistribute::transform::operator()
634 const coupledPolyPatch& cpp,
638 void mapDistribute::transform::operator()
645 void mapDistribute::transform::operator()
647 const coupledPolyPatch&,
651 void mapDistribute::transform::operator()
653 const coupledPolyPatch&,
bool constructHasFlip() const
Does constructMap include a sign.
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
friend Istream & operator>>(Istream &, mapDistribute &)
Read dictionary from Istream.
void distribute(List< T > &fld, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Distribute data using default commsType.
#define forAllIter(Container, container, iter)
Iterate across all elements in the container object of type.
const labelListList & subMap() const
From subsetted data back to original data.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
label whichTransform(const label index) const
Find transform from transformElements.
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational d...
void printLayout(Ostream &os) const
Debug: print layout. Can only be used on maps with sorted.
static int & msgType()
Message tag of standard messages.
friend Ostream & operator<<(Ostream &, const mapDistribute &)
Write dictionary to Ostream.
virtual const transformer & transform() const =0
Return transformation between the coupled patches.
void transfer(mapDistribute &)
Transfer the contents of the argument and annul the argument.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
void updateMesh(const mapPolyMesh &)
Correct for topo change.
Calculates a unique integer (label so might not have enough room - 2G max) for processor + local inde...
const labelList & transformStart() const
Destination in constructMap for transformed elements.
gmvFile<< "tracers "<< particles.size()<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().x()<< ' ';}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().y()<< ' ';}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().z()<< ' ';}gmvFile<< nl;forAll(lagrangianScalarNames, i){ const word &name=lagrangianScalarNames[i];IOField< scalar > fld(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects...
void operator=(const mapDistribute &)
Istream & operator>>(Istream &, directionInfo &)
autoPtr< mapDistribute > clone() const
Clone.
virtual ~mapDistribute()
Destructor.
forAllConstIter(PtrDictionary< phaseModel >, mixture.phases(), phase)
mapDistribute()
Construct null.
Class containing processor-to-processor mapping information.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
void reverseDistribute(const label constructSize, List< T > &, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Reverse distribute data using default commsType.
label constructSize() const
Constructed data size.
#define notImplemented(functionName)
Issue a FatalErrorIn for a function not currently implemented.
const labelListList & transformElements() const
For every globalIndexAndTransform::transformPermutations.
Class containing processor-to-processor mapping information.
Ostream & operator<<(Ostream &, const ensightPart &)
const labelListList & constructMap() const
From subsetted data to new reconstructed data.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
ClassName("mapDistribute")
bool subHasFlip() const
Does subMap include a sign.