41 cyclicPatch_(refCast<const cyclicPointPatch>(p))
54 cyclicPatch_(refCast<const cyclicPointPatch>(p))
56 if (!isType<cyclicPointPatch>(p))
61 ) <<
"patch " << this->patch().index() <<
" not cyclic type. " 62 <<
"Patch type = " << p.type()
78 cyclicPatch_(refCast<const cyclicPointPatch>(p))
80 if (!isType<cyclicPointPatch>(this->patch()))
83 <<
"Field type does not correspond to patch type for patch " 84 << this->patch().index() <<
"." <<
endl 85 <<
"Field type: " << typeName <<
endl 86 <<
"Patch type: " << this->patch().type()
100 cyclicPatch_(ptf.cyclicPatch_)
116 if (cyclicPatch_.cyclicPatch().owner())
124 refCast<const GeometricField<Type, pointPatchField, pointMesh>>
126 this->internalField()
130 refCast<const cyclicPointPatchField<Type>>
139 const edgeList& pairs = cyclicPatch_.transformPairs();
146 label pointi = pairs[pairi][0];
147 label nbrPointi = pairs[pairi][1];
149 Type
tmp = pf[pointi];
150 pf[pointi] =
transform(forwardT()[0], nbrPf[nbrPointi]);
151 nbrPf[nbrPointi] =
transform(reverseT()[0], tmp);
158 Swap(pf[pairs[pairi][0]], nbrPf[pairs[pairi][1]]);
161 this->addToInternalField(pField, pf);
162 nbr.addToInternalField(pField, nbrPf);
#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.
errorManipArg< error, int > exit(error &err, const int errNo=1)
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
commsTypes
Types of communications.
Foam::pointPatchFieldMapper.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Generic GeometricField class.
Cyclic front and back plane patch field.
Cyclic patch for post-processing.
virtual label index() const
Return the index of this patch in the pointBoundaryMesh.
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))
Pre-declare SubField and related Field type.
virtual void swapAddSeparated(const Pstream::commsTypes commsType, Field< Type > &) const
Complete swap of patch point values and add to local values.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
Basic pointPatch represents a set of points from the mesh.
A Coupled boundary condition for pointField.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
cyclicPointPatchField(const pointPatch &, const DimensionedField< Type, pointMesh > &)
Construct from patch and internal field.
A class for managing temporary objects.
const cyclicPointPatch & neighbPatch() const
Return neighbour point patch.
dimensionSet transform(const dimensionSet &)