Agglomerate using the MGridGen algorithm. More...


Public Member Functions | |
| TypeName ("MGridGen") | |
| Runtime type information. More... | |
| MGridGenGAMGAgglomeration (const lduMesh &mesh, const dictionary &controlDict) | |
| Construct given mesh and controls. More... | |
Public Member Functions inherited from GAMGAgglomeration | |
| TypeName ("GAMGAgglomeration") | |
| Runtime type information. More... | |
| declareRunTimeSelectionTable (autoPtr, GAMGAgglomeration, lduMesh,(const lduMesh &mesh, const dictionary &controlDict),(mesh, controlDict)) | |
| Runtime selection table for pure geometric agglomerators. More... | |
| declareRunTimeSelectionTable (autoPtr, GAMGAgglomeration, lduMatrix,(const lduMatrix &matrix, const dictionary &controlDict),(matrix, controlDict)) | |
| Runtime selection table for matrix or mixed geometric/matrix. More... | |
| declareRunTimeSelectionTable (autoPtr, GAMGAgglomeration, geometry,(const lduMesh &mesh, const scalarField &cellVolumes, const vectorField &faceAreas, const dictionary &controlDict),(mesh, cellVolumes, faceAreas, controlDict)) | |
| Runtime selection table for matrix or mixed geometric/matrix. More... | |
| GAMGAgglomeration (const lduMesh &mesh, const dictionary &controlDict) | |
| Construct given mesh and controls. More... | |
| ~GAMGAgglomeration () | |
| Destructor. More... | |
| label | size () const |
| const lduMesh & | meshLevel (const label leveli) const |
| Return LDU mesh of given level. More... | |
| bool | hasMeshLevel (const label leveli) const |
| Do we have mesh for given level? More... | |
| const lduInterfacePtrsList & | interfaceLevel (const label leveli) const |
| Return LDU interface addressing of given level. More... | |
| const labelField & | restrictAddressing (const label leveli) const |
| Return cell restrict addressing of given level. More... | |
| const labelList & | faceRestrictAddressing (const label leveli) const |
| Return face restrict addressing of given level. More... | |
| const labelListList & | patchFaceRestrictAddressing (const label leveli) const |
| const boolList & | faceFlipMap (const label leveli) const |
| Return face flip map of given level. More... | |
| label | nCells (const label leveli) const |
| Return number of coarse cells (before processor agglomeration) More... | |
| label | nFaces (const label leveli) const |
| Return number of coarse faces (before processor agglomeration) More... | |
| const labelList & | nPatchFaces (const label leveli) const |
| Return number of coarse patch faces (before processor. More... | |
| template<class Type > | |
| void | restrictField (Field< Type > &cf, const Field< Type > &ff, const label fineLevelIndex, const bool procAgglom) const |
| Restrict (integrate by summation) cell field. More... | |
| template<class Type > | |
| void | restrictFaceField (Field< Type > &cf, const Field< Type > &ff, const label fineLevelIndex) const |
| Restrict (integrate by summation) face field. More... | |
| template<class Type > | |
| void | restrictField (Field< Type > &cf, const Field< Type > &ff, const labelList &fineToCoarse) const |
| Restrict (integrate by summation) cell field. More... | |
| template<class Type > | |
| void | prolongField (Field< Type > &ff, const Field< Type > &cf, const label coarseLevelIndex, const bool procAgglom) const |
| Prolong (interpolate by injection) cell field. More... | |
| bool | processorAgglomerate () const |
| Whether to agglomerate across processors. More... | |
| const labelList & | procAgglomMap (const label fineLeveli) const |
| Mapping from processor to agglomerated processor (global, all. More... | |
| const labelList & | agglomProcIDs (const label fineLeveli) const |
| Set of processors to agglomerate. Element 0 is the. More... | |
| bool | hasProcMesh (const label fineLeveli) const |
| Check that level has combined mesh. More... | |
| label | procCommunicator (const label fineLeveli) const |
| Communicator for current level or -1. More... | |
| const labelList & | cellOffsets (const label fineLeveli) const |
| Mapping from processor to procMesh cells. More... | |
| const labelListList & | faceMap (const label fineLeveli) const |
| Mapping from processor to procMesh face. More... | |
| const labelListList & | boundaryMap (const label fineLeveli) const |
| Mapping from processor to procMesh boundary. More... | |
| const labelListListList & | boundaryFaceMap (const label fineLeveli) const |
| Mapping from processor to procMesh boundary face. More... | |
Public Member Functions inherited from MeshObject< lduMesh, GeometricMeshObject, GAMGAgglomeration > | |
| MeshObject (const lduMesh &mesh) | |
| virtual | ~MeshObject () |
| const lduMesh & | mesh () const |
| virtual bool | writeData (Foam::Ostream &) const |
Public Member Functions inherited from GeometricMeshObject< lduMesh > | |
| GeometricMeshObject (const word &typeName, const objectRegistry &obr) | |
Public Member Functions inherited from TopologicalMeshObject< lduMesh > | |
| TopologicalMeshObject (const word &typeName, const objectRegistry &obr) | |
Public Member Functions inherited from meshObject | |
| ClassName ("meshObject") | |
| meshObject (const word &typeName, const objectRegistry &obr) | |
Public Member Functions inherited from regIOobject | |
| TypeName ("regIOobject") | |
| Runtime type information. More... | |
| regIOobject (const IOobject &, const bool isTime=false) | |
| Construct from IOobject. Optional flag for if IOobject is the. More... | |
| regIOobject (const regIOobject &) | |
| Construct as copy. More... | |
| regIOobject (const regIOobject &, bool registerCopy) | |
| Construct as copy, transferring registry registration to copy. More... | |
| regIOobject (const word &newName, const regIOobject &, bool registerCopy) | |
| Construct as copy with new name, transfering registry registration. More... | |
| regIOobject (const IOobject &, const regIOobject &) | |
| Construct as copy with new IO parameters. More... | |
| virtual | ~regIOobject () |
| Destructor. More... | |
| bool | checkIn () |
| Add object to registry. More... | |
| bool | checkOut () |
| Remove object from registry. More... | |
| virtual void | addWatch () |
| Add file watch on object (if registered and READ_IF_MODIFIED) More... | |
| bool | ownedByRegistry () const |
| Is this object owned by the registry? More... | |
| void | store () |
| Transfer ownership of this object to its registry. More... | |
| void | release () |
| Release ownership of this object from its registry. More... | |
| label | eventNo () const |
| Event number at last update. More... | |
| label & | eventNo () |
| Event number at last update. More... | |
| bool | upToDate (const regIOobject &) const |
| Return true if up-to-date with respect to given object. More... | |
| bool | upToDate (const regIOobject &, const regIOobject &) const |
| Return true if up-to-date with respect to given objects. More... | |
| bool | upToDate (const regIOobject &, const regIOobject &, const regIOobject &) const |
| Return true if up-to-date with respect to given objects. More... | |
| bool | upToDate (const regIOobject &, const regIOobject &, const regIOobject &, const regIOobject &) const |
| Return true if up-to-date with respect to given objects. More... | |
| void | setUpToDate () |
| Set up to date (obviously) More... | |
| virtual void | rename (const word &newName) |
| Rename. More... | |
| virtual fileName | filePath () const |
| Return complete path + object name if the file exists. More... | |
| bool | headerOk () |
| Read and check header info. More... | |
| Istream & | readStream (const word &, const bool valid=true) |
| Return Istream and check object type against that given. More... | |
| void | close () |
| Close Istream. More... | |
| virtual bool | readData (Istream &) |
| Virtual readData function. More... | |
| virtual bool | read () |
| Read object. More... | |
| virtual label | addWatch (const fileName &) |
| Add file watch for fileName on object if not yet watched. Return. More... | |
| const labelList & | watchIndices () const |
| Return file-monitoring handles. More... | |
| labelList & | watchIndices () |
| Return file-monitoring handles. More... | |
| virtual bool | modified () const |
| Return true if the object's file (or files for objectRegistry) More... | |
| virtual bool | readIfModified () |
| Read object if modified (as set by call to modified) More... | |
| virtual bool | writeObject (IOstream::streamFormat, IOstream::versionNumber, IOstream::compressionType, const bool valid) const |
| Write using given format, version and compression. More... | |
| virtual bool | write (const bool valid=true) const |
| Write using setting from DB. More... | |
| virtual bool | global () const |
| Is object global. More... | |
| void | operator= (const IOobject &) |
Public Member Functions inherited from IOobject | |
| TypeName ("IOobject") | |
| Runtime type information. More... | |
| IOobject (const word &name, const fileName &instance, const objectRegistry ®istry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true) | |
| Construct from name, instance, registry, io options. More... | |
| IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry ®istry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false) | |
| Construct from name, instance, local, registry, io options. More... | |
| IOobject (const fileName &path, const objectRegistry ®istry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false) | |
| Construct from path, registry, io options. More... | |
| IOobject (const IOobject &io, const objectRegistry ®istry) | |
| Construct from copy resetting registry. More... | |
| IOobject (const IOobject &io, const word &name) | |
| Construct from copy resetting name. More... | |
| autoPtr< IOobject > | clone () const |
| Clone. More... | |
| autoPtr< IOobject > | clone (const objectRegistry ®istry) const |
| Clone resetting registry. More... | |
| virtual | ~IOobject () |
| Destructor. More... | |
| const Time & | time () const |
| Return time. More... | |
| const objectRegistry & | db () const |
| Return the local objectRegistry. More... | |
| const word & | name () const |
| Return name. More... | |
| const word & | headerClassName () const |
| Return name of the class name read from header. More... | |
| word & | headerClassName () |
| Return name of the class name read from header. More... | |
| string & | note () |
| Return non-constant access to the optional note. More... | |
| const string & | note () const |
| Return the optional note. More... | |
| bool & | registerObject () |
| Register object created from this IOobject with registry if true. More... | |
| bool | registerObject () const |
| Register object created from this IOobject with registry if true. More... | |
| bool & | globalObject () |
| Is object same for all processors. More... | |
| bool | globalObject () const |
| Is object same for all processors. More... | |
| readOption | readOpt () const |
| readOption & | readOpt () |
| writeOption | writeOpt () const |
| writeOption & | writeOpt () |
| word | group () const |
| Return group (extension part of name) More... | |
| word | member () const |
| Return member (name without the extension) More... | |
| const fileName & | rootPath () const |
| const fileName & | caseName () const |
| const fileName & | instance () const |
| fileName & | instance () |
| const fileName & | local () const |
| fileName | path () const |
| Return complete path. More... | |
| fileName | path (const word &instance, const fileName &local="") const |
| Return complete path with alternative instance and local. More... | |
| fileName | objectPath () const |
| Return complete path + object name. More... | |
| fileName | localFilePath (const word &typeName) const |
| Helper for filePath that searches locally. More... | |
| fileName | globalFilePath (const word &typeName) const |
| Helper for filePath that searches up if in parallel. More... | |
| bool | readHeader (Istream &) |
| Read header. More... | |
| template<class Type > | |
| bool | typeHeaderOk (const bool checkType=true) |
| Read header (uses typeFilePath to find file) and check header. More... | |
| template<class Type > | |
| void | warnNoRereading () const |
| Helper: warn that type does not support re-reading. More... | |
| bool | writeHeader (Ostream &) const |
| Write header. More... | |
| bool | writeHeader (Ostream &, const word &objectType) const |
| Write header. Allow override of type. More... | |
| bool | good () const |
| bool | bad () const |
| InfoProxy< IOobject > | info () const |
| Return info proxy. More... | |
| void | operator= (const IOobject &) |
| template<class Name > | |
| Foam::word | groupName (Name name, const word &group) |
Additional Inherited Members | |
Public Types inherited from IOobject | |
| enum | objectState { GOOD, BAD } |
| Enumeration defining the valid states of an IOobject. More... | |
| enum | readOption { MUST_READ, MUST_READ_IF_MODIFIED, READ_IF_PRESENT, NO_READ } |
| Enumeration defining the read options. More... | |
| enum | writeOption { AUTO_WRITE = 0, NO_WRITE = 1 } |
| Enumeration defining the write options. More... | |
| enum | fileCheckTypes { timeStamp, timeStampMaster, inotify, inotifyMaster } |
| Enumeration defining the file checking options. More... | |
Static Public Member Functions inherited from GAMGAgglomeration | |
| static const GAMGAgglomeration & | New (const lduMesh &mesh, const dictionary &controlDict) |
| Return the selected geometric agglomerator. More... | |
| static const GAMGAgglomeration & | New (const lduMatrix &matrix, const dictionary &controlDict) |
| Return the selected matrix agglomerator. More... | |
| static autoPtr< GAMGAgglomeration > | New (const lduMesh &mesh, const scalarField &cellVolumes, const vectorField &faceAreas, const dictionary &controlDict) |
| Return the selected geometric agglomerator. More... | |
| static void | calculateRegionMaster (const label comm, const labelList &procAgglomMap, labelList &masterProcs, List< label > &agglomProcIDs) |
| Given fine to coarse processor map determine: More... | |
| static bool | checkRestriction (labelList &newRestrict, label &nNewCoarse, const lduAddressing &fineAddressing, const labelUList &restrict, const label nCoarse) |
| Given restriction determines if coarse cells are connected. More... | |
Static Public Member Functions inherited from MeshObject< lduMesh, GeometricMeshObject, GAMGAgglomeration > | |
| static const GAMGAgglomeration & | New (const lduMesh &mesh) |
| static const GAMGAgglomeration & | New (const lduMesh &mesh, const Data1 &d) |
| static const GAMGAgglomeration & | New (const lduMesh &mesh, const Data1 &, const Data2 &) |
| static const GAMGAgglomeration & | New (const lduMesh &mesh, const Data1 &, const Data2 &, const Data3 &) |
| static const GAMGAgglomeration & | New (const lduMesh &mesh, const Data1 &, const Data2 &, const Data3 &, const Data4 &) |
| static bool | Delete (const lduMesh &mesh) |
Static Public Member Functions inherited from meshObject | |
| template<class Mesh > | |
| static void | movePoints (objectRegistry &) |
| template<class Mesh > | |
| static void | updateMesh (objectRegistry &, const mapPolyMesh &) |
| template<class Mesh , template< class > class MeshObjectType> | |
| static void | clear (objectRegistry &) |
| template<class Mesh , template< class > class FromType, template< class > class ToType> | |
| static void | clearUpto (objectRegistry &) |
| Clear all meshObject derived from FromType up to (but not including) More... | |
Static Public Member Functions inherited from regIOobject | |
| template<class Type > | |
| static Type & | store (Type *) |
| Transfer ownership of the given object pointer to its registry. More... | |
| template<class Type > | |
| static Type & | store (autoPtr< Type > &) |
| Transfer ownership of the given object pointer to its registry. More... | |
Static Public Member Functions inherited from IOobject | |
| static bool | fileNameComponents (const fileName &path, fileName &instance, fileName &local, word &name) |
| Split path into instance, local, name components. More... | |
| template<class Name > | |
| static word | groupName (Name name, const word &group) |
| template<class Stream > | |
| static Stream & | writeBanner (Stream &os, bool noHint=false) |
| Write the standard OpenFOAM file/dictionary banner. More... | |
| template<class Stream > | |
| static Stream & | writeDivider (Stream &os) |
| Write the standard file section divider. More... | |
| template<class Stream > | |
| static Stream & | writeEndDivider (Stream &os) |
| Write the standard end file divider. More... | |
Static Public Attributes inherited from regIOobject | |
| static float | fileModificationSkew |
Static Public Attributes inherited from IOobject | |
| static const NamedEnum< fileCheckTypes, 4 > | fileCheckTypesNames |
| static fileCheckTypes | fileModificationChecking |
| Type of file modification checking. More... | |
Protected Member Functions inherited from GAMGAgglomeration | |
| void | agglomerateLduAddressing (const label fineLevelIndex) |
| Assemble coarse mesh addressing. More... | |
| void | combineLevels (const label curLevel) |
| Combine a level with the previous one. More... | |
| void | compactLevels (const label nCreatedLevels) |
| Shrink the number of levels to that specified. More... | |
| bool | continueAgglomerating (const label nCells, const label nCoarseCells) const |
| Check the need for further agglomeration. More... | |
| void | clearLevel (const label leveli) |
| void | procAgglomerateLduAddressing (const label comm, const labelList &procAgglomMap, const labelList &procIDs, const label allMeshComm, const label levelIndex) |
| Collect and combine processor meshes into allMesh: More... | |
| void | procAgglomerateRestrictAddressing (const label comm, const labelList &procIDs, const label levelIndex) |
| Collect and combine basic restriction addressing: More... | |
Protected Member Functions inherited from regIOobject | |
| bool | readHeaderOk (const IOstream::streamFormat PstreamFormat, const word &typeName) |
| Helper: check readOpt flags and read if necessary. More... | |
Protected Member Functions inherited from IOobject | |
| void | setBad (const string &) |
| Set the object state to bad. More... | |
Static Protected Member Functions inherited from GAMGAgglomeration | |
| template<class Type > | |
| static void | gatherList (const label comm, const labelList &procIDs, const Type &myVal, List< Type > &allVals, const int tag=Pstream::msgType()) |
| Gather value from all procIDs onto procIDs[0]. More... | |
Protected Attributes inherited from GAMGAgglomeration | |
| const label | maxLevels_ |
| Max number of levels. More... | |
| const label | nCellsInCoarsestLevel_ |
| Number of cells in coarsest level. More... | |
| const lduInterfacePtrsList | meshInterfaces_ |
| Cached mesh interfaces. More... | |
| autoPtr< GAMGProcAgglomeration > | procAgglomeratorPtr_ |
| labelList | nCells_ |
| The number of cells in each level. More... | |
| PtrList< labelField > | restrictAddressing_ |
| Cell restriction addressing array. More... | |
| labelList | nFaces_ |
| The number of (coarse) faces in each level. More... | |
| PtrList< labelList > | faceRestrictAddressing_ |
| Face restriction addressing array. More... | |
| PtrList< boolList > | faceFlipMap_ |
| Face flip: for faces mapped to internal faces stores whether. More... | |
| PtrList< labelList > | nPatchFaces_ |
| The number of (coarse) patch faces in each level. More... | |
| PtrList< labelListList > | patchFaceRestrictAddressing_ |
| Patch-local face restriction addressing array. More... | |
| PtrList< lduPrimitiveMesh > | meshLevels_ |
| Hierarchy of mesh addressing. More... | |
| PtrList< labelList > | procAgglomMap_ |
| Per level, per processor the processor it agglomerates into. More... | |
| PtrList< labelList > | agglomProcIDs_ |
| Per level the set of processors to agglomerate. Element 0 is. More... | |
| labelList | procCommunicator_ |
| Communicator for given level. More... | |
| PtrList< labelList > | procCellOffsets_ |
| Mapping from processor to procMeshLevel cells. More... | |
| PtrList< labelListList > | procFaceMap_ |
| Mapping from processor to procMeshLevel face. More... | |
| PtrList< labelListList > | procBoundaryMap_ |
| Mapping from processor to procMeshLevel boundary. More... | |
| PtrList< labelListListList > | procBoundaryFaceMap_ |
| Mapping from processor to procMeshLevel boundary face. More... | |
Protected Attributes inherited from MeshObject< lduMesh, GeometricMeshObject, GAMGAgglomeration > | |
| const lduMesh & | mesh_ |
Static Protected Attributes inherited from regIOobject | |
| static bool | masterOnlyReading = false |
| To flag master-only reading of objects. More... | |
Agglomerate using the MGridGen algorithm.
Definition at line 58 of file MGridGenGAMGAgglomeration.H.
| MGridGenGAMGAgglomeration | ( | const lduMesh & | mesh, |
| const dictionary & | controlDict | ||
| ) |
Construct given mesh and controls.
Note: in-place update of weights is more effective it seems?
Should not be. fluke? scalarField weights(*faceWeightsPtr);
Definition at line 164 of file MGridGenGAMGAgglomeration.C.
References forAll, forAllConstIter(), lduMesh::interfaces(), lduMesh::lduAddr(), dictionary::lookup(), Foam::mag(), Foam::readLabel(), lduAddressing::size(), Foam::sqrt(), and globalIndex::toGlobal().

| TypeName | ( | "MGridGen" | ) |
Runtime type information.
1.8.13