Public Member Functions | Protected Member Functions | List of all members
coupledFaPatch Class Referenceabstract

coupledFaPatch is an abstract base class for patches that couple regions of the computational domain e.g. cyclic, arbitrary interfaces, sliding interfaces and processor-processor links. More...

Inheritance diagram for coupledFaPatch:
Inheritance graph
[legend]
Collaboration diagram for coupledFaPatch:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("coupled")
 
 coupledFaPatch (const word &name, const labelList &edgeLabels, const label index, const faBoundaryMesh &bm, const label ngbPolyPatchIndex)
 
 coupledFaPatch (const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm)
 
virtual ~coupledFaPatch ()=default
 
virtual bool coupled () const
 
bool separated () const
 
const vectorFieldseparation () const
 
const tensorFieldforwardT () const
 
const tensorFieldreverseT () const
 
bool parallel () const
 
virtual void initGeometry ()=0
 
virtual void calcGeometry ()=0
 
virtual void initMovePoints (const pointField &)=0
 
virtual void movePoints (const pointField &)=0
 
virtual tmp< vectorFielddelta () const =0
 
virtual const labelUListfaceCells () const
 
virtual tmp< labelFieldinterfaceInternalField (const labelUList &internalData) const =0
 
virtual void initTransfer (const Pstream::commsTypes commsType, const labelUList &interfaceData) const
 
virtual tmp< labelFieldtransfer (const Pstream::commsTypes commsType, const labelUList &interfaceData) const =0
 
virtual void initInternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const
 
virtual tmp< labelFieldinternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const =0
 
- Public Member Functions inherited from lduInterface
 TypeName ("lduInterface")
 
 lduInterface ()=default
 
virtual ~lduInterface ()=default
 
virtual tmp< labelFieldinterfaceInternalField (const labelUList &internalData, const labelUList &faceCells) const =0
 
virtual void initInternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF, const labelUList &faceCells) const
 
- Public Member Functions inherited from faPatch
 TypeName ("patch")
 
 declareRunTimeSelectionTable (autoPtr, faPatch, dictionary,(const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm),(name, dict, index, bm))
 
 faPatch (const word &name, const labelList &edgeLabels, const label index, const faBoundaryMesh &bm, const label ngbPolyPatchIndex)
 
 faPatch (const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm)
 
 faPatch (const faPatch &, const faBoundaryMesh &)
 
virtual autoPtr< faPatchclone (const faBoundaryMesh &bm, const labelList &edgeLabels, const label index, const label ngbPolyPatchIndex) const
 
virtual ~faPatch ()
 
const labelListedgeLabels () const noexcept
 
void edgeLabels (const UList< label > &newEdgeLabels)
 
label nPoints () const
 
label nEdges () const noexcept
 
label ngbPolyPatchIndex () const noexcept
 
const faBoundaryMeshboundaryMesh () const noexcept
 
label start () const
 
virtual label size () const
 
label whichEdge (const label l) const
 
template<class T >
List< T >::subList patchSlice (const List< T > &l) const
 
virtual void write (Ostream &) const
 
List< labelPairboundaryConnections () const
 
labelList boundaryProcs () const
 
List< labelPairboundaryProcSizes () const
 
const labelListpointLabels () const
 
const labelListListpointEdges () const
 
tmp< vectorFieldngbPolyPatchFaceNormals () const
 
tmp< vectorFieldngbPolyPatchPointNormals () const
 
const labelUListedgeFaces () const
 
const vectorFieldedgeCentres () const
 
const vectorFieldedgeLengths () const
 
const scalarFieldmagEdgeLengths () const
 
tmp< vectorFieldedgeNormals () const
 
tmp< vectorFieldedgeFaceCentres () const
 
const scalarFieldweights () const
 
void makeCorrectionVectors (vectorField &) const
 
const scalarFielddeltaCoeffs () const
 
void resetEdges (const UList< label > &newEdges)
 
void resetEdges (labelList &&newEdges)
 
template<class Type >
tmp< Field< Type > > patchInternalField (const UList< Type > &) const
 
template<class Type >
tmp< Foam::Field< Type > > patchInternalField (const UList< Type > &f, const labelUList &edgeFaces) const
 
