Abstract base class for GAMG agglomerated interfaces. More...
Public Member Functions | |
TypeName ("GAMGInterface") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, GAMGInterface, lduInterface,(const label index, const lduInterfacePtrsList &coarseInterfaces, const lduInterface &fineInterface, const labelField &localRestrictAddressing, const labelField &neighbourRestrictAddressing, const label fineLevelIndex, const label coarseComm),(index, coarseInterfaces, fineInterface, localRestrictAddressing, neighbourRestrictAddressing, fineLevelIndex, coarseComm)) | |
declareRunTimeSelectionTable (autoPtr, GAMGInterface, Istream,(const label index, const lduInterfacePtrsList &coarseInterfaces, Istream &is),(index, coarseInterfaces, is)) | |
GAMGInterface (const label index, const lduInterfacePtrsList &coarseInterfaces) | |
Construct from interfaces, restrict addressing set later on. More... | |
GAMGInterface (const label index, const lduInterfacePtrsList &coarseInterfaces, const labelUList &faceCells, const labelUList &faceRestrictAddressing) | |
Construct from interfaces and restrict addressing. More... | |
GAMGInterface (const label index, const lduInterfacePtrsList &coarseInterfaces, Istream &is) | |
Construct from Istream. More... | |
virtual label | size () const |
Return size. More... | |
virtual label | index () const |
virtual const lduInterfacePtrsList & | coarseInterfaces () const |
virtual const labelUList & | faceCells () const |
Return faceCell addressing. More... | |
virtual const labelList & | faceRestrictAddressing () const |
Return (local)face restrict addressing. More... | |
virtual labelList & | faceRestrictAddressing () |
Return non-const access to face restrict addressing. More... | |
template<class Type > | |
tmp< Field< Type > > | interfaceInternalField (const UList< Type > &internalData) const |
Return the interface internal field of the given field. More... | |
template<class Type > | |
void | interfaceInternalField (const UList< Type > &internalData, List< Type > &) const |
Get the interface internal field of the given field. More... | |
virtual tmp< labelField > | interfaceInternalField (const labelUList &internalData) const |
Return the values of the given internal data adjacent to. More... | |
void | combine (const GAMGInterface &) |
Merge the next level with this level. More... | |
virtual tmp< scalarField > | agglomerateCoeffs (const scalarField &fineCoeffs) const |
Agglomerating the given fine-level coefficients and return. More... | |
virtual void | write (Ostream &) const =0 |
Write to stream. More... | |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | interfaceInternalField (const UList< Type > &iF) const |
Public Member Functions inherited from lduInterface | |
TypeName ("lduInterface") | |
Runtime type information. More... | |
lduInterface () | |
Construct null. More... | |
virtual | ~lduInterface () |
Destructor. More... | |
virtual void | initInternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const |
Initialise transfer of internal field adjacent to the interface. More... | |
virtual tmp< labelField > | internalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const =0 |
Transfer and return internal field adjacent to the interface. More... | |
Static Public Member Functions | |
static autoPtr< GAMGInterface > | New (const label index, const lduInterfacePtrsList &coarseInterfaces, const lduInterface &fineInterface, const labelField &localRestrictAddressing, const labelField &neighbourRestrictAddressing, const label fineLevelIndex, const label coarseComm) |
Return a pointer to a new interface created on freestore given. More... | |
static autoPtr< GAMGInterface > | New (const word &coupleType, const label index, const lduInterfacePtrsList &coarseInterfaces, Istream &is) |
Return a pointer to a new interface created on freestore given. More... | |
Protected Attributes | |
const label | index_ |
My index in coarseInterfaces. More... | |
const lduInterfacePtrsList & | coarseInterfaces_ |
All interfaces. More... | |
labelList | faceCells_ |
Face-cell addressing. More... | |
labelList | faceRestrictAddressing_ |
Face restrict addressing. More... | |
Abstract base class for GAMG agglomerated interfaces.
Definition at line 51 of file GAMGInterface.H.
|
inline |
Construct from interfaces, restrict addressing set later on.
Definition at line 165 of file GAMGInterface.H.
|
inline |
Construct from interfaces and restrict addressing.
Definition at line 177 of file GAMGInterface.H.
GAMGInterface | ( | const label | index, |
const lduInterfacePtrsList & | coarseInterfaces, | ||
Istream & | is | ||
) |
Construct from Istream.
Definition at line 41 of file GAMGInterface.C.
TypeName | ( | "GAMGInterface" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
GAMGInterface | , | ||
lduInterface | , | ||
(const label index, const lduInterfacePtrsList &coarseInterfaces, const lduInterface &fineInterface, const labelField &localRestrictAddressing, const labelField &neighbourRestrictAddressing, const label fineLevelIndex, const label coarseComm) | , | ||
(index, coarseInterfaces, fineInterface, localRestrictAddressing, neighbourRestrictAddressing, fineLevelIndex, coarseComm) | |||
) |
declareRunTimeSelectionTable | ( | autoPtr | , |
GAMGInterface | , | ||
Istream | , | ||
(const label index, const lduInterfacePtrsList &coarseInterfaces, Istream &is) | , | ||
(index, coarseInterfaces, is) | |||
) |
|
static |
Return a pointer to a new interface created on freestore given.
the fine interface
Definition at line 34 of file GAMGInterfaceNew.C.
References Foam::exit(), Foam::FatalError, and FatalErrorInFunction.
Referenced by GAMGSolver::GAMGSolver(), and lduPrimitiveMesh::gather().
|
static |
Return a pointer to a new interface created on freestore given.
the fine interface
Definition at line 75 of file GAMGInterfaceNew.C.
References Foam::exit(), Foam::FatalError, and FatalErrorInFunction.
|
inlinevirtual |
Return size.
Definition at line 205 of file GAMGInterface.H.
References List< T >::size().
Referenced by regionCoupledGAMGInterfaceField::size(), regionCoupledWallGAMGInterfaceField::size(), cyclicGAMGInterfaceField::size(), cyclicAMIGAMGInterfaceField::size(), cyclicACMIGAMGInterfaceField::size(), and processorGAMGInterfaceField::size().
|
inlinevirtual |
Definition at line 210 of file GAMGInterface.H.
References GAMGInterface::index_.
Referenced by regionCoupledBaseGAMGInterface::nbrLduInterface().
|
inlinevirtual |
Definition at line 215 of file GAMGInterface.H.
References GAMGInterface::coarseInterfaces_.
|
inlinevirtual |
Return faceCell addressing.
Implements lduInterface.
Definition at line 221 of file GAMGInterface.H.
References GAMGInterface::faceCells_.
Referenced by cyclicACMIGAMGInterface::internalFieldTransfer(), cyclicAMIGAMGInterface::internalFieldTransfer(), and cyclicGAMGInterface::internalFieldTransfer().
|
inlinevirtual |
Return (local)face restrict addressing.
Definition at line 227 of file GAMGInterface.H.
References GAMGInterface::faceRestrictAddressing_.
|
inlinevirtual |
Return non-const access to face restrict addressing.
Definition at line 233 of file GAMGInterface.H.
References GAMGInterface::agglomerateCoeffs(), GAMGInterface::combine(), GAMGInterface::faceRestrictAddressing_, GAMGInterface::interfaceInternalField(), and GAMGInterface::write().
Return the interface internal field of the given field.
Referenced by GAMGInterface::combine(), GAMGInterface::faceRestrictAddressing(), and GAMGInterface::interfaceInternalField().
Get the interface internal field of the given field.
Definition at line 44 of file GAMGInterfaceTemplates.C.
References forAll, and List< T >::setSize().
|
virtual |
Return the values of the given internal data adjacent to.
the interface as a field
Implements lduInterface.
Definition at line 70 of file GAMGInterface.C.
References GAMGInterface::agglomerateCoeffs().
void combine | ( | const GAMGInterface & | coarseGi | ) |
Merge the next level with this level.
combining the face-restrict addressing and copying the face-cell addressing
Definition at line 56 of file GAMGInterface.C.
References GAMGInterface::faceCells_, GAMGInterface::faceRestrictAddressing_, forAll, and GAMGInterface::interfaceInternalField().
Referenced by GAMGAgglomeration::combineLevels(), and GAMGInterface::faceRestrictAddressing().
|
virtual |
Agglomerating the given fine-level coefficients and return.
Definition at line 79 of file GAMGInterface.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::max(), tmp< T >::ref(), and List< T >::size().
Referenced by GAMGInterface::faceRestrictAddressing(), and GAMGInterface::interfaceInternalField().
|
pure virtual |
Write to stream.
Implemented in processorGAMGInterface, cyclicGAMGInterface, cyclicACMIGAMGInterface, cyclicAMIGAMGInterface, regionCoupledWallGAMGInterface, and regionCoupledGAMGInterface.
Definition at line 112 of file GAMGInterface.C.
References token::SPACE.
Referenced by GAMGInterface::faceRestrictAddressing(), cyclicGAMGInterface::write(), and processorGAMGInterface::write().
Foam::tmp<Foam::Field<Type> > interfaceInternalField | ( | const UList< Type > & | iF | ) | const |
Definition at line 32 of file GAMGInterfaceTemplates.C.
References GAMGInterface::interfaceInternalField(), and tmp< T >::ref().
|
protected |
My index in coarseInterfaces.
Definition at line 61 of file GAMGInterface.H.
Referenced by GAMGInterface::index().
|
protected |
All interfaces.
Definition at line 64 of file GAMGInterface.H.
Referenced by GAMGInterface::coarseInterfaces(), cyclicAMIGAMGInterface::neighbPatch(), cyclicACMIGAMGInterface::neighbPatch(), and cyclicGAMGInterface::neighbPatch().
|
protected |
Face-cell addressing.
Definition at line 67 of file GAMGInterface.H.
Referenced by GAMGInterface::combine(), and GAMGInterface::faceCells().
|
protected |
Face restrict addressing.
Definition at line 70 of file GAMGInterface.H.
Referenced by GAMGInterface::combine(), and GAMGInterface::faceRestrictAddressing().