133 #ifndef mapDistribute_H 134 #define mapDistribute_H 146 class globalIndexAndTransform;
153 Istream&
operator>>(Istream&, mapDistribute&);
154 Ostream&
operator<<(Ostream&,
const mapDistribute&);
178 void applyDummyTransforms(
List<T>& field)
const;
180 template<
class T,
class TransformOp>
185 const TransformOp& top
190 void applyDummyInverseTransforms(
List<T>& field)
const;
192 template<
class T,
class TransformOp>
193 void applyInverseTransforms
197 const TransformOp& top
217 const tensor T(forward ? vt.R() : vt.R().T());
246 template<
class Type,
template<
class>
class Container>
272 fld = vt.transformPosition(pfld);
276 fld = vt.invTransformPosition(pfld);
296 template<
template<
class>
class Container>
308 forAllIter(
typename Container<point>, map, iter)
338 const label constructSize,
434 return transformElements_;
440 return transformStart_;
466 template<
class T,
class negateOp>
470 const negateOp& negOp,
488 const label constructSize,
500 const label constructSize,
508 template<
class T,
class TransformOp>
513 const TransformOp& top,
518 template<
class T,
class TransformOp>
522 const label constructSize,
524 const TransformOp& top,
529 template<
class T,
class TransformOp>
533 const label constructSize,
536 const TransformOp& top,
549 "mapDistribute::updateMesh(const mapPolyMesh&)" 570 void mapDistribute::transform::operator()
577 void mapDistribute::transform::operator()
583 void mapDistribute::transform::operator()
585 const coupledPolyPatch&,
589 void mapDistribute::transform::operator()
591 const coupledPolyPatch&,
596 void mapDistribute::transform::operator()
598 const coupledPolyPatch&,
602 void mapDistribute::transform::operator()
604 const vectorTensorTransform&,
609 void mapDistribute::transform::operator()
611 const coupledPolyPatch&,
615 void mapDistribute::transform::operator()
617 const coupledPolyPatch&,
622 void mapDistribute::transform::operator()
624 const coupledPolyPatch& cpp,
628 void mapDistribute::transform::operator()
630 const vectorTensorTransform&,
635 void mapDistribute::transform::operator()
637 const coupledPolyPatch&,
641 void mapDistribute::transform::operator()
643 const coupledPolyPatch&,
A simple container for copying or transferring objects of type <T>.
autoPtr< mapDistribute > clone() const
Clone.
#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.
const labelList & transformStart() const
Destination in constructMap for transformed elements.
Xfer< List< T > > xfer()
Transfer contents to the Xfer container.
friend Istream & operator>>(Istream &, mapDistribute &)
Read dictionary from Istream.
#define forAllIter(Container, container, iter)
Iterate across all elements in the container object of type.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
bool constructHasFlip() const
Does constructMap include a sign.
bool subHasFlip() const
Does subMap include a sign.
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational d...
static int & msgType()
Message tag of standard messages.
friend Ostream & operator<<(Ostream &, const mapDistribute &)
Write dictionary to Ostream.
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.
void transformList(const tensor &, UList< T > &)
Apply transformation to list. Either single transformation tensor.
Calculates a unique integer (label so might not have enough room - 2G max) for processor + local inde...
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 printLayout(Ostream &os) const
Debug: print layout. Can only be used on maps with sorted.
void reverseDistribute(const label constructSize, List< T > &, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Reverse distribute data using default commsType.
void operator=(const mapDistribute &)
Istream & operator>>(Istream &, directionInfo &)
virtual ~mapDistribute()
Destructor.
virtual bool parallel() const
Are the cyclic planes parallel.
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 distribute(List< T > &fld, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Distribute data using default commsType.
#define notImplemented(functionName)
Issue a FatalErrorIn for a function not currently implemented.
Class containing processor-to-processor mapping information.
virtual void transformPosition(pointField &) const =0
Transform a patch-based position from other side to this side.
label whichTransform(const label index) const
Find transform from transformElements.
Ostream & operator<<(Ostream &, const ensightPart &)
const labelListList & transformElements() const
For every globalIndexAndTransform::transformPermutations.
virtual const tensorField & forwardT() const
Return face transformation tensor.
Xfer< mapDistribute > xfer()
Transfer contents to the Xfer container.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
ClassName("mapDistribute")
label constructSize() const
Constructed data size.