Abstract base class for GAMG agglomerated interfaces. More...
#include <GAMGInterface.H>


Public Member Functions | |
| 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)) | |
| GAMGInterface (const label index, const lduInterfacePtrsList &coarseInterfaces) | |
| Construct from interfaces, restrict addressing set later on. | |
| GAMGInterface (const label index, const lduInterfacePtrsList &coarseInterfaces, const labelUList &faceCells, const labelUList &faceRestrictAddressing) | |
| Construct from interfaces and restrict addressing. | |
| GAMGInterface (const label index, const lduInterfacePtrsList &coarseInterfaces, Istream &is) | |
| Construct from Istream. | |
| virtual autoPtr< GAMGInterface > | clone (const label index, const lduInterfacePtrsList &coarseInterfaces, const labelList &interfaceMap, const labelUList &faceCells, const labelUList &faceRestrictAddresssing, const labelUList &faceOffsets, const lduInterfacePtrsList &allInterfaces, const label coarseComm, const label myProcNo, const labelList &procAgglomMap) const |
| Construct by assembling and return a clone. | |
| virtual label | size () const |
| Return size. | |
| virtual label | index () const |
| virtual const lduInterfacePtrsList & | coarseInterfaces () const |
| virtual const labelUList & | faceCells () const |
| Return faceCell addressing. | |
| virtual const labelList & | faceRestrictAddressing () const |
| Return (local)face restrict addressing. | |
| virtual labelList & | faceRestrictAddressing () |
| Return non-const access to face restrict addressing. | |
| template<class Type> | |
| tmp< Field< Type > > | interfaceInternalField (const UList< Type > &internalData) const |
| Return the interface internal field of the given field. | |
| template<class Type> | |
| tmp< Field< Type > > | interfaceInternalField (const UList< Type > &internalData, const labelUList &faceCells) const |
| Return the interface internal field of the given field using faceCell mapping. | |
| template<class Type> | |
| void | interfaceInternalField (const UList< Type > &internalData, List< Type > &) const |
| Get the interface internal field of the given field. | |
| virtual tmp< labelField > | interfaceInternalField (const labelUList &internalData) const |
| Return the values of the given internal data adjacent to. | |
| virtual tmp< labelField > | interfaceInternalField (const labelUList &internalData, const labelUList &faceCells) const |
| Return the values of the given internal data adjacent to the interface as a field using faceCell mapping. | |
| void | combine (const GAMGInterface &) |
| Merge the next level with this level. | |
| virtual tmp< scalarField > | agglomerateCoeffs (const scalarField &fineCoeffs) const |
| Agglomerating the given fine-level coefficients and return. | |
| virtual void | write (Ostream &) const =0 |
| Write to stream. | |
| template<class Type> | |
| Foam::tmp< Foam::Field< Type > > | interfaceInternalField (const UList< Type > &iF) const |
| template<class Type> | |
| Foam::tmp< Foam::Field< Type > > | interfaceInternalField (const UList< Type > &iF, const labelUList &faceCells) const |
| Public Member Functions inherited from lduInterface | |
| TypeNameNoDebug ("lduInterface") | |
| Runtime type information. | |
| lduInterface () noexcept=default | |
| Default construct. | |
| virtual | ~lduInterface ()=default |
| Destructor. | |
| virtual void | initInternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const |
| Initialise transfer of internal field adjacent to the interface. | |
| virtual void | initInternalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF, const labelUList &faceCells) const |
| Initialise transfer of internal field adjacent to the interface using faceCells mapping. | |
| virtual tmp< labelField > | internalFieldTransfer (const Pstream::commsTypes commsType, const labelUList &iF) const =0 |
| Transfer and return internal field adjacent to the interface. | |
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. | |
| 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. | |
Protected Member Functions | |
| GAMGInterface (const GAMGInterface &)=delete | |
| No copy construct. | |
| void | operator= (const GAMGInterface &)=delete |
| No copy assignment. | |
Protected Attributes | |
| const label | index_ |
| My index in coarseInterfaces. | |
| const lduInterfacePtrsList & | coarseInterfaces_ |
| All interfaces. | |
| labelList | faceCells_ |
| Face-cell addressing. | |
| labelList | faceRestrictAddressing_ |
| Face restrict addressing. | |
Abstract base class for GAMG agglomerated interfaces.
Definition at line 50 of file GAMGInterface.H.
|
protecteddelete |
No copy construct.
References GAMGInterface().
Referenced by calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), combine(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), declareRunTimeSelectionTable(), declareRunTimeSelectionTable(), GAMGInterface(), interfaceInternalField(), operator=(), oversetGAMGInterface::oversetGAMGInterface(), oversetGAMGInterface::oversetGAMGInterface(), oversetGAMGInterface::oversetGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), and processorGAMGInterface::processorGAMGInterface().