template<class GeometricField , class Type >
const GeometricField::PatchpatchField (const GeometricField &) const
 
template<class GeometricField , class Type >
const GeometricField::PatchlookupPatchField (const word &name, const GeometricField *=nullptr, const Type *=nullptr) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > patchInternalField (const UList< Type > &f) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > patchInternalField (const UList< Type > &f, const labelUList &edgeFaces) const
 
- Public Member Functions inherited from patchIdentifier
 patchIdentifier (const patchIdentifier &)=default
 
patchIdentifieroperator= (const patchIdentifier &)=default
 
virtual ~patchIdentifier ()=default
 
 patchIdentifier ()
 
 patchIdentifier (const word &name, const label index)
 
 patchIdentifier (const word &name, const label index, const word &physicalType, const wordList &inGroups=wordList())
 
 patchIdentifier (const word &name, const dictionary &dict, const label index)
 
 patchIdentifier (const patchIdentifier &ident, const label index)
 
const wordname () const noexcept
 
wordname () noexcept
 
label index () const noexcept
 
label & index () noexcept
 
const wordphysicalType () const noexcept
 
wordphysicalType () noexcept
 
const wordListinGroups () const noexcept
 
wordListinGroups () noexcept
 
bool inGroup (const word &name) const
 
void write (Ostream &os) const
 
- Public Member Functions inherited from List
constexpr List () noexcept
 
 List (const label len)
 
 List (const label len, const T &val)
 
 List (const label len, const Foam::zero)
 
 List (const Foam::one, const T &val)
 
 List (const Foam::one, T &&val)
 
 List (const Foam::one, const Foam::zero)
 
 List (const List< T > &a)
 
 List (const UList< T > &a)
 
 List (List< T > &a, bool reuse)
 
 List (const UList< T > &list, const labelUList &indices)
 
template<unsigned N>
 List (const UList< T > &list, const FixedList< label, N > &indices)
 
template<unsigned N>
 List (const FixedList< T, N > &list)
 
 List (const PtrList< T > &list)
 
 List (const SLList< T > &list)
 
template<class Addr >
 List (const IndirectListBase< T, Addr > &list)
 
 List (std::initializer_list< T > list)
 
 List (List< T > &&list)
 
template<int SizeMin>
 List (DynamicList< T, SizeMin > &&list)
 
 List (SortableList< T > &&list)
 
 List (SLList< T > &&list)
 
 List (Istream &is)
 
autoPtr< List< T > > clone () const
 
 ~List ()
 
void clear ()
 
void resize (const label len)
 
void resize (const label len, const T &val)
 
void resize_nocopy (const label len)
 
void setSize (const label n)
 
void setSize (const label n, const T &val)
 
void append (const T &val)
 
void append (T &&val)
 
void append (const UList< T > &list)
 
template<class Addr >
void append (const IndirectListBase< T, Addr > &list)
 
label appendUniq (const T &val)
 
void transfer (List< T > &list)
 
template<int SizeMin>
void transfer (DynamicList< T, SizeMin > &list)
 
void transfer (SortableList< T > &list)
 
TnewElmt (const label i)
 
void operator= (const UList< T > &a)
 
void operator= (const List< T > &list)
 
void operator= (const SLList< T > &list)
 
template<class Addr >
void operator= (const IndirectListBase< T, Addr > &list)
 
template<unsigned N>
void operator= (const FixedList< T, N > &list)
 
void operator= (std::initializer_list< T > list)
 
void operator= (const T &val)
 
void operator= (const Foam::zero)
 
void operator= (List< T > &&list)
 
template<int SizeMin>
void operator= (DynamicList< T, SizeMin > &&list)
 
void operator= (SortableList< T > &&list)
 
void operator= (SLList< T > &&list)
 
IstreamreadList (Istream &is)
 
void shallowCopy (const UList< T > &)=delete
 
template<class TypeT = T>
std::enable_if< std::is_same< bool, TypeT >::value, bool >::type set (const label i, bool val=true)
 
template<class T >
 List (const label len)
 
template<class T >
 List (const label len, const T &val)
 
template<class T >
 List (const label len, const Foam::zero)
 
