Base solver module for fluid solvers. More...


Public Member Functions | |
| TypeName ("fluidSolver") | |
| Runtime type information. More... | |
| fluidSolver (fvMesh &mesh) | |
| Construct from region mesh. More... | |
| fluidSolver (const fluidSolver &)=delete | |
| Disallow default bitwise copy construction. More... | |
| virtual | ~fluidSolver () |
| Destructor. More... | |
| virtual scalar | maxDeltaT () const |
| Return the current maximum time-step for stable solution. More... | |
| void | operator= (const fluidSolver &)=delete |
| Disallow default bitwise assignment. More... | |
Public Member Functions inherited from solver | |
| TypeName ("solver") | |
| Runtime type information. More... | |
| declareRunTimeSelectionTable (autoPtr, solver, fvMesh,(fvMesh &mesh),(mesh)) | |
| solver (fvMesh &mesh) | |
| Construct from region mesh. More... | |
| solver (const solver &)=delete | |
| Disallow default bitwise copy construction. More... | |
| virtual | ~solver () |
| Destructor. More... | |
| bool | transient () const |
| Foam::fvModels & | fvModels () const |
| Return the fvModels that are created on demand. More... | |
| Foam::fvConstraints & | fvConstraints () const |
| Return the fvConstraints that are created on demand. More... | |
| virtual void | preSolve ()=0 |
| Called at the start of the time-step, before the PIMPLE loop. More... | |
| virtual void | moveMesh ()=0 |
| Called at the start of the PIMPLE loop to move the mesh. More... | |
| virtual void | motionCorrector ()=0 |
| Corrections that follow mesh motion. More... | |
| virtual void | prePredictor ()=0 |
| Called at the start of the PIMPLE loop. More... | |
| virtual void | momentumTransportPredictor ()=0 |
| Predict the momentum transport. More... | |
| virtual void | thermophysicalTransportPredictor ()=0 |
| Predict thermophysical transport. More... | |
| virtual void | momentumPredictor ()=0 |
| Construct and optionally solve the momentum equation. More... | |
| virtual void | thermophysicalPredictor ()=0 |
| Construct and solve the thermophysical property equations,. More... | |
| virtual void | pressureCorrector ()=0 |
| Construct and solve the pressure equation in the PISO loop. More... | |
| virtual void | momentumTransportCorrector ()=0 |
| Correct the momentum transport. More... | |
| virtual void | thermophysicalTransportCorrector ()=0 |
| Correct the thermophysical transport. More... | |
| virtual void | postSolve ()=0 |
| Called after the PIMPLE loop at the end of the time-step. More... | |
| void | operator= (const solver &)=delete |
| Disallow default bitwise assignment. More... | |
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 &) | |
| Copy constructor. More... | |
| regIOobject (regIOobject &&) | |
| Move constructor. More... | |
| regIOobject (const regIOobject &, bool registerCopy) | |
| Copy constructor, transferring registry registration to copy. More... | |
| regIOobject (const word &newName, const regIOobject &, bool registerCopy) | |
| Copy constructor with new name, transferring registry registration. More... | |
| regIOobject (const IOobject &, const regIOobject &) | |
| Copy constructor with new IO parameters. More... | |
| virtual | ~regIOobject () |
| Destructor. More... | |
| virtual bool | global () const |
| Return true if object is global, i.e. same for all processors. More... | |
| virtual bool | globalFile () const |
| Return true if object is global, i.e. same for all processors. More... | |
| const fileName & | caseName () const |
| fileName | path () const |
| Return complete path. More... | |
| fileName | objectPath () const |
| Return complete path + object name. More... | |
| fileName | filePath () const |
| Return complete path + object name if the file exists. More... | |
| bool | checkIn () |
| Add object to registry. More... | |
| bool | checkOut () |
| Remove object from registry. More... | |
| void | addWatch () |
| Add file watch on object (if registered and READ_IF_MODIFIED) More... | |
| bool | registered () const |
| Is this object registered with the registry? 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... | |
| bool | headerOk () |
| Read and check header info. More... | |
| Istream & | readStream (const word &, const bool read=true) |
| Return Istream and check object type against that given. More... | |
| void | close () |
| Close Istream. More... | |
| virtual bool | readData (Istream &) |
| Virtual readData function. 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 write) const |
| Write using given format, version and compression. More... | |
| virtual bool | write (const bool write=true) const |
| Write using setting from DB. More... | |
| void | operator= (const IOobject &)=delete |
| Assign to IOobject. More... | |
| void | operator= (const regIOobject &)=delete |
| Disallow default assignment. More... | |
| const fileName & | caseName (const bool global) const |
| fileName | path (const bool global) const |
| Return complete path including the processor sub-directory. More... | |
| fileName | objectPath (const bool global) const |
| Return complete path + object name including the processor. More... | |
| fileName | filePath (const bool global) const |
| Return complete path + object name if the file exists. More... | |
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) | |
| 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) | |
| 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... | |
| IOobject (const IOobject &io)=default | |
| Copy constructor. 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... | |
| 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 bool global) const |
| fileName & | instance () const |
| Return the instance directory, constant, system, <time> etc. More... | |
| void | updateInstance () const |
| If the instance is a time directory update to the current time. More... | |
| void | updateTimeInstance () const |
| Update instance to the current time. More... | |
| const fileName & | local () const |
| fileName | path (const bool global) const |
| Return complete path including the processor sub-directory. More... | |
| fileName | objectPath (const bool global) const |
| Return complete path + object name including the processor. More... | |
| fileName | relativePath () const |
| Return the path relative to the case directory. More... | |
| fileName | relativeObjectPath () const |
| Return complete relativePath + object name. More... | |
| fileName | filePath (const bool global) const |
| Return complete path + object name if the file exists. More... | |
| bool | readHeader (Istream &) |
| Read header. More... | |
| bool | headerOk () |
| Read header of local object without type-checking. 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) |
Public Attributes | |
| const scalar & | CoNum |
| Current maximum Courant number for time-step control. More... | |
Public Attributes inherited from solver | |
| const fvMesh & | mesh |
| Region mesh. More... | |
| const Time & | runTime |
| Time. More... | |
| pimpleNoLoopControl | pimple |
| PIMPLE inner-loop controls. More... | |
Protected Member Functions | |
| virtual bool | dependenciesModified () const |
| Return true if the solver's dependencies have been modified. More... | |
| virtual bool | read () |
| Read controls. More... | |
| void | meshCourantNo () const |
| Check mesh Courant numbers for moving mesh cases. More... | |
| void | correctCoNum (const surfaceScalarField &phi) |
| Correct the cached Courant numbers. More... | |
| void | correctCoNum (const volScalarField &rho, const surfaceScalarField &phi) |
| Correct the cached Courant numbers. More... | |
| void | continuityErrors (const surfaceScalarField &phi) |
| Calculate and print the continuity errors. More... | |
| void | continuityErrors (const volScalarField &rho, const volScalarField &thermoRho, const surfaceScalarField &phi) |
| Calculate and print the continuity errors. More... | |
Protected Member Functions inherited from regIOobject | |
| bool | readHeaderOk (const IOstream::streamFormat defaultFormat, const word &typeName) |
| Read header, check readOpt flags and read data if necessary. More... | |
Protected Member Functions inherited from IOobject | |
| template<class Type > | |
| bool | typeHeaderOk (const bool checkType) |
| Read header using typeGlobalFile to find file. More... | |
Protected Attributes | |
| bool | correctPhi |
| Switch to correct the flux after mesh change. More... | |
| scalar | CoNum_ |
| Current maximum Courant number for time-step control. More... | |
Protected Attributes inherited from solver | |
| fvMesh & | mesh_ |
| Region mesh. More... | |
| bool | steady |
| Switch for steady-state. More... | |
| bool | LTS |
| Switch for local time step transient operation. More... | |
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 solver | |
| static autoPtr< solver > | New (const word &solverName, fvMesh &mesh) |
| Select, construct and return the solver. More... | |
| static void | load (const word &solverName) |
| Load the specified solver library. 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) |
| static word | group (const word &name) |
| Return group (extension part of name) More... | |
| static word | member (const word &name) |
| Return member (name without the extension) More... | |
| 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 solver | |
| static scalar | deltaTFactor = 1.2 |
| deltaT increase factor More... | |
Static Public Attributes inherited from regIOobject | |
| static float | fileModificationSkew |
Static Public Attributes inherited from IOobject | |
| static constexpr const char * | foamFile = "FoamFile" |
| Keyword for the FoamFile header sub-dictionary. More... | |
| static const NamedEnum< fileCheckTypes, 4 > | fileCheckTypesNames |
| static fileCheckTypes | fileModificationChecking |
| Type of file modification checking. More... | |
Base solver module for fluid solvers.
Provides Courant number time-step control and continuity checking.
Reference:
Greenshields, C. J., & Weller, H. G. (2022).
Notes on Computational Fluid Dynamics: General Principles.
CFD Direct Ltd.: Reading, UK.
Definition at line 59 of file fluidSolver.H.
| fluidSolver | ( | fvMesh & | mesh | ) |
Construct from region mesh.
Definition at line 207 of file fluidSolver.C.
References fluidSolver::read().