|
inline |
Construct from interfaces, restrict addressing set later on.
Definition at line 182 of file GAMGInterface.H.
References coarseInterfaces(), coarseInterfaces_, index(), and index_.

|
inline |
Construct from interfaces and restrict addressing.
Definition at line 196 of file GAMGInterface.H.
References coarseInterfaces(), coarseInterfaces_, faceCells(), faceCells_, faceRestrictAddressing(), faceRestrictAddressing_, index(), and index_.

| GAMGInterface | ( | const label | index, |
| const lduInterfacePtrsList & | coarseInterfaces, | ||
| Istream & | is ) |
Construct from Istream.
Definition at line 36 of file GAMGInterface.C.
References coarseInterfaces(), coarseInterfaces_, faceCells_, faceRestrictAddressing_, index(), and index_.

|
protecteddelete |
| 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) | ) |
References coarseInterfaces(), GAMGInterface(), index(), and lduInterface::lduInterface().

| declareRunTimeSelectionTable | ( | autoPtr | , |
| GAMGInterface | , | ||
| Istream | , | ||
| (const label index, const lduInterfacePtrsList &coarseInterfaces, Istream &is) | , | ||
| (index, coarseInterfaces, is) | ) |
References coarseInterfaces(), GAMGInterface(), index(), and lduInterface::lduInterface().

|
static |
Return a pointer to a new interface created on freestore given.
the fine interface
Definition at line 29 of file GAMGInterfaceNew.C.
References coarseInterfaces(), Foam::exit(), Foam::FatalError, FatalErrorInLookup, index(), and lduInterface::lduInterface().
Referenced by GAMGAgglomeration::agglomerateLduAddressing(), GAMGSolver::GAMGSolver(), lduPrimitiveMesh::gather(), interfaceInternalField(), and faceAreaPairGAMGAgglomeration::movePoints().


|
static |
Return a pointer to a new interface created on freestore given.
the fine interface
Definition at line 70 of file GAMGInterfaceNew.C.
References coarseInterfaces(), Foam::exit(), Foam::FatalError, FatalErrorInLookup, and index().

|
inlinevirtual |
Construct by assembling and return a clone.
Reimplemented in cyclicACMIGAMGInterface, cyclicAMIGAMGInterface, cyclicGAMGInterface, and oversetGAMGInterface.
Definition at line 224 of file GAMGInterface.H.
References coarseInterfaces(), faceCells(), index(), and NotImplemented.

|
inlinevirtual |
Return size.
Definition at line 251 of file GAMGInterface.H.
References faceCells_.
Referenced by agglomerateCoeffs(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), interfaceInternalField(), interfaceInternalField(), calculatedProcessorGAMGInterface::internalFieldTransfer(), calculatedProcessorGAMGInterface::internalFieldTransfer(), cyclicGAMGInterface::internalFieldTransfer(), and processorGAMGInterface::internalFieldTransfer().

