55 if (!isA<cyclicFvPatch>(
p))
60 ) <<
" patch type '" <<
p.type()
61 <<
"' not constraint type '" <<
typeName <<
"'"
62 <<
"\n for patch " <<
p.name()
85 if (!isA<cyclicFvPatch>(this->
patch()))
88 <<
"' not constraint type '" <<
typeName <<
"'"
89 <<
"\n for patch " <<
p.name()
106 cyclicPatch_(ptf.cyclicPatch_)
119 const Field<Type>& iField = this->primitiveField();
121 cyclicPatch().nbrPatch().faceCells();
128 pnf[facei] =
transform().transform(iField[nbrFaceCells[facei]]);
142 this->primitiveField()
145 return refCast<const cyclicFvPatchField<Type>>
147 fld.boundaryField()[this->cyclicPatch().nbrPatchIndex()]
163 cyclicPatch().nbrPatch().faceCells();
168 transformCoupleField(pnf, cmpt);
171 const labelUList& faceCells = cyclicPatch().faceCells();
175 result[faceCells[elemI]] -= coeffs[elemI]*pnf[elemI];
190 cyclicPatch().nbrPatch().faceCells();
195 transformCoupleField(pnf);
198 const labelUList& faceCells = cyclicPatch().faceCells();
202 result[faceCells[elemI]] -= coeffs[elemI]*pnf[elemI];
#define forAll(list, i)
Loop across all elements in list.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Pre-declare SubField and related Field type.
Generic GeometricField class.
virtual void updateInterfaceMatrix(scalarField &, const scalarField &, const scalarField &, const direction, const Pstream::commsTypes commsType) const=0
Inherit updateInterfaceMatrix from lduInterfaceField.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
commsTypes
Types of communications.
Abstract base class for coupled patches.
virtual void evaluate(const Pstream::commsTypes commsType)
Evaluate the patch field.
This boundary condition enforces a cyclic condition between a pair of boundaries.
virtual tmp< Field< Type > > patchNeighbourField(const Pstream::commsTypes commsType) const
Return neighbour coupled internal cell data.
virtual void write(Ostream &os) const
Write.
cyclicFvPatchField(const fvPatch &, const DimensionedField< Type, fvMesh > &)
Construct from patch and internal field.
const cyclicFvPatchField< Type > & nbrPatchField() const
Return reference to neighbour patchField.
Abstract base class for cyclic coupled interfaces.
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Abstract base class for field mapping.
virtual void write(Ostream &) const
Write.
const DimensionedField< Type, fvMesh > & internalField() const
Return dimensioned internal field reference.
const fvPatch & patch() const
Return patch.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
Template function which returns the un-mangled name of a given type. Useful for types which do not ha...
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
gmvFile<< "tracers "<< particles.size()<< nl;{ pointField positions(particles.size());label particlei=0;forAllConstIter(lagrangian::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(), lagrangian::cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
errorManipArg< error, int > exit(error &err, const int errNo=1)
To & refCast(From &r)
Reference type cast template function.
void transform(GeometricField< Type, GeoMesh > &rtf, const GeometricField< tensor, GeoMesh > &trf, const GeometricField< Type, GeoMesh > &tf)