Go to the documentation of this file.
45 procPatch_(refCast<const processorFaPatch>(
p))
58 procPatch_(refCast<const processorFaPatch>(
p))
72 procPatch_(refCast<const processorFaPatch>(
p))
74 if (!isType<processorFaPatch>(this->
patch()))
77 <<
"\n patch type '" << p.type()
78 <<
"' not constraint type '" << typeName <<
"'"
79 <<
"\n for patch " <<
p.name()
80 <<
" of field " << this->internalField().name()
81 <<
" in file " << this->internalField().objectPath()
96 procPatch_(refCast<const processorFaPatch>(
p,
dict))
98 if (!isType<processorFaPatch>(
p))
101 <<
"\n patch type '" <<
p.type()
102 <<
"' not constraint type '" << typeName <<
"'"
103 <<
"\n for patch " <<
p.name()
104 <<
" of field " << this->internalField().name()
105 <<
" in file " << this->internalField().objectPath()
119 procPatch_(refCast<const processorFaPatch>(ptf.
patch()))
131 procPatch_(refCast<const processorFaPatch>(ptf.
patch()))
158 if (Pstream::parRun())
160 procPatch_.send(commsType, this->patchInternalField()());
171 if (Pstream::parRun())
173 procPatch_.receive<Type>(commsType, *
this);
177 transform(*
this, procPatch_.forwardT(), *
this);
186 return this->
patch().deltaCoeffs()*(*
this - this->patchInternalField());
204 this->
patch().patchInternalField(psiInternal)()
222 procPatch_.receive<solveScalar>(commsType, this->size())()
226 transformCoupleField(pnf, cmpt);
236 result[edgeFaces[elemI]] += coeffs[elemI]*pnf[elemI];
243 result[edgeFaces[elemI]] -= coeffs[elemI]*pnf[elemI];
262 this->
patch().patchInternalField(psiInternal)()
279 procPatch_.receive<Type>(commsType, this->size())()
290 result[edgeFaces[elemI]] += coeffs[elemI]*pnf[elemI];
297 result[edgeFaces[elemI]] -= coeffs[elemI]*pnf[elemI];
virtual tmp< Field< Type > > snGrad() const
Return patch-normal gradient.
A class for managing temporary objects.
processorFaPatchField(const faPatch &, const DimensionedField< Type, areaMesh > &)
Construct from patch and internal field.
virtual void initEvaluate(const Pstream::commsTypes commsType)
Initialise the evaluation of the patch field.
dimensionSet transform(const dimensionSet &ds)
Return the argument; transformations do not change the dimensions.
#define forAll(list, i)
Loop across all elements in list.
Author Zeljko Tukovic, FMENA Hrvoje Jasak, Wikki Ltd.
Generic templated field type.
virtual void evaluate(const Pstream::commsTypes commsType)
Evaluate the patch field.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
void add(FieldField< Field1, typename typeOfSum< Type1, Type2 >::type > &f, const FieldField< Field1, Type1 > &f1, const FieldField< Field2, Type2 > &f2)
virtual void updateInterfaceMatrix(solveScalarField &result, const bool add, const solveScalarField &psiInternal, const scalarField &coeffs, const direction cmpt, const Pstream::commsTypes commsType) const
Update result field based on interface functionality.
virtual void initInterfaceMatrixUpdate(solveScalarField &result, const bool add, const solveScalarField &psiInternal, const scalarField &coeffs, const direction cmpt, const Pstream::commsTypes commsType) const
Initialise neighbour matrix update.
errorManipArg< error, int > exit(error &err, const int errNo=1)
Author Zeljko Tukovic, FMENA Hrvoje Jasak, Wikki Ltd.
commsTypes
Types of communications.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
tmp< Field< Type > > patchNeighbourField() const
Return neighbour field given internal field.
const std::string patch
OpenFOAM patch number as a std::string.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
Abstract base class for processor coupled interfaces.
Finite area patch class. Used for 2-D non-Euclidian finite area method.
const faPatch & patch() const
Return patch.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...