cyclicAMIFvPatch Class Reference

Cyclic patch for Arbitrary Mesh Interface (AMI) More...

Inheritance diagram for cyclicAMIFvPatch:
[legend]
Collaboration diagram for cyclicAMIFvPatch:
[legend]

Public Member Functions

 TypeName (cyclicAMIPolyPatch::typeName_())
 Runtime type information. More...
 
 cyclicAMIFvPatch (const polyPatch &patch, const fvBoundaryMesh &bm)
 Construct from polyPatch. More...
 
const cyclicAMIPolyPatch & cyclicAMIPatch () const
 Return local reference cast into the cyclic patch. More...
 
virtual label neighbPatchID () const
 Return neighbour. More...
 
virtual bool owner () const
 
virtual const cyclicAMIFvPatch & neighbPatch () const
 Return processor number. More...
 
virtual const AMIPatchToPatchInterpolation & AMI () const
 Return a reference to the AMI interpolator. More...
 
virtual bool applyLowWeightCorrection () const
 Return true if applying the low weight correction. More...
 
virtual bool parallel () const
 Are the cyclic planes parallel. More...
 
virtual const tensorField & forwardT () const
 Return face transformation tensor. More...
 
virtual const tensorField & reverseT () const
 Return neighbour-cell transformation tensor. More...
 
const cyclicAMIFvPatch & neighbFvPatch () const
 
virtual bool coupled () const
 
virtual tmp< vectorField > delta () const
 Return delta (P to N) vectors across coupled patch. More...
 
template<class Type >
tmp< Field< Type > > interpolate (const Field< Type > &fld, const UList< Type > &defaultValues=UList< Type >()) const
 
template<class Type >
tmp< Field< Type > > interpolate (const tmp< Field< Type >> &tFld, const UList< Type > &defaultValues=UList< Type >()) const
 
virtual tmp< labelField > interfaceInternalField (const labelUList &internalData) const
 
virtual tmp< labelField > internalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &internalData) const
 Return neighbour field. More...
 
- Public Member Functions inherited from coupledFvPatch
 TypeName (coupledPolyPatch::typeName_())
 Runtime type information. More...
 
 coupledFvPatch (const polyPatch &patch, const fvBoundaryMesh &bm)
 Construct from polyPatch. More...
 
virtual ~coupledFvPatch ()
 Destructor. More...
 
virtual const labelUList & faceCells () const
 Return faceCell addressing. More...
 
virtual void initInternalFieldTransfer (const Pstream::commsTypes commsType, labelUList &iF) const
 Initialise neighbour field transfer. More...
 
virtual void initInternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const
 Inherit initInternalFieldTransfer from lduInterface. More...
 
- Public Member Functions inherited from lduInterface
 TypeName ("lduInterface")
 Runtime type information. More...
 
 lduInterface ()=default
 Construct null. More...
 
virtual ~lduInterface ()=default
 Destructor. More...
 
virtual void initInternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const
 Initialise transfer of internal field adjacent to the interface. More...
 
- Public Member Functions inherited from fvPatch
 TypeName (polyPatch::typeName_())
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, fvPatch, polyPatch,(const polyPatch &patch, const fvBoundaryMesh &bm),(patch, bm))
 
 fvPatch (const polyPatch &, const fvBoundaryMesh &)
 Construct from polyPatch and fvBoundaryMesh. More...
 
virtual ~fvPatch ()
 Destructor. More...
 
const polyPatch & patch () const
 Return the polyPatch. More...
 
virtual const word & name () const
 Return name. More...
 
virtual label start () const
 Return start label of this patch in the polyMesh face list. More...
 
virtual label size () const
 Return size. More...
 
label index () const
 Return the index of this patch in the fvBoundaryMesh. More...
 
const fvBoundaryMesh & boundaryMesh () const
 Return boundaryMesh reference. More...
 
template<class T >
const List< T >::subList patchSlice (const List< T > &l) const
 Slice list to patch. More...
 
const vectorField & Cf () const
 Return face centres. More...
 
tmp< vectorField > Cn () const
 Return neighbour cell centres. More...
 
const vectorField & Sf () const
 Return face area vectors. More...
 
const scalarField & magSf () const
 Return face area magnitudes. More...
 
tmp< vectorField > nf () const
 Return face normals. More...
 
const scalarField & weights () const
 Return patch weighting factors. More...
 
const scalarField & deltaCoeffs () const
 
template<class Type >
tmp< Field< Type > > patchInternalField (const UList< Type > &) const
 Return given internal field next to patch as patch field. More...
 
template<class Type >
void patchInternalField (const UList< Type > &, Field< Type > &) const
 Return given internal field next to patch as patch field. More...
 
template<class GeometricField , class Type >
const GeometricField::Patch & patchField (const GeometricField &) const
 Return the corresponding patchField of the named field. More...
 