|
delete |
Disallow default bitwise copy construction.
|
virtual |
Destructor.
Definition at line 223 of file fluidSolver.C.
|
protectedvirtual |
Return true if the solver's dependencies have been modified.
Reimplemented from regIOobject.
Definition at line 45 of file fluidSolver.C.
References Time::controlDict(), solver::mesh, regIOobject::modified(), solver::runTime, and fvMesh::solution().

|
protectedvirtual |
Read controls.
Reimplemented from solver.
Reimplemented in twoPhaseSolver, multiphaseVoFSolver, multiphaseEuler, and compressibleVoF.
Definition at line 51 of file fluidSolver.C.
References checkMeshCourantNo, correctPhi, fvMesh::dynamic(), maxCo, mesh, pimple(), and solver::read().
Referenced by fluidSolver::fluidSolver(), multiphaseEuler::read(), multiphaseVoFSolver::read(), and twoPhaseSolver::read().


|
protected |
Check mesh Courant numbers for moving mesh cases.
Definition at line 78 of file fluidSolver.C.
References checkMeshCourantNo, Foam::endl(), Foam::gMax(), Foam::gSum(), Foam::Info, Foam::mag(), mesh, fvMesh::phi(), Foam::fvc::surfaceSum(), and fvMesh::V().

|
protected |
Correct the cached Courant numbers.
Definition at line 129 of file fluidSolver.C.
|
protected |
|
protected |
Calculate and print the continuity errors.
Definition at line 145 of file fluidSolver.C.
References cumulativeContErr, Foam::fvc::div(), Foam::endl(), globalContErr, Foam::Info, Foam::mag(), mesh, pimple(), sumLocalContErr, fvMesh::V(), and DimensionedField< Type, GeoMesh, PrimitiveField >::weightedAverage().
Referenced by incompressibleDenseParticleFluid::continuityErrors(), incompressibleFluid::continuityErrors(), and VoFSolver::continuityErrors().


