50 const scalarField nbrDeltas(nbrPatch.
nf()&nbrPatch.coupledFvPatch::delta());
54 scalar di = deltas[facei];
55 scalar dni = nbrDeltas[facei];
57 w[facei] = dni/(di + dni);
68 auto& pdv = tpdv.ref();
75 vector ddi = patchD[facei];
76 vector dni = nbrPatchD[facei];
78 pdv[facei] = ddi - dni;
85 vector ddi = patchD[facei];
86 vector dni = nbrPatchD[facei];
88 pdv[facei] = ddi -
transform(forwardT()[0], dni);
123 return neighbFvPatch().patchInternalField(iF);
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
void size(const label n)
Older name for setAddressableSize.
commsTypes
Communications types.
virtual const labelUList & faceCells() const
Return faceCell addressing.
virtual tmp< vectorField > delta() const =0
Return delta (P to N) vectors across coupled patch.
virtual tmp< labelField > internalFieldTransfer(const Pstream::commsTypes commsType, const labelUList &internalData) const
Return neighbour field.
void makeWeights(scalarField &) const
Make patch weighting factors.
cyclicFvPatch(const polyPatch &patch, const fvBoundaryMesh &bm)
Construct from polyPatch.
virtual bool parallel() const
Are the cyclic planes parallel.
virtual tmp< vectorField > delta() const
Return delta (P to N) vectors across coupled patch.
const cyclicFvPatch & neighbFvPatch() const
virtual tmp< labelField > interfaceInternalField(const labelUList &internalData) const
Return the values of the given internal data adjacent to the interface as a field.
virtual const tensorField & forwardT() const
Return face transformation tensor.
Smooth ATC in cells next to a set of patches supplied by type.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
virtual label size() const
Patch size is the number of faces, but can be overloaded.
tmp< vectorField > nf() const
Return face unit normals, like the fvMesh::unitSf() method Same as unitSf().
void patchInternalField(const UList< Type > &internalData, const labelUList &addressing, UList< Type > &pfld) const
Extract internal field next to patch using specified addressing.
A patch is a list of labels that address the faces in the global face list.
A class for managing temporary objects.
static tmp< T > New(Args &&... args)
Construct tmp with forwarding arguments.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
refinementData transform(const tensor &, const refinementData val)
No-op rotational transform for base types.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Field< vector > vectorField
Specialisation of Field<T> for vector.
UList< label > labelUList
A UList of labels.
#define forAll(list, i)
Loop across all elements in list.