template<class T >
 List (const Foam::one, const T &val)
 
template<class T >
 List (const Foam::one, T &&val)
 
template<class T >
 List (const Foam::one, const Foam::zero)
 
template<class T >
 List (const UList< T > &a)
 
template<class T >
 List (const List< T > &a)
 
template<class T >
 List (List< T > &a, bool reuse)
 
template<class T >
 List (const UList< T > &list, const labelUList &indices)
 
template<class T >
 List (const PtrList< T > &list)
 
template<class T >
 List (const SLList< T > &list)
 
template<class T >
 List (std::initializer_list< T > list)
 
template<class T >
 List (List< T > &&list)
 
template<class T >
 List (SortableList< T > &&list)
 
template<class T >
 List (SLList< T > &&list)
 
template<class T >
void transfer (List< T > &list)
 
template<class T >
void transfer (SortableList< T > &list)
 
template<class T >
void operator= (const UList< T > &a)
 
template<class T >
void operator= (const List< T > &list)
 
template<class T >
void operator= (const SLList< T > &list)
 
template<class T >
void operator= (std::initializer_list< T > list)
 
template<class T >
void operator= (List< T > &&list)
 
template<class T >
void operator= (SortableList< T > &&list)
 
template<class T >
void operator= (SLList< T > &&list)
 
IstreamreadList (Istream &is)
 
template<class T >
constexpr List () noexcept
 
void resize (const label newLen)
 
template<class T >
void append (const T &val)
 
template<class T >
void append (T &&val)
 
template<class T >
void append (const UList< T > &list)
 
template<class T >
void operator= (const T &val)
 
template<class T >
void operator= (const Foam::zero)
 
template<class T >
 List (Istream &is)
 
IstreamreadList (Istream &is)
 

Protected Member Functions

virtual void makeWeights (scalarField &) const =0
 
virtual void makeDeltaCoeffs (scalarField &) const =0
 
void calcTransformTensors (const vector &Cf, const vector &Cr, const vector &nf, const vector &nr) const
 
void calcTransformTensors (const vectorField &Cf, const vectorField &Cr, const vectorField &nf, const vectorField &nr) const
 
- Protected Member Functions inherited from faPatch
void calcPointLabels () const
 
void calcPointEdges () const
 
virtual void initUpdateMesh ()
 
virtual void updateMesh ()
 

Additional Inherited Members

- Public Types inherited from faPatch
typedef faBoundaryMesh BoundaryMesh
 
- Public Types inherited from List
typedef SubList< TsubList
 
- Static Public Member Functions inherited from faPatch
static autoPtr< faPatchNew (const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm)
 
- Static Public Member Functions inherited from patchIdentifier
static word defaultName (const label n=-1)
 
- Static Public Member Functions inherited from List
static const List< T > & null ()
 

Detailed Description

coupledFaPatch is an abstract base class for patches that couple regions of the computational domain e.g. cyclic, arbitrary interfaces, sliding interfaces and processor-processor links.

Author Zeljko Tukovic and Hrvoje Jasak

Source files

Definition at line 52 of file coupledFaPatch.H.

Constructor & Destructor Documentation

◆ coupledFaPatch() [1/2]

coupledFaPatch ( const word name,
const labelList edgeLabels,
const label  index,
const faBoundaryMesh bm,
const label  ngbPolyPatchIndex 
)
inline

Definition at line 108 of file coupledFaPatch.H.

◆ coupledFaPatch() [2/2]

coupledFaPatch ( const word name,
const dictionary dict,
const label  index,
const faBoundaryMesh bm 
)
inline

Definition at line 121 of file coupledFaPatch.H.

◆ ~coupledFaPatch()

virtual ~coupledFaPatch ( )
virtualdefault

Member Function Documentation

◆ makeWeights()

virtual void makeWeights ( scalarField ) const
protectedpure virtual

Reimplemented from faPatch.

Implemented in processorFaPatch, and cyclicFaPatch.

◆ makeDeltaCoeffs()

virtual void makeDeltaCoeffs ( scalarField ) const
protectedpure virtual

Reimplemented from faPatch.

Implemented in processorFaPatch, and cyclicFaPatch.