|
protected |
Calculate and print the continuity errors.
Definition at line 174 of file fluidSolver.C.
References cumulativeContErr, Foam::fvc::domainIntegrate(), Foam::endl(), globalContErr, Foam::Info, Foam::mag(), mesh, rho, fvMesh::schemes(), fvSchemes::steady(), and sumLocalContErr.

| TypeName | ( | "fluidSolver" | ) |
Runtime type information.
|
virtual |
Return the current maximum time-step for stable solution.
Implements solver.
Reimplemented in VoFSolver, and incompressibleDriftFlux.
Definition at line 229 of file fluidSolver.C.
References CoNum, fvModels(), maxCo, maxDeltaT, and Foam::min().
Referenced by incompressibleDriftFlux::maxDeltaT(), and VoFSolver::maxDeltaT().


|
delete |
Disallow default bitwise assignment.
|
protected |
Switch to correct the flux after mesh change.
Definition at line 101 of file fluidSolver.H.
Referenced by compressibleMultiphaseVoF::compressibleMultiphaseVoF(), compressibleVoF::compressibleVoF(), incompressibleDriftFlux::incompressibleDriftFlux(), incompressibleMultiphaseVoF::incompressibleMultiphaseVoF(), incompressibleVoF::incompressibleVoF(), multiphaseEuler::moveMesh(), and VoFSolver::moveMesh().
|
protected |
Current maximum Courant number for time-step control.
Definition at line 104 of file fluidSolver.H.
| const scalar& CoNum |
Current maximum Courant number for time-step control.
Definition at line 139 of file fluidSolver.H.