|
inlinevirtual |
Definition at line 256 of file GAMGInterface.H.
References index_.
Referenced by calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), cyclicACMIGAMGInterface::clone(), cyclicAMIGAMGInterface::clone(), cyclicGAMGInterface::clone(), clone(), oversetGAMGInterface::clone(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), declareRunTimeSelectionTable(), declareRunTimeSelectionTable(), GAMGInterface(), GAMGInterface(), GAMGInterface(), New(), New(), oversetGAMGInterface::oversetGAMGInterface(), oversetGAMGInterface::oversetGAMGInterface(), oversetGAMGInterface::oversetGAMGInterface(), processorCyclicGAMGInterface::processorCyclicGAMGInterface(), processorCyclicGAMGInterface::processorCyclicGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), calculatedProcessorGAMGInterface::TypeName(), cyclicACMIGAMGInterface::TypeName(), cyclicAMIGAMGInterface::TypeName(), cyclicGAMGInterface::TypeName(), oversetGAMGInterface::TypeName(), processorCyclicGAMGInterface::TypeName(), and processorGAMGInterface::TypeName().

|
inlinevirtual |
Definition at line 261 of file GAMGInterface.H.
References coarseInterfaces_.
Referenced by calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), cyclicACMIGAMGInterface::clone(), cyclicAMIGAMGInterface::clone(), cyclicGAMGInterface::clone(), clone(), oversetGAMGInterface::clone(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), declareRunTimeSelectionTable(), declareRunTimeSelectionTable(), GAMGInterface(), GAMGInterface(), GAMGInterface(), New(), New(), oversetGAMGInterface::oversetGAMGInterface(), oversetGAMGInterface::oversetGAMGInterface(), oversetGAMGInterface::oversetGAMGInterface(), processorCyclicGAMGInterface::processorCyclicGAMGInterface(), processorCyclicGAMGInterface::processorCyclicGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), calculatedProcessorGAMGInterface::TypeName(), cyclicACMIGAMGInterface::TypeName(), cyclicAMIGAMGInterface::TypeName(), cyclicGAMGInterface::TypeName(), oversetGAMGInterface::TypeName(), processorCyclicGAMGInterface::TypeName(), and processorGAMGInterface::TypeName().

|
inlinevirtual |
Return faceCell addressing.
Implements lduInterface.
Definition at line 269 of file GAMGInterface.H.
References faceCells_.
Referenced by calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), cyclicACMIGAMGInterface::clone(), cyclicAMIGAMGInterface::clone(), cyclicGAMGInterface::clone(), clone(), oversetGAMGInterface::clone(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), GAMGInterface(), processorGAMGInterface::initInternalFieldTransfer(), interfaceInternalField(), interfaceInternalField(), interfaceInternalField(), calculatedProcessorGAMGInterface::internalFieldTransfer(), cyclicACMIGAMGInterface::internalFieldTransfer(), cyclicAMIGAMGInterface::internalFieldTransfer(), cyclicGAMGInterface::internalFieldTransfer(), oversetGAMGInterface::oversetGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), calculatedProcessorGAMGInterface::TypeName(), cyclicACMIGAMGInterface::TypeName(), cyclicAMIGAMGInterface::TypeName(), cyclicGAMGInterface::TypeName(), oversetGAMGInterface::TypeName(), processorGAMGInterface::TypeName(), calculatedProcessorGAMGInterface::~calculatedProcessorGAMGInterface(), and processorGAMGInterface::~processorGAMGInterface().

|
inlinevirtual |
Return (local)face restrict addressing.
Definition at line 277 of file GAMGInterface.H.
References faceRestrictAddressing_.
Referenced by GAMGInterface().

|
inlinevirtual |
Return non-const access to face restrict addressing.
Definition at line 285 of file GAMGInterface.H.
References faceRestrictAddressing_.
| tmp< Field< Type > > interfaceInternalField | ( | const UList< Type > & | internalData | ) | const |
Return the interface internal field of the given field.
Referenced by calculatedProcessorGAMGInterface::initInternalFieldTransfer(), processorGAMGInterface::initInternalFieldTransfer(), processorGAMGInterface::initInternalFieldTransfer(), interfaceInternalField(), interfaceInternalField(), and interfaceInternalField().