◆ calcTransformTensors() [1/2]

void calcTransformTensors ( const vector Cf,
const vector Cr,
const vector nf,
const vector nr 
) const
protected

Definition at line 34 of file coupledFaPatch.C.

References Foam::mag(), and Foam::rotationTensor().

Here is the call graph for this function:

◆ calcTransformTensors() [2/2]

void calcTransformTensors ( const vectorField Cf,
const vectorField Cr,
const vectorField nf,
const vectorField nr 
) const
protected

Definition at line 68 of file coupledFaPatch.C.

References forAll, Foam::mag(), Foam::rotationTensor(), and Foam::sum().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "coupled"  )

◆ coupled()

virtual bool coupled ( ) const
inlinevirtual

Reimplemented from faPatch.

Reimplemented in processorFaPatch.

Definition at line 141 of file coupledFaPatch.H.

◆ separated()

bool separated ( ) const
inline

Definition at line 148 of file coupledFaPatch.H.

◆ separation()

const vectorField& separation ( ) const
inline

Definition at line 155 of file coupledFaPatch.H.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Here is the call graph for this function:

◆ forwardT()

const tensorField& forwardT ( ) const
inline

Definition at line 168 of file coupledFaPatch.H.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by cyclicFaPatch::forwardT(), and processorFaPatch::forwardT().

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

◆ reverseT()

const tensorField& reverseT ( ) const
inline

Definition at line 181 of file coupledFaPatch.H.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by cyclicFaPatch::reverseT().

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

◆ parallel()

bool parallel ( ) const
inline

Definition at line 194 of file coupledFaPatch.H.

Referenced by cyclicFaPatchField< Type >::doTransform(), and processorFaPatchField< Type >::doTransform().

Here is the caller graph for this function:

◆ initGeometry()

virtual void initGeometry ( )
pure virtual

Reimplemented from faPatch.

Implemented in cyclicFaPatch, and processorFaPatch.

◆ calcGeometry()

virtual void calcGeometry ( )
pure virtual

Reimplemented from faPatch.

Implemented in cyclicFaPatch, and processorFaPatch.

◆ initMovePoints()

virtual void initMovePoints ( const pointField )
pure virtual

Reimplemented from faPatch.

Implemented in cyclicFaPatch, and processorFaPatch.

◆ movePoints()

virtual void movePoints ( const pointField )
pure virtual

Reimplemented from faPatch.

Implemented in cyclicFaPatch, and processorFaPatch.

◆ delta()

virtual tmp<vectorField> delta ( ) const
pure virtual

Reimplemented from faPatch.

Implemented in processorFaPatch, and cyclicFaPatch.

◆ faceCells()

virtual const labelUList& faceCells ( ) const
inlinevirtual

Implements lduInterface.

Definition at line 222 of file coupledFaPatch.H.

References faPatch::edgeFaces().

Here is the call graph for this function:

◆ interfaceInternalField()

virtual tmp<labelField> interfaceInternalField ( const labelUList internalData) const
pure virtual

Implements lduInterface.

Implemented in processorFaPatch, and cyclicFaPatch.

◆ initTransfer()

virtual void initTransfer ( const Pstream::commsTypes  commsType,
const labelUList interfaceData 
) const
inlinevirtual

Reimplemented in processorFaPatch.

Definition at line 236 of file coupledFaPatch.H.

◆ transfer()

virtual tmp<labelField> transfer ( const Pstream::commsTypes  commsType,
const labelUList interfaceData 
) const
pure virtual

Implemented in processorFaPatch, and cyclicFaPatch.

◆ initInternalFieldTransfer()

virtual void initInternalFieldTransfer ( const Pstream::commsTypes  commsType,
const labelUList iF 
) const
inlinevirtual

Reimplemented from lduInterface.

Reimplemented in processorFaPatch.

Definition at line 251 of file coupledFaPatch.H.

◆ internalFieldTransfer()

virtual tmp<labelField> internalFieldTransfer ( const Pstream::commsTypes  commsType,
const labelUList iF 
) const
pure virtual

Implements lduInterface.

Implemented in processorFaPatch, and cyclicFaPatch.


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