template<class GeometricField , class Type >
const GeometricField::Patch & lookupPatchField (const word &name, const GeometricField *=nullptr, const Type *=nullptr) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > patchInternalField (const UList< Type > &f) const
 
- Public Member Functions inherited from cyclicAMILduInterface
 TypeName ("cyclicAMILduInterface")
 Runtime type information. More...
 
 cyclicAMILduInterface ()=default
 Construct null. More...
 
virtual ~cyclicAMILduInterface ()=default
 Destructor. More...
 

Protected Member Functions

void makeWeights (scalarField &) const
 Make patch weighting factors. More...
 
virtual void makeDeltaCoeffs (scalarField &) const
 Correct patch deltaCoeffs. More...
 
virtual void makeNonOrthoDeltaCoeffs (scalarField &) const
 Correct patch non-ortho deltaCoeffs. More...
 
virtual void makeNonOrthoCorrVectors (vectorField &) const
 Correct patch non-ortho correction vectors. More...
 
virtual void movePoints ()
 Correct patches after moving points. More...
 
- Protected Member Functions inherited from fvPatch
virtual void initMovePoints ()
 Initialise the patches for moving points. More...
 
 fvPatch (const fvPatch &)=delete
 No copy construct. More...
 
void operator= (const fvPatch &)=delete
 No copy assignment. More...
 

Additional Inherited Members

- Public Types inherited from fvPatch
typedef fvBoundaryMesh BoundaryMesh
 
- Static Public Member Functions inherited from fvPatch
static autoPtr< fvPatch > New (const polyPatch &, const fvBoundaryMesh &)
 Return a pointer to a new patch created on freestore from polyPatch. More...
 
static const fvPatch & lookupPatch (const polyPatch &p)
 Lookup the polyPatch index on corresponding fvMesh. More...
 
static bool constraintType (const word &pt)
 Return true if the given type is a constraint type. More...
 
static wordList constraintTypes ()
 Return a list of all the constraint patch types. More...
 

Detailed Description

Cyclic patch for Arbitrary Mesh Interface (AMI)

Source files

Definition at line 53 of file cyclicAMIFvPatch.H.

Constructor & Destructor Documentation

◆ cyclicAMIFvPatch()

cyclicAMIFvPatch ( const polyPatch &  patch,
const fvBoundaryMesh &  bm 
)
inline

Construct from polyPatch.

Definition at line 92 of file cyclicAMIFvPatch.H.

Member Function Documentation

◆ makeWeights()

void makeWeights ( scalarField &  w) const
protectedvirtual

Make patch weighting factors.

Implements coupledFvPatch.

Definition at line 59 of file cyclicAMIFvPatch.C.

References coupledFvPatch::delta(), forAll, Foam::interpolate(), Foam::mag(), fvPatch::makeWeights(), and fvPatch::nf().

Here is the call graph for this function:

◆ makeDeltaCoeffs()

void makeDeltaCoeffs ( scalarField &  coeffs) const
protectedvirtual

Correct patch deltaCoeffs.

Reimplemented from fvPatch.

Definition at line 102 of file cyclicAMIFvPatch.C.

◆ makeNonOrthoDeltaCoeffs()

void makeNonOrthoDeltaCoeffs ( scalarField &  coeffs) const
protectedvirtual

Correct patch non-ortho deltaCoeffs.

Reimplemented from fvPatch.

Definition at line 108 of file cyclicAMIFvPatch.C.

◆ makeNonOrthoCorrVectors()

void makeNonOrthoCorrVectors ( vectorField &  vecs) const
protectedvirtual

Correct patch non-ortho correction vectors.

Reimplemented from fvPatch.

Definition at line 115 of file cyclicAMIFvPatch.C.

◆ movePoints()

void movePoints ( )
protectedvirtual

Correct patches after moving points.

Reimplemented from fvPatch.

Definition at line 200 of file cyclicAMIFvPatch.C.

References fvPatch::Cf(), cyclicAMIFvPatch::cyclicAMIPatch(), DebugInfo, Foam::endl(), f(), polyPatch::faceAreas(), polyPatch::faceCentres(), forAll, Foam::gMin(), Foam::gSum(), fvPatch::index(), Foam::mag(), fvPatch::magSf(), mesh, boundaryMesh::mesh(), Foam::fvc::meshPhi(), Foam::nl, UPstream::parRun(), Foam::foamVersion::patch, and fvPatch::Sf().

Here is the call graph for this function:

◆ TypeName()

TypeName ( cyclicAMIPolyPatch::typeName_()  )

Runtime type information.

◆ cyclicAMIPatch()

const cyclicAMIPolyPatch& cyclicAMIPatch ( ) const
inline

Return local reference cast into the cyclic patch.

Definition at line 105 of file cyclicAMIFvPatch.H.

Referenced by cyclicAMIFvPatch::movePoints().

Here is the caller graph for this function:

◆ neighbPatchID()

virtual label neighbPatchID ( ) const
inlinevirtual

Return neighbour.

Implements cyclicAMILduInterface.