| tmp< Field< Type > > interfaceInternalField | ( | const UList< Type > & | internalData, |
| const labelUList & | faceCells ) const |
Return the interface internal field of the given field using faceCell mapping.
References faceCells(), and GAMGInterface().

| void interfaceInternalField | ( | const UList< Type > & | internalData, |
| List< Type > & | result ) const |
Get the interface internal field of the given field.
Definition at line 57 of file GAMGInterfaceTemplates.C.
References faceCells_, forAll, List< T >::resize(), and size().

|
virtual |
Return the values of the given internal data adjacent to.
the interface as a field
Implements lduInterface.
Definition at line 65 of file GAMGInterface.C.
References interfaceInternalField().

|
virtual |
Return the values of the given internal data adjacent to the interface as a field using faceCell mapping.
Implements lduInterface.
Definition at line 74 of file GAMGInterface.C.
References faceCells(), and interfaceInternalField().

| 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 52 of file GAMGInterface.C.
References faceCells_, faceRestrictAddressing_, forAll, and GAMGInterface().
Referenced by GAMGAgglomeration::combineLevels().


|
virtual |
Agglomerating the given fine-level coefficients and return.
Definition at line 84 of file GAMGInterface.C.
References Foam::abort(), faceRestrictAddressing_, Foam::FatalError, FatalErrorInFunction, forAll, Foam::max(), tmp< T >::New(), size(), UList< T >::size(), and Foam::Zero.

|
pure virtual |
Write to stream.
Implemented in calculatedProcessorGAMGInterface, cyclicACMIGAMGInterface, cyclicAMIGAMGInterface, cyclicGAMGInterface, oversetGAMGInterface, and processorGAMGInterface.
Definition at line 118 of file GAMGInterface.C.
References faceCells_, faceRestrictAddressing_, os(), and token::SPACE.
Referenced by calculatedProcessorGAMGInterface::write(), cyclicACMIGAMGInterface::write(), cyclicAMIGAMGInterface::write(), cyclicGAMGInterface::write(), oversetGAMGInterface::write(), and processorGAMGInterface::write().


| Foam::tmp< Foam::Field< Type > > interfaceInternalField | ( | const UList< Type > & | iF | ) | const |
Definition at line 27 of file GAMGInterfaceTemplates.C.
References interfaceInternalField(), New(), and size().

| Foam::tmp< Foam::Field< Type > > interfaceInternalField | ( | const UList< Type > & | iF, |
| const labelUList & | faceCells ) const |
Definition at line 39 of file GAMGInterfaceTemplates.C.
References faceCells(), forAll, and Foam::New().

|
protected |
My index in coarseInterfaces.
Definition at line 61 of file GAMGInterface.H.
Referenced by GAMGInterface(), GAMGInterface(), GAMGInterface(), and index().
|
protected |
All interfaces.
Definition at line 66 of file GAMGInterface.H.
Referenced by coarseInterfaces(), GAMGInterface(), GAMGInterface(), GAMGInterface(), cyclicACMIGAMGInterface::neighbPatch(), cyclicAMIGAMGInterface::neighbPatch(), and cyclicGAMGInterface::neighbPatch().
|
protected |
Face-cell addressing.
Definition at line 71 of file GAMGInterface.H.
Referenced by calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), combine(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), faceCells(), GAMGInterface(), GAMGInterface(), interfaceInternalField(), oversetGAMGInterface::oversetGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), size(), and write().
|
protected |
Face restrict addressing.
Definition at line 76 of file GAMGInterface.H.
Referenced by agglomerateCoeffs(), calculatedProcessorGAMGInterface::calculatedProcessorGAMGInterface(), combine(), cyclicACMIGAMGInterface::cyclicACMIGAMGInterface(), cyclicAMIGAMGInterface::cyclicAMIGAMGInterface(), cyclicGAMGInterface::cyclicGAMGInterface(), faceRestrictAddressing(), faceRestrictAddressing(), GAMGInterface(), GAMGInterface(), oversetGAMGInterface::oversetGAMGInterface(), processorGAMGInterface::processorGAMGInterface(), and write().