130 #ifndef distributionMap_H
131 #define distributionMap_H
143 class globalIndexAndTransform;
148 class distributionMap;
150 Istream&
operator>>(Istream&, distributionMap&);
151 Ostream&
operator<<(Ostream&,
const distributionMap&);
176 void applyDummyTransforms(
List<T>& field)
const;
178 template<
class T,
class TransformOp>
183 const TransformOp& top
188 void applyDummyInverseTransforms(
List<T>& field)
const;
190 template<
class T,
class TransformOp>
191 void applyInverseTransforms
195 const TransformOp& top
218 vt.transformList(
fld);
222 vt.invTransformList(
fld);
251 template<
class Type,
template<
class>
class Container>
277 fld = vt.transformPosition(pfld);
281 fld = vt.invTransformPosition(pfld);
304 template<
template<
class>
class Container>
319 forAllIter(
typename Container<point>, map, iter)
445 return transformElements_;
451 return transformStart_;
473 template<
class T,
class negateOp>
477 const negateOp& negOp,
515 template<
class T,
class TransformOp>
520 const TransformOp& top,
525 template<
class T,
class TransformOp>
531 const TransformOp& top,
536 template<
class T,
class TransformOp>
543 const TransformOp& top,
569 void distributionMap::transform::operator()
576 void distributionMap::transform::operator()
582 void distributionMap::transform::operator()
588 void distributionMap::transform::operator()
595 void distributionMap::transform::operator()
601 void distributionMap::transform::operator()
608 void distributionMap::transform::operator()
614 void distributionMap::transform::operator()
621 void distributionMap::transform::operator()
627 void distributionMap::transform::operator()
634 void distributionMap::transform::operator()
640 void distributionMap::transform::operator()
#define forAll(list, i)
Loop across all elements in list.
#define forAllIter(Container, container, iter)
Iterate across all elements in the container object of type.
#define forAllConstIter(Container, container, iter)
Iterate across all elements in the container object of type.
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects.
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,...
static int & msgType()
Message tag of standard messages.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational d...
virtual const transformer & transform() const =0
Return transformation between the coupled patches.
Class containing processor-to-processor mapping information.
bool subHasFlip() const
Does subMap include a sign.
const labelListList & constructMap() const
From subsetted data to new reconstructed data.
const labelListList & subMap() const
From subsetted data back to original data.
bool constructHasFlip() const
Does constructMap include a sign.
label constructSize() const
Constructed data size.
Class containing processor-to-processor mapping information.
virtual ~distributionMap()
Destructor.
label whichTransform(const label index) const
Find transform from transformElements.
const labelListList & transformElements() const
For every globalIndexAndTransform::transformPermutations.
friend Ostream & operator<<(Ostream &, const distributionMap &)
Write dictionary to Ostream.
void printLayout(Ostream &os) const
Debug: print layout. Can only be used on maps with sorted.
void transfer(distributionMap &)
Transfer the contents of the argument and annul the argument.
autoPtr< distributionMap > clone() const
Clone.
ClassName("distributionMap")
const labelList & transformStart() const
Destination in constructMap for transformed elements.
void distribute(List< T > &fld, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Distribute data using default commsType.
friend Istream & operator>>(Istream &, distributionMap &)
Read dictionary from Istream.
void operator=(const distributionMap &)
distributionMap()
Construct null.
void reverseDistribute(const label constructSize, List< T > &, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Reverse distribute data using default commsType.
Calculates a unique integer (label so might not have enough room - 2G max) for processor + local inde...
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)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)