Go to the documentation of this file.
44 cyclicPatch_(refCast<const cyclicFvPatch>(
p))
58 cyclicPatch_(refCast<const cyclicFvPatch>(
p))
60 if (!isA<cyclicFvPatch>(this->patch()))
63 <<
"' not constraint type '" << typeName <<
"'"
64 <<
"\n for patch " <<
p.name()
81 cyclicPatch_(refCast<const cyclicFvPatch>(
p))
83 if (!isA<cyclicFvPatch>(
p))
88 ) <<
" patch type '" <<
p.type()
89 <<
"' not constraint type '" << typeName <<
"'"
90 <<
"\n for patch " <<
p.name()
131 cyclicPatch().cyclicPatch().neighbPatch().faceCells();
143 forwardT()[0], iField[nbrFaceCells[facei]]
151 pnf[facei] = iField[nbrFaceCells[facei]];
169 return refCast<const cyclicFvPatchField<Type> >
171 fld.boundaryField()[this->cyclicPatch().neighbPatchID()]
187 cyclicPatch().cyclicPatch().neighbPatch().faceCells();
192 transformCoupleField(pnf, cmpt);
195 const labelUList& faceCells = cyclicPatch_.faceCells();
199 result[faceCells[elemI]] -= coeffs[elemI]*pnf[elemI];
214 cyclicPatch().cyclicPatch().neighbPatch().faceCells();
219 transformCoupleField(pnf);
222 const labelUList& faceCells = cyclicPatch_.faceCells();
226 result[faceCells[elemI]] -= coeffs[elemI]*pnf[elemI];
virtual void write(Ostream &) const
Write.
#define forAll(list, i)
Loop across all elements in list.
A class for managing temporary objects.
rDeltaT dimensionedInternalField()
const cyclicFvPatch & cyclicPatch_
Local reference cast into the cyclic patch.
dimensionSet transform(const dimensionSet &)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
A list of keyword definitions, which are a keyword followed by any number of values (e....
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))
virtual void updateInterfaceMatrix(scalarField &result, const scalarField &psiInternal, const scalarField &coeffs, const direction cmpt, const Pstream::commsTypes commsType) const
Update result field based on interface functionality.
errorManipArg< error, int > exit(error &err, const int errNo=1)
conserve internalField()+
commsTypes
Types of communications.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Abstract base class for cyclic coupled interfaces.
Abstract base class for coupled patches.
cyclicFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &)
Construct from patch and internal field.
tmp< Field< Type > > patchNeighbourField() const
Return neighbour coupled internal cell data.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
const cyclicFvPatchField< Type > & neighbourPatchField() const
Return reference to neighbour patchField.
virtual void write(Ostream &os) const
Write.
This boundary condition enforces a cyclic condition between a pair of boundaries.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
Foam::fvPatchFieldMapper.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Generic GeometricField class.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...