Agglomerate using the pair algorithm. More...
Public Member Functions | |
TypeName ("assembledFaceAreaPair") | |
~assemblyFaceAreaPairGAMGAgglomeration () | |
assemblyFaceAreaPairGAMGAgglomeration (const lduMatrix &matrix, const dictionary &controlDict) | |
assemblyFaceAreaPairGAMGAgglomeration (const lduMatrix &matrix, const scalarField &cellVolumes, const vectorField &faceAreas, const dictionary &controlDict) | |
![]() | |
TypeName ("pair") | |
pairGAMGAgglomeration (const lduMesh &mesh, const dictionary &controlDict) | |
![]() | |
TypeName ("GAMGAgglomeration") | |
declareRunTimeSelectionTable (autoPtr, GAMGAgglomeration, lduMesh,(const lduMesh &mesh, const dictionary &controlDict),(mesh, controlDict)) | |
declareRunTimeSelectionTable (autoPtr, GAMGAgglomeration, lduMatrix,(const lduMatrix &matrix, const dictionary &controlDict),(matrix, controlDict)) | |
declareRunTimeSelectionTable (autoPtr, GAMGAgglomeration, geometry,(const lduMesh &mesh, const scalarField &cellVolumes, const vectorField &faceAreas, const dictionary &controlDict),(mesh, cellVolumes, faceAreas, controlDict)) | |
GAMGAgglomeration (const lduMesh &mesh, const dictionary &controlDict) | |
~GAMGAgglomeration () | |
label | size () const |
const lduMesh & | meshLevel (const label leveli) const |
bool | hasMeshLevel (const label leveli) const |
const lduInterfacePtrsList & | interfaceLevel (const label leveli) const |
const labelField & | restrictAddressing (const label leveli) const |
const labelList & | faceRestrictAddressing (const label leveli) const |
const labelListList & | patchFaceRestrictAddressing (const label leveli) const |
const boolList & | faceFlipMap (const label leveli) const |
label | nCells (const label leveli) const |
label | nFaces (const label leveli) const |
const labelList & | nPatchFaces (const label leveli) const |
template<class Type > | |
void | restrictField (Field< Type > &cf, const Field< Type > &ff, const label fineLevelIndex, const bool procAgglom) const |
template<class Type > | |
void | restrictFaceField (Field< Type > &cf, const Field< Type > &ff, const label fineLevelIndex) const |
template<class Type > | |
void | restrictField (Field< Type > &cf, const Field< Type > &ff, const labelList &fineToCoarse) const |
template<class Type > | |
void | prolongField (Field< Type > &ff, const Field< Type > &cf, const label coarseLevelIndex, const bool procAgglom) const |
bool | processorAgglomerate () const |
const labelList & | procAgglomMap (const label fineLeveli) const |
const labelList & | agglomProcIDs (const label fineLeveli) const |
bool | hasProcMesh (const label fineLeveli) const |
label | procCommunicator (const label fineLeveli) const |
const labelList & | cellOffsets (const label fineLeveli) const |
const labelListList & | faceMap (const label fineLeveli) const |
const labelListList & | boundaryMap (const label fineLeveli) const |
const labelListListList & | boundaryFaceMap (const label fineLeveli) const |
![]() | |
MeshObject (const lduMesh &mesh) | |
virtual | ~MeshObject ()=default |
const lduMesh & | mesh () const |
virtual bool | writeData (Ostream &os) const |
![]() | |
GeometricMeshObject (const word &typeName, const objectRegistry &obr) | |
![]() | |
TopologicalMeshObject (const word &typeName, const objectRegistry &obr) | |
![]() | |
ClassName ("meshObject") | |
meshObject (const word &typeName, const objectRegistry &obr) | |
![]() | |
TypeName ("regIOobject") | |
regIOobject (const IOobject &io, const bool isTimeObject=false) | |
regIOobject (const regIOobject &rio) | |
regIOobject (const regIOobject &rio, bool registerCopy) | |
regIOobject (const word &newName, const regIOobject &, bool registerCopy) | |
regIOobject (const IOobject &io, const regIOobject &rio) | |
virtual | ~regIOobject () |
bool | checkIn () |
bool | checkOut () |
virtual void | addWatch () |
bool | ownedByRegistry () const |
bool | store () |
void | release (const bool unregister=false) |
label | eventNo () const |
label & | eventNo () |
bool | upToDate (const regIOobject &) const |
bool | upToDate (const regIOobject &, const regIOobject &) const |
bool | upToDate (const regIOobject &, const regIOobject &, const regIOobject &) const |
bool | upToDate (const regIOobject &, const regIOobject &, const regIOobject &, const regIOobject &) const |
void | setUpToDate () |
virtual void | rename (const word &newName) |
const dictionary * | findMetaData () const noexcept |
dictionary & | getMetaData () noexcept |
void | removeMetaData () |
virtual void | updateMetaData () |
virtual fileName | filePath () const |
bool | headerOk () |
Istream & | readStream (const word &, const bool valid=true) |
void | close () |
virtual bool | readData (Istream &) |
virtual bool | read () |
virtual label | addWatch (const fileName &) |
const labelList & | watchIndices () const |
labelList & | watchIndices () |
virtual bool | modified () const |
virtual bool | readIfModified () |
virtual bool | writeObject (IOstreamOption streamOpt, const bool valid) const |
virtual bool | write (const bool valid=true) const |
virtual bool | global () const |
void | operator= (const IOobject &io) |
virtual bool | writeObject (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType comp, const bool valid) const |
![]() | |
TypeName ("IOobject") | |
IOobject (const IOobject &)=default | |
virtual | ~IOobject ()=default |
IOobject (const word &name, const fileName &instance, const objectRegistry ®istry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false) | |
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) | |
IOobject (const fileName &path, const objectRegistry ®istry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false) | |
IOobject (const IOobject &io, const objectRegistry ®istry) | |
IOobject (const IOobject &io, const word &name) | |
IOobject (const IOobject &io, readOption, writeOption) | |
autoPtr< IOobject > | clone () const |
autoPtr< IOobject > | clone (const objectRegistry ®istry) const |
const objectRegistry & | db () const noexcept |
const Time & | time () const |
const word & | name () const noexcept |
const word & | headerClassName () const noexcept |
word & | headerClassName () noexcept |
const string & | note () const noexcept |
string & | note () noexcept |
bool | registerObject () const noexcept |
bool | registerObject (bool on) noexcept |
bool | globalObject () const noexcept |
bool | globalObject (bool on) noexcept |
unsigned | labelByteSize () const noexcept |
unsigned | scalarByteSize () const noexcept |
bool | isHeaderClassName (const word &clsName) const |
template<class Type > | |
bool | isHeaderClassName () const |
readOption | readOpt () const noexcept |
readOption | readOpt (readOption opt) noexcept |
writeOption | writeOpt () const noexcept |
writeOption | writeOpt (writeOption opt) noexcept |
word | group () const |
word | member () const |
const fileName & | rootPath () const |
const fileName & | caseName () const |
const fileName & | instance () const noexcept |
fileName & | instance () noexcept |
const fileName & | local () const noexcept |
fileName | path () const |
fileName | path (const word &instance, const fileName &local=fileName::null) const |
fileName | objectPath () const |
fileName | objectRelPath () const |
fileName | localFilePath (const word &typeName, const bool search=true) const |
fileName | globalFilePath (const word &typeName, const bool search=true) const |
IOstreamOption | parseHeader (const dictionary &headerDict) |
bool | readHeader (Istream &is) |
bool | readHeader (dictionary &headerDict, Istream &is) |
template<class Type > | |
bool | typeHeaderOk (const bool checkType=true, const bool search=true, const bool verbose=true) |
template<class Type > | |
void | warnNoRereading () const |
bool | writeHeader (Ostream &os) const |
bool | writeHeader (Ostream &os, const word &objectType) const |
void | writeHeader (dictionary &dict, IOstreamOption streamOpt) const |
void | writeHeader (dictionary &dict, const word &objectType, IOstreamOption streamOpt) const |
bool | good () const noexcept |
bool | bad () const noexcept |
InfoProxy< IOobject > | info () const |
void | operator= (const IOobject &io) |
readOption & | readOpt () noexcept |
writeOption & | writeOpt () noexcept |
bool & | registerObject () noexcept |
bool & | globalObject () noexcept |
template<> | |
bool | isHeaderClassName () const |
template<class StringType > | |
Foam::word | groupName (StringType base, const word &group) |
Additional Inherited Members | |
![]() | |
enum | objectState : char { GOOD, BAD } |
enum | readOption : char { MUST_READ, MUST_READ_IF_MODIFIED, READ_IF_PRESENT, NO_READ } |
enum | writeOption : char { AUTO_WRITE = 0, NO_WRITE = 1 } |
enum | fileCheckTypes : char { timeStamp, timeStampMaster, inotify, inotifyMaster } |
![]() | |
static tmp< labelField > | agglomerate (label &nCoarseCells, const lduAddressing &fineMatrixAddressing, const scalarField &faceWeights) |
![]() | |
static const GAMGAgglomeration & | New (const lduMesh &mesh, const dictionary &controlDict) |
static const GAMGAgglomeration & | New (const lduMatrix &matrix, const dictionary &controlDict) |
static const GAMGAgglomeration & | New (const lduMesh &mesh, const scalarField &cellVolumes, const vectorField &faceAreas, const dictionary &controlDict) |
static void | calculateRegionMaster (const label comm, const labelList &procAgglomMap, labelList &masterProcs, List< label > &agglomProcIDs) |
static bool | checkRestriction (labelList &newRestrict, label &nNewCoarse, const lduAddressing &fineAddressing, const labelUList &restriction, const label nCoarse) |
![]() | |
static const GAMGAgglomeration & | New (const lduMesh &mesh, Args &&... args) |
static bool | Delete (const lduMesh &mesh) |
![]() | |
template<class Mesh > | |
static void | movePoints (objectRegistry &obr) |
template<class Mesh > | |
static void | updateMesh (objectRegistry &obr, const mapPolyMesh &mpm) |
template<class Mesh , template< class > class MeshObjectType> | |
static void | clear (objectRegistry &obr) |
template<class Mesh , template< class > class FromType, template< class > class ToType> | |
static void | clearUpto (objectRegistry &obr) |
![]() | |
template<class Type > | |
static Type & | store (Type *p) |
template<class Type > | |
static Type & | store (autoPtr< Type > &ptr) |
template<class Type > | |
static Type & | store (autoPtr< Type > &&ptr) |
template<class Type > | |
static Type & | store (refPtr< Type > &ptr) |
template<class Type > | |
static Type & | store (refPtr< Type > &&ptr) |
template<class Type > | |
static Type & | store (tmp< Type > &ptr) |
template<class Type > | |
static Type & | store (tmp< Type > &&ptr) |
![]() | |
static bool | bannerEnabled () noexcept |
static bool | bannerEnabled (bool on) noexcept |
static bool | fileNameComponents (const fileName &path, fileName &instance, fileName &local, word &name) |
template<class StringType > | |
static word | groupName (StringType base, const word &group) |
static word | group (const word &name) |
static word | member (const word &name) |
static word | scopedName (const std::string &scope, const word &name) |
static IOobject | selectIO (const IOobject &io, const fileName &altFile, const word &ioName="") |
static Ostream & | writeBanner (Ostream &os, const bool noSyntaxHint=false) |
static Ostream & | writeDivider (Ostream &os) |
static Ostream & | writeEndDivider (Ostream &os) |
![]() | |
static const Enum< fileCheckTypes > | fileCheckTypesNames |
static char | scopeSeparator |
static fileCheckTypes | fileModificationChecking |
static float | fileModificationSkew |
static int | maxFileModificationPolls |
![]() | |
void | agglomerate (const lduMesh &mesh, const scalarField &faceWeights) |
pairGAMGAgglomeration (const pairGAMGAgglomeration &)=delete | |
void | operator= (const pairGAMGAgglomeration &)=delete |
![]() | |
void | agglomerateLduAddressing (const label fineLevelIndex) |
void | combineLevels (const label curLevel) |
void | compactLevels (const label nCreatedLevels) |
bool | continueAgglomerating (const label nCells, const label nCoarseCells) const |
void | clearLevel (const label leveli) |
void | procAgglomerateLduAddressing (const label comm, const labelList &procAgglomMap, const labelList &procIDs, const label allMeshComm, const label levelIndex) |
void | procAgglomerateRestrictAddressing (const label comm, const labelList &procIDs, const label levelIndex) |
GAMGAgglomeration (const GAMGAgglomeration &)=delete | |
void | operator= (const GAMGAgglomeration &)=delete |
![]() | |
bool | readHeaderOk (const IOstreamOption::streamFormat fmt, const word &typeName) |
![]() | |
void | setBad (const string &s) |
![]() | |
template<class Type > | |
static void | gatherList (const label comm, const labelList &procIDs, const Type &myVal, List< Type > &allVals, const int tag=Pstream::msgType()) |
![]() | |
static void | writeHeaderContent (Ostream &os, const IOobject &io, const word &objectType, const dictionary *metaDataDict=nullptr) |
static void | writeHeaderContent (dictionary &dict, const IOobject &io, const word &objectType, IOstreamOption streamOpt, const dictionary *metaDataDict=nullptr) |
![]() | |
const label | maxLevels_ |
label | nCellsInCoarsestLevel_ |
const lduInterfacePtrsList | meshInterfaces_ |
autoPtr< GAMGProcAgglomeration > | procAgglomeratorPtr_ |
labelList | nCells_ |
PtrList< labelField > | restrictAddressing_ |
labelList | nFaces_ |
PtrList< labelList > | faceRestrictAddressing_ |
PtrList< boolList > | faceFlipMap_ |
PtrList< labelList > | nPatchFaces_ |
PtrList< labelListList > | patchFaceRestrictAddressing_ |
PtrList< lduPrimitiveMesh > | meshLevels_ |
PtrList< labelList > | procAgglomMap_ |
PtrList< labelList > | agglomProcIDs_ |
labelList | procCommunicator_ |
PtrList< labelList > | procCellOffsets_ |
PtrList< labelListList > | procFaceMap_ |
PtrList< labelListList > | procBoundaryMap_ |
PtrList< labelListListList > | procBoundaryFaceMap_ |
![]() | |
const lduMesh & | mesh_ |
![]() | |
static bool | masterOnlyReading = false |
Agglomerate using the pair algorithm.
Definition at line 46 of file assemblyFaceAreaPairGAMGAgglomeration.H.
Definition at line 52 of file assemblyFaceAreaPairGAMGAgglomeration.C.
assemblyFaceAreaPairGAMGAgglomeration | ( | const lduMatrix & | matrix, |
const dictionary & | controlDict | ||
) |
Definition at line 59 of file assemblyFaceAreaPairGAMGAgglomeration.C.
References cyclicAMIPolyPatch::AMI(), fvMesh::boundary(), polyMesh::boundaryMesh(), Foam::cmptMultiply(), polyPatch::faceCells(), Foam::faceMap(), forAll, GeometricField::internalField(), fvMesh::lduAddr(), Foam::mag(), fvMesh::magSf(), cyclicACMIPolyPatch::mask(), polyPatch::masterImplicit(), mesh, lduMatrix::mesh(), patches, GeometricField::primitiveField(), fvMesh::Sf(), UList::size(), Foam::sqrt(), AMIInterpolation::srcWeights(), cyclicACMIPolyPatch::tolerance(), lduAddressing::upperAddr(), and Foam::Zero.
assemblyFaceAreaPairGAMGAgglomeration | ( | const lduMatrix & | matrix, |
const scalarField & | cellVolumes, | ||
const vectorField & | faceAreas, | ||
const dictionary & | controlDict | ||
) |
Definition at line 213 of file assemblyFaceAreaPairGAMGAgglomeration.C.
References Foam::cmptMultiply(), Foam::mag(), lduMatrix::mesh(), and Foam::sqrt().
TypeName | ( | "assembledFaceAreaPair" | ) |
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.