Definition at line 111 of file cyclicAMIFvPatch.H.

References cyclicAMIPolyPatch::neighbPatchID().

Here is the call graph for this function:

◆ owner()

virtual bool owner ( ) const
inlinevirtual

Implements cyclicAMILduInterface.

Definition at line 116 of file cyclicAMIFvPatch.H.

References cyclicAMIPolyPatch::owner().

Here is the call graph for this function:

◆ neighbPatch()

virtual const cyclicAMIFvPatch& neighbPatch ( ) const
inlinevirtual

Return processor number.

Implements cyclicAMILduInterface.

Definition at line 122 of file cyclicAMIFvPatch.H.

References fvPatch::boundaryMesh(), and cyclicAMIPolyPatch::neighbPatchID().

Here is the call graph for this function:

◆ AMI()

virtual const AMIPatchToPatchInterpolation& AMI ( ) const
inlinevirtual

Return a reference to the AMI interpolator.

Implements cyclicAMILduInterface.

Definition at line 131 of file cyclicAMIFvPatch.H.

References cyclicAMIPolyPatch::AMI().

Here is the call graph for this function:

◆ applyLowWeightCorrection()

virtual bool applyLowWeightCorrection ( ) const
inlinevirtual

Return true if applying the low weight correction.

Definition at line 137 of file cyclicAMIFvPatch.H.

References cyclicAMIPolyPatch::applyLowWeightCorrection().

Here is the call graph for this function:

◆ parallel()

virtual bool parallel ( ) const
inlinevirtual

Are the cyclic planes parallel.

Implements coupledFvPatch.

Definition at line 144 of file cyclicAMIFvPatch.H.

References coupledPolyPatch::parallel().

Referenced by cyclicAMIFvPatchField< scalar >::doTransform().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ forwardT()

virtual const tensorField& forwardT ( ) const
inlinevirtual

Return face transformation tensor.

Implements coupledFvPatch.

Definition at line 150 of file cyclicAMIFvPatch.H.

References coupledPolyPatch::forwardT().

Referenced by cyclicAMIFvPatchField< scalar >::forwardT().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ reverseT()

virtual const tensorField& reverseT ( ) const
inlinevirtual

Return neighbour-cell transformation tensor.

Implements coupledFvPatch.

Definition at line 156 of file cyclicAMIFvPatch.H.

References coupledPolyPatch::reverseT().

Referenced by cyclicAMIFvPatchField< scalar >::reverseT().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ neighbFvPatch()

const cyclicAMIFvPatch& neighbFvPatch ( ) const
inline

Definition at line 161 of file cyclicAMIFvPatch.H.

References fvPatch::boundaryMesh(), and cyclicAMIPolyPatch::neighbPatchID().

Referenced by cyclicAMIFvPatch::coupled().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coupled()

bool coupled ( ) const
virtual

Return true if this patch is coupled. This is equivalent to the coupledPolyPatch::coupled() if parallel running or both sides present, false otherwise

Reimplemented from coupledFvPatch.

Definition at line 53 of file cyclicAMIFvPatch.C.

References cyclicAMIFvPatch::neighbFvPatch(), UPstream::parRun(), and fvPatch::size().

Here is the call graph for this function:

◆ delta()

Foam::tmp< Foam::vectorField > delta ( ) const
virtual

Return delta (P to N) vectors across coupled patch.

Implements coupledFvPatch.

Definition at line 122 of file cyclicAMIFvPatch.C.

References coupledFvPatch::delta(), forAll, Foam::interpolate(), tmp< T >::New(), Foam::transform(), and Foam::Zero.

Here is the call graph for this function:

◆ interpolate() [1/2]

tmp<Field<Type> > interpolate ( const Field< Type > &  fld,
const UList< Type > &  defaultValues = UList<Type>() 
) const
inline

Definition at line 179 of file cyclicAMIFvPatch.H.

References fld, and cyclicAMIPolyPatch::interpolate().

Here is the call graph for this function:

◆ interpolate() [2/2]

tmp<Field<Type> > interpolate ( const tmp< Field< Type >> &  tFld,
const UList< Type > &  defaultValues = UList<Type>() 
) const
inline

Definition at line 189 of file cyclicAMIFvPatch.H.

References cyclicAMIPolyPatch::interpolate().

Here is the call graph for this function:

◆ interfaceInternalField()

Foam::tmp< Foam::labelField > interfaceInternalField ( const labelUList &  internalData) const
virtual

Return the values of the given internal data adjacent to the interface as a field

Implements coupledFvPatch.

Definition at line 182 of file cyclicAMIFvPatch.C.

◆ internalFieldTransfer()

Foam::tmp< Foam::labelField > internalFieldTransfer ( const Pstream::commsTypes  commsType,
const labelUList &  internalData 
) const
virtual

Return neighbour field.

Implements coupledFvPatch.

Definition at line 191 of file cyclicAMIFvPatch.C.


The documentation for this class was generated from the following files: