All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
Time Class Reference

Class to control time during OpenFOAM simulations that is also the top-level objectRegistry. More...

Inheritance diagram for Time:
Inheritance graph
[legend]
Collaboration diagram for Time:
Collaboration graph
[legend]

Public Types

enum  writeControls {
  wcTimeStep, wcRunTime, wcAdjustableRunTime, wcClockTime,
  wcCpuTime
}
 Write control options. More...
 
enum  stopAtControls { saEndTime, saNoWriteNow, saWriteNow, saNextWrite }
 Stop-run control options. More...
 
enum  fmtflags { general = 0, fixed = ios_base::fixed, scientific = ios_base::scientific }
 Supported time directory name formats. More...
 
- 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...
 
- Public Types inherited from HashTable< regIOobject *>
typedef regIOobjectvalue_type
 Type of values the HashTable contains. More...
 
typedef regIOobject * & reference
 Type that can be used for storing into HashTable::value_type. More...
 
typedef const regIOobject * & const_reference
 Type that can be used for storing into constant. More...
 
typedef label size_type
 The type that can represent the size of a HashTable. More...
 
- Public Types inherited from dimensioned< scalar >
typedef pTraits< scalar >::cmptType cmptType
 Component type. More...
 

Public Member Functions

 TypeName ("time")
 
 Time (const word &name, const argList &args, const word &systemName="system", const word &constantName="constant")
 Construct given name of dictionary to read and argument list. More...
 
 Time (const word &name, const fileName &rootPath, const fileName &caseName, const word &systemName="system", const word &constantName="constant", const bool enableFunctionObjects=true)
 Construct given name of dictionary to read, rootPath and casePath. More...
 
 Time (const dictionary &dict, const fileName &rootPath, const fileName &caseName, const word &systemName="system", const word &constantName="constant", const bool enableFunctionObjects=true)
 Construct given dictionary, rootPath and casePath. More...
 
 Time (const fileName &rootPath, const fileName &caseName, const word &systemName="system", const word &constantName="constant", const bool enableFunctionObjects=true)
 Construct given endTime, rootPath and casePath. More...
 
virtual ~Time ()
 Destructor. More...
 
const fileNamerootPath () const
 Return root path. More...
 
const fileNamecaseName () const
 Return case name. More...
 
fileName path () const
 Return path. More...
 
const dictionarycontrolDict () const
 
virtual const fileNamedbDir () const
 Local directory path of this objectRegistry relative to the time. More...
 
fileName timePath () const
 Return current time path. More...
 
IOstream::streamFormat writeFormat () const
 Default write format. More...
 
IOstream::versionNumber writeVersion () const
 Default write version number. More...
 
IOstream::compressionType writeCompression () const
 Default write compression. More...
 
const wordgraphFormat () const
 Default graph format. More...
 
const SwitchrunTimeModifiable () const
 Supports re-reading. More...
 
virtual bool read ()
 Read control dictionary, update controls and time. More...
 
void readModifiedObjects ()
 Read the objects that have been modified. More...
 
word findInstance (const fileName &dir, const word &name=word::null, const IOobject::readOption rOpt=IOobject::MUST_READ, const word &stopInstance=word::null) const
 Return the location of "dir" containing the file "name". More...
 
instantList times () const
 Search the case for valid time directories. More...
 
word findInstancePath (const fileName &path, const instant &) const
 Search the case for the time directory path. More...
 
word findInstancePath (const instant &) const
 Search the case for the time directory path. More...
 
instant findClosestTime (const scalar) const
 Search the case for the time closest to the given time. More...
 
virtual bool writeTimeDict () const
 Write time dictionary to the <time>/uniform directory. More...
 
virtual bool writeObject (IOstream::streamFormat, IOstream::versionNumber, IOstream::compressionType, const bool valid) const
 Write using given format, version and compression. More...
 
bool writeNow ()
 Write the objects now (not at end of iteration) and continue. More...
 
bool writeAndEnd ()
 Write the objects now (not at end of iteration) and end the run. More...
 
void writeOnce ()
 Write the objects once (one shot) and continue the run. More...
 
virtual word timeName () const
 Return current time name. More...
 
virtual label startTimeIndex () const
 Return start time index. More...
 
virtual dimensionedScalar startTime () const
 Return start time. More...
 
virtual dimensionedScalar endTime () const
 Return end time. More...
 
const functionObjectListfunctionObjects () const
 Return the list of function objects. More...
 
const dlLibraryTablelibs () const
 External access to the loaded libraries. More...
 
dlLibraryTablelibs ()
 External access to the loaded libraries. More...
 
bool subCycling () const
 Return true if time currently being sub-cycled, otherwise false. More...
 
const TimeStateprevTimeState () const
 Return previous TimeState if time is being sub-cycled. More...
 
virtual bool running () const
 Return true if run should continue without any side effects. More...
 
virtual bool run () const
 Return true if run should continue,. More...
 
virtual bool loop ()
 Return true if run should continue and if so increment time. More...
 
virtual bool end () const
 Return true if end of run,. More...
 
virtual bool stopAt (const stopAtControls) const
 Adjust the current stopAtControl. Note that this value. More...
 
virtual void setTime (const Time &)
 Reset the time and time-index to those of the given time. More...
 
virtual void setTime (const instant &, const label newIndex)
 Reset the time and time-index. More...
 
virtual void setTime (const dimensionedScalar &, const label newIndex)
 Reset the time and time-index. More...
 
virtual void setTime (const scalar, const label newIndex)
 Reset the time and time-index. More...
 
virtual void setEndTime (const dimensionedScalar &)
 Reset end time. More...
 
virtual void setEndTime (const scalar)
 Reset end time. More...
 
virtual void setDeltaT (const dimensionedScalar &)
 Reset time step. More...
 
virtual void setDeltaT (const scalar)
 Reset time step. More...
 
virtual void setDeltaTNoAdjust (const scalar)
 Reset time step without additional adjustment or modification. More...
 
virtual TimeState subCycle (const label nSubCycles)
 Set time to sub-cycle for the given number of steps. More...
 
virtual void endSubCycle ()
 Reset time after sub-cycling back to previous TimeState. More...
 
functionObjectListfunctionObjects ()
 Return non-const access to the list of function objects. More...
 
virtual Timeoperator+= (const dimensionedScalar &)
 Set deltaT to that specified and increment time via operator++() More...
 
virtual Timeoperator+= (const scalar)
 Set deltaT to that specified and increment time via operator++() More...
 
virtual Timeoperator++ ()
 Prefix increment,. More...
 
virtual Timeoperator++ (int)
 Postfix increment, this is identical to the prefix increment. More...
 
- Public Member Functions inherited from clock
 clock ()
 Null constructor which stores the start time. More...
 
time_t elapsedClockTime () const
 Returns wall-clock time from clock instantiation. More...
 
time_t clockTimeIncrement () const
 Returns wall-clock time from last call of clockTimeIncrement() More...
 
- Public Member Functions inherited from cpuTime
 cpuTime ()
 Construct with the current clock time. More...
 
double elapsedCpuTime () const
 Return CPU time (in seconds) from the start. More...
 
double cpuTimeIncrement () const
 Return CPU time (in seconds) since last call to cpuTimeIncrement() More...
 
- Public Member Functions inherited from TimePaths
 TimePaths (const fileName &rootPath, const fileName &caseName, const word &systemName, const word &constantName)
 Construct given database name, rootPath and casePath. More...
 
 TimePaths (const bool processorCase, const fileName &rootPath, const fileName &globalCaseName, const fileName &caseName, const word &systemName, const word &constantName)
 Construct given database name, rootPath and casePath. More...
 
bool processorCase () const
 Return true if this is a processor case. More...
 
const fileNamerootPath () const
 Return root path. More...
 
const fileNameglobalCaseName () const
 Return global case name. More...
 
const fileNamecaseName () const
 Return case name. More...
 
const wordsystem () const
 Return system name. More...
 
fileName caseSystem () const
 Return system name for the case. More...
 
const wordconstant () const
 Return constant name. More...
 
fileName caseConstant () const
 Return constant name for the case. More...
 
fileName path () const
 Return path. More...
 
fileName systemPath () const
 Return system path. More...
 
fileName constantPath () const
 Return constant path. More...
 
- Public Member Functions inherited from objectRegistry
 TypeName ("objectRegistry")
 Declare type name for this IOobject. More...
 
 objectRegistry (const Time &db, const label nIoObjects=128)
 Construct the time objectRegistry given an initial estimate. More...
 
 objectRegistry (const IOobject &io, const label nIoObjects=128)
 Construct a sub-registry given an IObject to describe the registry. More...
 
virtual ~objectRegistry ()
 Destructor. More...
 
const Timetime () const
 Return time. More...
 
const objectRegistryparent () const
 Return the parent objectRegistry. More...
 
wordList names () const
 Return the list of names of the IOobjects. More...
 
wordList sortedNames () const
 Return the sorted list of names of the IOobjects. More...
 
wordList names (const word &className) const
 Return the list of names of IOobjects of given class name. More...
 
wordList sortedNames (const word &className) const
 Return the sorted list of names of IOobjects of given class name. More...
 
template<class Type >
wordList names () const
 Return the list of names of the IOobjects of given type. More...
 
template<class Type >
wordList names (const wordRe &name) const
 Return the list of objects whose name matches the input regExp. More...
 
template<class Type >
wordList names (const wordReList &name) const
 Return the list of objects whose name matches the input regExp. More...
 
const objectRegistrysubRegistry (const word &name, const bool forceCreate=false) const
 Lookup and return a const sub-objectRegistry. Optionally create. More...
 
template<class Type >
HashTable< const Type * > lookupClass (const bool strict=false) const
 Lookup and return all objects of the given Type. More...
 
template<class Type >
HashTable< Type * > lookupClass (const bool strict=false)
 Lookup and return all objects of the given Type. More...
 
template<class Type >
bool foundObject (const word &name) const
 Is the named Type found? More...
 
template<class Type >
const Type & lookupObject (const word &name) const
 Lookup and return the object of the given Type. More...
 
template<class Type >
Type & lookupObjectRef (const word &name) const
 Lookup and return the object reference of the given Type. More...
 
label getEvent () const
 Return new event number. More...
 
virtual void rename (const word &newName)
 Rename. More...
 
bool checkIn (regIOobject &) const
 Add an regIOobject to registry. More...
 
bool checkOut (regIOobject &) const
 Remove an regIOobject from registry. More...
 
void clear ()
 Remove all regIOobject owned by the registry. More...
 
virtual bool modified () const
 Return true if any of the object's files have been modified. More...
 
void readModifiedObjects ()
 Read the objects that have been modified. More...
 
virtual bool readIfModified ()
 Read object if modified. More...
 
virtual bool writeData (Ostream &) const
 writeData function required by regIOobject but not used More...
 
template<class Type >
Foam::wordList names () const
 
template<class Type >
Foam::wordList names (const wordRe &name) const
 
template<class Type >
Foam::wordList names (const wordReList &patterns) const
 
template<class Type >
Foam::HashTable< const Type * > lookupClass (const bool strict) const
 
template<class Type >
Foam::HashTable< Type * > lookupClass (const bool strict)
 
- 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, transferring 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...
 
labeleventNo ()
 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 fileName filePath () const
 Return complete path + object name if the file exists. More...
 
bool headerOk ()
 Read and check header info. More...
 
IstreamreadStream (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 label addWatch (const fileName &)
 Add file watch for fileName on object if not yet watched. Return. More...
 
const labelListwatchIndices () const
 Return file-monitoring handles. More...
 
labelListwatchIndices ()
 Return file-monitoring handles. 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 &registry, 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 &registry, 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 &registry, 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 &registry)
 Construct from copy resetting registry. More...
 
 IOobject (const IOobject &io, const word &name)
 Construct from copy resetting name. More...
 
autoPtr< IOobjectclone () const
 Clone. More...
 
autoPtr< IOobjectclone (const objectRegistry &registry) const
 Clone resetting registry. More...
 
virtual ~IOobject ()
 Destructor. More...
 
const Timetime () const
 Return time. More...
 
const objectRegistrydb () const
 Return the local objectRegistry. More...
 
const wordname () const
 Return name. More...
 
const wordheaderClassName () const
 Return name of the class name read from header. More...
 
wordheaderClassName ()
 Return name of the class name read from header. More...
 
stringnote ()
 Return non-constant access to the optional note. More...
 
const stringnote () 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
 
readOptionreadOpt ()
 
writeOption writeOpt () const
 
writeOptionwriteOpt ()
 
word group () const
 Return group (extension part of name) More...
 
word member () const
 Return member (name without the extension) More...
 
const fileNamerootPath () const
 
const fileNamecaseName () const
 
const fileNameinstance () const
 
fileNameinstance ()
 
const fileNamelocal () 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< IOobjectinfo () const
 Return info proxy. More...
 
void operator= (const IOobject &)
 
template<class Name >
Foam::word groupName (Name name, const word &group)
 
- Public Member Functions inherited from HashTable< regIOobject *>
bool set (const word &, const regIOobject * &newElmt)
 Assign a new hashedEntry, overwriting existing entries. More...
 
 HashTable (const label size=128)
 Construct given initial table size. More...
 
 HashTable (Istream &, const label size=128)
 Construct from Istream. More...
 
 HashTable (const HashTable< regIOobject *, word, string::hash > &)
 Construct as copy. More...
 
 HashTable (const Xfer< HashTable< regIOobject *, word, string::hash >> &)
 Construct by transferring the parameter contents. More...
 
 HashTable (std::initializer_list< Tuple2< word, regIOobject * >>)
 Construct from an initializer list. More...
 
 ~HashTable ()
 Destructor. More...
 
label capacity () const
 The size of the underlying table. More...
 
label size () const
 Return number of elements in table. More...
 
bool empty () const
 Return true if the hash table is empty. More...
 
bool found (const word &) const
 Return true if hashedEntry is found in table. More...
 
iterator find (const word &)
 Find and return an iterator set at the hashedEntry. More...
 
const_iterator find (const word &) const
 Find and return an const_iterator set at the hashedEntry. More...
 
List< wordtoc () const
 Return the table of contents. More...
 
List< wordsortedToc () const
 Return the table of contents as a sorted list. More...
 
OstreamprintInfo (Ostream &) const
 Print information. More...
 
bool insert (const word &, const regIOobject * &newElmt)
 Insert a new hashedEntry. More...
 
bool erase (const iterator &)
 Erase a hashedEntry specified by given iterator. More...
 
bool erase (const word &)
 Erase a hashedEntry specified by the given key. More...
 
label erase (const UList< word > &)
 Remove entries given by the listed keys from this HashTable. More...
 
label erase (const HashTable< AnyType, word, AnyHash > &)
 Remove entries given by the given keys from this HashTable. More...
 
Foam::label erase (const HashTable< AnyType, word, AnyHash > &rhs)
 
void resize (const label newSize)
 Resize the hash table for efficiency. More...
 
void clear ()
 Clear all entries from table. More...
 
void clearStorage ()
 Clear the table entries and the table itself. More...
 
void shrink ()
 Shrink the allocated table to approx. twice number of elements. More...
 
void transfer (HashTable< regIOobject *, word, string::hash > &)
 Transfer the contents of the argument table into this table. More...
 
Xfer< HashTable< regIOobject *, word, string::hash > > xfer ()
 Transfer contents to the Xfer container. More...
 
regIOobject * & operator[] (const word &)
 Find and return a hashedEntry. More...
 
const regIOobject * & operator[] (const word &) const
 Find and return a hashedEntry. More...
 
regIOobject * & operator() (const word &)
 Find and return a hashedEntry, create it null if not present. More...
 
void operator= (const HashTable< regIOobject *, word, string::hash > &)
 Assignment. More...
 
void operator= (std::initializer_list< Tuple2< word, regIOobject * >>)
 Assignment to an initializer list. More...
 
bool operator== (const HashTable< regIOobject *, word, string::hash > &) const
 Equality. Hash tables are equal if the keys and values are equal. More...
 
bool operator!= (const HashTable< regIOobject *, word, string::hash > &) const
 The opposite of the equality operation. Takes linear time. More...
 
iterator begin ()
 Iterator set to the beginning of the HashTable. More...
 
const_iterator begin () const
 const_iterator set to the beginning of the HashTable More...
 
const_iterator cbegin () const
 const_iterator set to the beginning of the HashTable More...
 
- Public Member Functions inherited from HashTableCore
 HashTableCore ()
 Construct null. More...
 
 ClassName ("HashTable")
 Define template name and debug. More...
 
- Public Member Functions inherited from TimeState
 TimeState ()
 
virtual ~TimeState ()
 Destructor. More...
 
virtual scalar userTimeToTime (const scalar theta) const
 Convert the user-time (e.g. CA deg) to real-time (s). More...
 
virtual scalar timeToUserTime (const scalar t) const
 Convert the real-time (s) into user-time (e.g. CA deg) More...
 
scalar timeOutputValue () const
 Return current time value. More...
 
label timeIndex () const
 Return current time index. More...
 
scalar deltaTValue () const
 Return time step value. More...
 
scalar deltaT0Value () const
 Return old time step value. More...
 
dimensionedScalar deltaT () const
 Return time step. More...
 
dimensionedScalar deltaT0 () const
 Return old time step. More...
 
bool writeTime () const
 Return true if this is a write time. More...
 
bool outputTime () const
 Return true if this is a write time. More...
 
- Public Member Functions inherited from dimensioned< scalar >
 dimensioned (const word &, const dimensionSet &, const scalar)
 Construct given a name, a value and its dimensionSet. More...
 
 dimensioned (const word &, const dimensioned< scalar > &)
 Construct from a dimensioned<Type> changing the name. More...
 
 dimensioned (const scalar &t)
 Construct given a value (creates dimensionless value). More...
 
 dimensioned (Istream &)
 Construct from Istream. More...
 
 dimensioned (const word &, Istream &)
 Construct from an Istream with a given name. More...
 
 dimensioned (const word &, const dimensionSet &, Istream &)
 Construct from an Istream with a given name and dimensions. More...
 
 dimensioned (const word &, const dimensionSet &, const dictionary &)
 Construct from dictionary lookup with a given name and dimensions. More...
 
 dimensioned ()
 Null constructor. More...
 
const wordname () const
 Return const reference to name. More...
 
wordname ()
 Return non-const reference to name. More...
 
const dimensionSetdimensions () const
 Return const reference to dimensions. More...
 
dimensionSetdimensions ()
 Return non-const reference to dimensions. More...
 
const scalar & value () const
 Return const reference to value. More...
 
scalar & value ()
 Return non-const reference to value. More...
 
dimensioned< cmptTypecomponent (const direction) const
 Return a component as a dimensioned<cmptType> More...
 
void replace (const direction, const dimensioned< cmptType > &)
 Return a component with a dimensioned<cmptType> More...
 
dimensioned< scalar > T () const
 Return transpose. More...
 
void read (const dictionary &)
 Update the value of dimensioned<Type> More...
 
Istreamread (Istream &is, const dictionary &)
 Read value from stream and units from dictionary. More...
 
Istreamread (Istream &is, const HashTable< dimensionedScalar > &)
 Read value from stream and units from table. More...
 
Istreamread (Istream &is)
 Read value from stream and units from system table. More...
 
bool readIfPresent (const dictionary &)
 Update the value of dimensioned<Type> if found in the dictionary. More...
 
dimensioned< cmptTypeoperator[] (const direction) const
 Return a component as a dimensioned<cmptType> More...
 
void operator+= (const dimensioned< scalar > &)
 
void operator-= (const dimensioned< scalar > &)
 
void operator*= (const scalar)
 
void operator/= (const scalar)
 

Static Public Member Functions

static label findClosestTimeIndex (const instantList &, const scalar, const word &constantName="constant")
 Search instantList for the time index closest to the given time. More...
 
static word timeName (const scalar, const int precision=precision_)
 Return time name of given scalar time. More...
 
static instantList findTimes (const fileName &, const word &constantName="constant")
 Search a given directory for valid time directories. More...
 
- Static Public Member Functions inherited from clock
static time_t getTime ()
 Get the current clock time in seconds. More...
 
static const struct tm rawDate ()
 Return the current wall-clock date as a raw struct. More...
 
static string dateTime ()
 Return the current wall-clock date/time as a string. More...
 
static string date ()
 Return the current wall-clock date as a string. More...
 
static string clockTime ()
 Return the current wall-clock time as a string. 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 Member Functions inherited from HashTableCore
static label canonicalSize (const label)
 Return a canonical (power-of-two) size. More...
 
static iteratorEnd cend ()
 iteratorEnd set to beyond the end of any HashTable More...
 
static iteratorEnd end ()
 iteratorEnd set to beyond the end of any HashTable More...
 
- Static Public Member Functions inherited from dimensioned< scalar >
static dimensioned< scalar > lookupOrDefault (const word &, const dictionary &, const dimensionSet &dims=dimless, const scalar &defaultValue=pTraits< scalar >::zero)
 Construct from dictionary, with default dimensions and value. More...
 
static dimensioned< scalar > lookupOrDefault (const word &, const dictionary &, const scalar &defaultValue=pTraits< scalar >::zero)
 Construct from dictionary dimensionless with value. More...
 
static dimensioned< scalar > lookupOrAddToDict (const word &, dictionary &, const dimensionSet &dims=dimless, const scalar &defaultValue=pTraits< scalar >::zero)
 Construct from dictionary, with default value. More...
 
static dimensioned< scalar > lookupOrAddToDict (const word &, dictionary &, const scalar &defaultValue=pTraits< scalar >::zero)
 Construct from dictionary, dimensionless with default value. More...
 

Static Public Attributes

static word controlDictName
 The default control dictionary name (normally "controlDict") 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...
 
- Static Public Attributes inherited from HashTableCore
static const label maxTableSize
 Maximum allowable table size. More...
 

Protected Member Functions

void adjustDeltaT ()
 Adjust the time step so that writing occurs at the specified time. More...
 
void setControls ()
 Set the controls from the current controlDict. More...
 
virtual void readDict ()
 Read the control dictionary and set the write controls etc. 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...
 

Protected Attributes

label startTimeIndex_
 
scalar startTime_
 
scalar endTime_
 
stopAtControls stopAt_
 
writeControls writeControl_
 
scalar writeInterval_
 
label purgeWrite_
 
FIFOStack< wordpreviousWriteTimes_
 
bool writeOnce_
 
bool subCycling_
 Is the time currently being sub-cycled? More...
 
autoPtr< TimeStateprevTimeState_
 If time is being sub-cycled this is the previous TimeState. More...
 
sigWriteNow sigWriteNow_
 Enable one-shot writing upon signal. More...
 
sigStopAtWriteNow sigStopAtWriteNow_
 Enable write and clean exit upon signal. More...
 
- Protected Attributes inherited from TimeState
label timeIndex_
 
scalar deltaT_
 
scalar deltaTSave_
 
scalar deltaT0_
 
bool deltaTchanged_
 
label writeTimeIndex_
 
bool writeTime_
 

Static Protected Attributes

static const NamedEnum< stopAtControls, 4 > stopAtControlNames_
 
static const NamedEnum< writeControls, 5 > writeControlNames_
 
static fmtflags format_
 Time directory name format. More...
 
static int precision_
 Time directory name precision. More...
 
static const int maxPrecision_
 Maximum time directory name precision. More...
 
- Static Protected Attributes inherited from regIOobject
static bool masterOnlyReading = false
 To flag master-only reading of objects. More...
 

Detailed Description

Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.

Source files

Definition at line 68 of file Time.H.

Member Enumeration Documentation

◆ writeControls

Write control options.

Enumerator
wcTimeStep 
wcRunTime 
wcAdjustableRunTime 
wcClockTime 
wcCpuTime 

Definition at line 88 of file Time.H.

◆ stopAtControls

Stop-run control options.

Enumerator
saEndTime 

stop when Time reaches the prescribed endTime

saNoWriteNow 

set endTime to stop immediately w/o writing

saWriteNow 

set endTime to stop immediately w/ writing

saNextWrite 

stop the next time data are written

Definition at line 98 of file Time.H.

◆ fmtflags

enum fmtflags

Supported time directory name formats.

Enumerator
general 
fixed 
scientific 

Definition at line 107 of file Time.H.

Constructor & Destructor Documentation

◆ Time() [1/4]

Time ( const word name,
const argList args,
const word systemName = "system",
const word constantName = "constant" 
)

Construct given name of dictionary to read and argument list.

Definition at line 391 of file Time.C.

References fileOperation::addWatches(), Foam::fileHandler(), and IOobject::MUST_READ_IF_MODIFIED.

Referenced by Time::setControls(), and Time::Time().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Time() [2/4]

Time ( const word name,
const fileName rootPath,
const fileName caseName,
const word systemName = "system",
const word constantName = "constant",
const bool  enableFunctionObjects = true 
)

Construct given name of dictionary to read, rootPath and casePath.

Definition at line 315 of file Time.C.

References fileOperation::addWatches(), Foam::fileHandler(), IOobject::MUST_READ_IF_MODIFIED, and Time::Time().

Here is the call graph for this function:

◆ Time() [3/4]

Time ( const dictionary dict,
const fileName rootPath,
const fileName caseName,
const word systemName = "system",
const word constantName = "constant",
const bool  enableFunctionObjects = true 
)

Construct given dictionary, rootPath and casePath.

Definition at line 473 of file Time.C.

References fileOperation::addWatches(), Foam::fileHandler(), IOobject::MUST_READ_IF_MODIFIED, and Time::Time().

Here is the call graph for this function:

◆ Time() [4/4]

Time ( const fileName rootPath,
const fileName caseName,
const word systemName = "system",
const word constantName = "constant",
const bool  enableFunctionObjects = true 
)

Construct given endTime, rootPath and casePath.

Definition at line 554 of file Time.C.

◆ ~Time()

~Time ( )
virtual

Destructor.

Definition at line 612 of file Time.C.

References Foam::fileHandler(), forAllReverse, and fileOperation::removeWatch().

Here is the call graph for this function:

Member Function Documentation

◆ adjustDeltaT()

void adjustDeltaT ( )
protected

Adjust the time step so that writing occurs at the specified time.

Definition at line 84 of file Time.C.

References Foam::labelMax, Foam::max(), and Foam::min().

Here is the call graph for this function:

◆ setControls()

void setControls ( )
protected

◆ readDict()

void readDict ( )
protectedvirtual

Read the control dictionary and set the write controls etc.

Reimplemented in crankConRod, and engineTime.

Definition at line 35 of file TimeIO.C.

References fileOperation::addWatches(), IOstream::ASCII, IOstream::BINARY, List< T >::clear(), IOstream::COMPRESSED, IOstream::compressionEnum(), Foam::debug::debugObjects(), IOstream::defaultPrecision(), TimeState::deltaT_, TimeState::deltaTchanged_, dict, Foam::debug::dimensionedConstantObjects(), Foam::dimensionedConstants(), Foam::debug::dimensionSetObjects(), Foam::dimensionSystems(), Foam::endl(), Time::endTime_, Foam::exit(), Foam::FatalError, Foam::FatalIOError, FatalIOErrorInFunction, Foam::fileHandler(), Time::fixed, forAll, forAllConstIter(), forAllReverse, Time::format_, IOstream::formatEnum(), dictionary::found(), Time::general, fileOperation::getFile(), Foam::Info, InfoHeader, IOWarningInFunction, dictionary::lookup(), DictionaryBase< IDLListType, T >::lookupPtr(), dictionary::merge(), baseIOdictionary::name(), dimensioned< scalar >::name(), dimensioned< Type >::name(), fileOperation::New(), Foam::debug::optimisationObjects(), Foam::Perr, Foam::Pout, OSstream::precision(), Time::precision_, Time::purgeWrite_, NamedEnum< Enum, nEnum >::read(), dictionary::readIfPresent(), Foam::readScalar(), Foam::readUint(), fileOperation::removeWatch(), Time::saEndTime, Time::scientific, Foam::Serr, Foam::setEnv(), List< T >::size(), Foam::Sout, Time::stopAt_, Time::stopAtControlNames_, OStringStream::str(), dictionary::subDict(), Time::timeName(), fileOperation::type(), IOstream::UNCOMPRESSED, dimensioned< scalar >::value(), WarningInFunction, regIOobject::watchIndices(), Time::wcAdjustableRunTime, Time::wcRunTime, Time::wcTimeStep, Time::writeControl_, Time::writeControlNames_, Foam::writeInfoHeader, Time::writeInterval_, and TimeState::writeTimeIndex_.

Referenced by Time::read(), engineTime::readDict(), crankConRod::readDict(), and Time::readModifiedObjects().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TypeName()

TypeName ( "time"  )

◆ rootPath()

const fileName& rootPath ( ) const
inline

Return root path.

Definition at line 254 of file Time.H.

References TimePaths::rootPath().

Referenced by Time::path().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ caseName()

const fileName& caseName ( ) const
inline

Return case name.

Definition at line 260 of file Time.H.

References TimePaths::caseName().

Referenced by Time::path(), triSurface::triSurface(), triSurface::triSurfInstance(), and triSurface::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ path()

fileName path ( ) const
inline

◆ controlDict()

const dictionary& controlDict ( ) const
inline

Definition at line 271 of file Time.H.

◆ dbDir()

virtual const fileName& dbDir ( ) const
inlinevirtual

Local directory path of this objectRegistry relative to the time.

Reimplemented from objectRegistry.

Definition at line 276 of file Time.H.

References fileName::null.

◆ timePath()

fileName timePath ( ) const
inline

Return current time path.

Definition at line 282 of file Time.H.

References Time::path(), and Time::timeName().

Referenced by MeshedSurfaceProxy< Face >::write(), molecule::writeFields(), and Foam::writePatchGraph().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeFormat()

IOstream::streamFormat writeFormat ( ) const
inline

Default write format.

Definition at line 288 of file Time.H.

◆ writeVersion()

IOstream::versionNumber writeVersion ( ) const
inline

Default write version number.

Definition at line 294 of file Time.H.

◆ writeCompression()

IOstream::compressionType writeCompression ( ) const
inline

Default write compression.

Definition at line 300 of file Time.H.

Referenced by PatchPostProcessing< CloudType >::write().

Here is the caller graph for this function:

◆ graphFormat()

const word& graphFormat ( ) const
inline

Default graph format.

Definition at line 306 of file Time.H.

◆ runTimeModifiable()

const Switch& runTimeModifiable ( ) const
inline

◆ read()

bool read ( )
virtual

Read control dictionary, update controls and time.

Reimplemented from regIOobject.

Reimplemented in crankConRod, and engineTime.

Definition at line 431 of file TimeIO.C.

References fileOperation::addWatches(), List< T >::clear(), Foam::fileHandler(), unwatchedIOdictionary::files(), and Time::readDict().

Referenced by engineTime::read(), crankConRod::read(), and Time::runTimeModifiable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readModifiedObjects()

void readModifiedObjects ( )

◆ findInstance()

Foam::word findInstance ( const fileName dir,
const word name = word::null,
const IOobject::readOption  rOpt = IOobject::MUST_READ,
const word stopInstance = word::null 
) const

Return the location of "dir" containing the file "name".

(eg, used in reading mesh data) If name is null, search for the directory "dir" only. Does not search beyond stopInstance (if set) or constant.

Definition at line 649 of file Time.C.

References Foam::fileHandler(), Time::findInstancePath(), IOobject::instance(), and timeName.

Referenced by Time::runTimeModifiable(), and Time::times().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ times()

Foam::instantList times ( ) const

Search the case for valid time directories.

Definition at line 642 of file Time.C.

References Time::findInstance(), and path().

Referenced by fileOperation::findInstance(), masterUncollatedFileOperation::findInstance(), edgeMeshFormatsCore::getLineNoComment(), surfaceFormatsCore::getLineNoComment(), Time::runTimeModifiable(), timeSelector::select0(), and triSurface::triSurfInstance().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findInstancePath() [1/2]

Foam::word findInstancePath ( const fileName path,
const instant t 
) const

Search the case for the time directory path.

corresponding to the given instance

Definition at line 679 of file Time.C.

References instant::equal(), forAllReverse, word::null, path(), and timeDirs.

Referenced by Time::findInstance(), uncollatedFileOperation::readObjects(), and Time::runTimeModifiable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findInstancePath() [2/2]

Foam::word findInstancePath ( const instant t) const

Search the case for the time directory path.

corresponding to the given instance

Definition at line 707 of file Time.C.

References path().

Here is the call graph for this function:

◆ findClosestTime()

Foam::instant findClosestTime ( const scalar  t) const

Search the case for the time closest to the given time.

Definition at line 713 of file Time.C.

References Foam::diff(), Time::findClosestTimeIndex(), UList< T >::last(), Foam::mag(), path(), List< T >::size(), and timeDirs.

Referenced by Time::runTimeModifiable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findClosestTimeIndex()

Foam::label findClosestTimeIndex ( const instantList timeDirs,
const scalar  t,
const word constantName = "constant" 
)
static

Search instantList for the time index closest to the given time.

Definition at line 750 of file Time.C.

References Foam::diff(), forAll, Foam::mag(), and Foam::name().

Referenced by Time::findClosestTime(), if(), and Time::runTimeModifiable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeTimeDict()

bool writeTimeDict ( ) const
virtual

◆ writeObject()

bool writeObject ( IOstream::streamFormat  fmt,
IOstream::versionNumber  ver,
IOstream::compressionType  cmp,
const bool  valid 
) const
virtual

Write using given format, version and compression.

Reimplemented from objectRegistry.

Definition at line 538 of file TimeIO.C.

References Foam::fileHandler(), regIOobject::filePath(), IOobject::path(), Time::previousWriteTimes_, Time::purgeWrite_, fileOperation::rmDir(), Time::timeName(), objectRegistry::writeObject(), TimeState::writeTime(), TimeState::writeTime_, and Time::writeTimeDict().

Referenced by Time::runTimeModifiable(), and Time::writeTimeDict().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeNow()

bool writeNow ( )

Write the objects now (not at end of iteration) and continue.

the run

Definition at line 590 of file TimeIO.C.

References regIOobject::write(), and TimeState::writeTime_.

Referenced by Time::runTimeModifiable(), and Time::writeAndEnd().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeAndEnd()

bool writeAndEnd ( )

Write the objects now (not at end of iteration) and end the run.

Definition at line 597 of file TimeIO.C.

References Time::endTime_, Time::saWriteNow, Time::stopAt_, dimensioned< scalar >::value(), and Time::writeNow().

Referenced by convergenceControl::endIfConverged(), and Time::runTimeModifiable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeOnce()

void writeOnce ( )

Write the objects once (one shot) and continue the run.

Definition at line 606 of file TimeIO.C.

References Time::writeOnce_.

Referenced by Time::runTimeModifiable().

Here is the caller graph for this function:

◆ timeName() [1/2]

Foam::word timeName ( const scalar  t,
const int  precision = precision_ 
)
static

Return time name of given scalar time.

formatted with given precision

Definition at line 626 of file Time.C.

Referenced by fieldAverage::addMeanFieldType(), fieldAverage::addPrime2MeanFieldType(), interRegionExplicitPorositySource::addSup(), fieldToCell::applyToSet(), writeFile::baseTimeDir(), basicMultiComponentMixture::basicMultiComponentMixture(), blended< Type >::blendingFactor(), cellCoBlended< Type >::blendingFactor(), curvatureSeparation::calcCosAngle(), probes::classifyFields(), convergenceControl::converged(), contactAngleForce::correct(), cubic< Type >::correction(), linearUpwind< Type >::correction(), linearUpwindV< Type >::correction(), waxSolventEvaporation::correctModel(), Foam::CorrectPhi(), heThermo< BasicSolidThermo, MixtureType >::Cp(), heThermo< BasicSolidThermo, MixtureType >::CpByCpv(), heThermo< BasicSolidThermo, MixtureType >::Cpv(), epsilonWallFunctionFvPatchScalarField::createAveragingWeights(), omegaWallFunctionFvPatchScalarField::createAveragingWeights(), logFiles::createFiles(), heThermo< BasicSolidThermo, MixtureType >::Cv(), CrankNicolsonDdtScheme< Type >::ddt0_(), fvMeshDistribute::distribute(), masterUncollatedFileOperation::findInstance(), CrankNicolsonDdtScheme< Type >::fvcDdt(), CrankNicolsonDdtScheme< Type >::fvcDdtPhiCorr(), CrankNicolsonDdtScheme< Type >::fvcDdtUfCorr(), heThermo< BasicSolidThermo, MixtureType >::gamma(), constantHeatTransfer::h(), heThermo< BasicSolidThermo, MixtureType >::hc(), heThermo< BasicSolidThermo, MixtureType >::he(), thermoSingleLayer::hs(), coalCloudList::hsTrans(), localMax< Type >::interpolate(), localMin< Type >::interpolate(), fvMeshSubset::interpolate(), heSolidThermo< BasicSolidThermo, MixtureType >::Kappa(), Foam::levelSetFraction(), Foam::MULES::limit(), Foam::MULES::limitCorr(), PhiScheme< Type, PhiLimiter >::limiter(), Foam::MULES::limiter(), LimitedScheme< Type, Limiter, LimitFunc >::limiter(), Foam::MULES::limiterCorr(), basicThermo::lookupOrConstruct(), meshRefinement::makeDisplacementField(), Foam::MapConsistentMesh(), Foam::MapConsistentVolFields(), Foam::MapLagrangianFields(), Foam::MapMesh(), meshToMesh::mapSrcToTgt(), Foam::MapSubMesh(), meshToMesh::mapTgtToSrc(), Foam::MapVolFields(), LocalInteraction< CloudType >::massEscape(), LocalInteraction< CloudType >::massStick(), MeshedSurface< Foam::face >::MeshedSurface(), solidParticle::move(), polyMesh::movePoints(), laminar::mut(), consumptionSpeed::omega0Sigma(), RaviPetersen::operator()(), surfaceFieldValue::outputDir(), sampledSurface::pointAverage(), Foam::polyMeshZipUpCells(), kinematicSingleLayer::pp(), VoidFraction< CloudType >::preEvolve(), ParticleErosion< CloudType >::preEvolve(), fvMeshDistribute::printCoupleInfo(), fvMeshDistribute::printFieldInfo(), kinematicSingleLayer::pu(), pointFieldReconstructor::reconstructField(), coalCloudList::rhoTrans(), opaqueSolid::Rp(), noRadiation::Rp(), P1::Rp(), viewFactor::Rp(), fvDOM::Rp(), opaqueSolid::Ru(), noRadiation::Ru(), viewFactor::Ru(), fvDOM::Ru(), timeSelector::selectIfPresent(), masterUncollatedFileOperation::setTime(), noFilm::Sh(), skewCorrected< Type >::skewCorrection(), coalCloudList::Srho(), noFilm::Srho(), thermoSingleLayer::Srho(), thermoSingleLayer::T(), thermoSingleLayer::thermoSingleLayer(), distributionContactAngleForce::theta(), temperatureDependentContactAngleForce::theta(), perturbedTemperatureDependentContactAngleForce::theta(), polyTopoChanger::update(), uniformInterpolatedDisplacementPointPatchVectorField::updateCoeffs(), laminar::Us(), coalCloudList::UTrans(), heThermo< BasicSolidThermo, MixtureType >::W(), extendedUpwindCellToFaceStencil::weightedSum(), extendedFaceToCellStencil::weightedSum(), extendedCellToFaceStencil::weightedSum(), reverseLinear< Type >::weights(), clippedLinear< Type >::weights(), FacePostProcessing< CloudType >::write(), STARCD::write(), MeshedSurfaceProxy< Face >::write(), ParticleCollector< CloudType >::write(), meshRefinement::write(), Foam::writeCellGraph(), Foam::writeMeshObject(), dynamicRefineFvMesh::writeObject(), writeFile::writeTime(), CloudFunctionObject< CloudType >::writeTimeDir(), FSD< ReactionThermo, ThermoType >::~FSD(), Gulders::~Gulders(), and GuldersEGR::~GuldersEGR().

◆ timeName() [2/2]

Foam::word timeName ( ) const
virtual

Return current time name.

Definition at line 636 of file Time.C.

References dimensioned< Type >::name().

Referenced by basicMultiComponentMixture::basicMultiComponentMixture(), Time::readDict(), Time::runTimeModifiable(), Time::timePath(), Time::writeObject(), and Time::writeTimeDict().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findTimes()

Foam::instantList findTimes ( const fileName directory,
const word constantName = "constant" 
)
static

Search a given directory for valid time directories.

Definition at line 36 of file findTimes.C.

References Foam::fileHandler(), and fileOperation::findTimes().

Referenced by Time::runTimeModifiable(), uniformInterpolatedDisplacementPointPatchVectorField::uniformInterpolatedDisplacementPointPatchVectorField(), and USERD_set_filenames().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ startTimeIndex()

Foam::label startTimeIndex ( ) const
virtual

Return start time index.

Definition at line 775 of file Time.C.

Referenced by convergenceControl::converged(), CrankNicolsonDdtScheme< Type >::ddt0_(), and Time::runTimeModifiable().

Here is the caller graph for this function:

◆ startTime()

Foam::dimensionedScalar startTime ( ) const
virtual

Return start time.

Definition at line 781 of file Time.C.

References Foam::dimTime.

Referenced by fieldAverage::addMeanFieldType(), fieldAverage::addPrime2MeanFieldType(), logFiles::createFiles(), CrankNicolsonDdtScheme< Type >::ddt0_(), and Time::runTimeModifiable().

Here is the caller graph for this function:

◆ endTime()

Foam::dimensionedScalar endTime ( ) const
virtual

Return end time.

Definition at line 787 of file Time.C.

References Foam::dimTime.

Referenced by Time::runTimeModifiable().

Here is the caller graph for this function:

◆ functionObjects() [1/2]

const functionObjectList& functionObjects ( ) const
inline

Return the list of function objects.

Definition at line 410 of file Time.H.

◆ libs() [1/2]

const dlLibraryTable& libs ( ) const
inline

External access to the loaded libraries.

Definition at line 416 of file Time.H.

◆ libs() [2/2]

dlLibraryTable& libs ( )
inline

External access to the loaded libraries.

Definition at line 422 of file Time.H.

◆ subCycling()

bool subCycling ( ) const
inline

Return true if time currently being sub-cycled, otherwise false.

Definition at line 428 of file Time.H.

References Time::subCycling_.

Referenced by localEulerDdt::localRDeltaT(), masterUncollatedFileOperation::setTime(), and particle< Type >::stepFractionSpan().

Here is the caller graph for this function:

◆ prevTimeState()

const TimeState& prevTimeState ( ) const
inline

Return previous TimeState if time is being sub-cycled.

Definition at line 434 of file Time.H.

References Time::end(), Time::endSubCycle(), Time::loop(), Time::prevTimeState_, Time::run(), Time::running(), Time::setDeltaT(), Time::setDeltaTNoAdjust(), Time::setEndTime(), Time::setTime(), Time::stopAt(), and Time::subCycle().

Referenced by particle< Type >::stepFractionSpan(), fvMesh::Vsc(), and fvMesh::Vsc0().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ running()

bool running ( ) const
virtual

Return true if run should continue without any side effects.

Definition at line 793 of file Time.C.

Referenced by Time::prevTimeState().

Here is the caller graph for this function:

◆ run()

bool run ( ) const
virtual

Return true if run should continue,.

also invokes the functionObjectList::end() method when the time goes out of range

Note
For correct behaviour, the following style of time-loop is recommended:
while (runTime.run())
{
runTime.write();
}

Definition at line 799 of file Time.C.

References Time::readModifiedObjects().

Referenced by Time::prevTimeState(), simpleControl::run(), pisoControl::run(), pimpleControl::run(), and pimpleMultiRegionControl::run().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ loop()

bool loop ( )
virtual

Return true if run should continue and if so increment time.

also invokes the functionObjectList::end() method when the time goes out of range

Note
For correct behaviour, the following style of time-loop is recommended:
while (runTime.loop())
{
runTime.write();
}

Definition at line 836 of file Time.C.

Referenced by simpleControl::loop(), pisoControl::loop(), pimpleControl::loop(), pimpleMultiRegionControl::loop(), and Time::prevTimeState().

Here is the caller graph for this function:

◆ end()

bool end ( ) const
virtual

Return true if end of run,.

does not invoke any functionObject methods

Note
The rounding heuristics near endTime mean that
run()
and
!end()
may not yield the same result

Definition at line 849 of file Time.C.

Referenced by Time::prevTimeState().

Here is the caller graph for this function:

◆ stopAt()

bool stopAt ( const stopAtControls  sa) const
virtual

Adjust the current stopAtControl. Note that this value.

only persists until the next time the dictionary is read. Return true if the stopAtControl changed.

Definition at line 855 of file Time.C.

Referenced by convergenceControl::endIfConverged(), and Time::prevTimeState().

Here is the caller graph for this function:

◆ setTime() [1/4]

void setTime ( const Time t)
virtual

Reset the time and time-index to those of the given time.

Definition at line 873 of file Time.C.

References Foam::fileHandler(), dimensioned< Type >::name(), fileOperation::setTime(), TimeState::timeIndex_, and dimensioned< Type >::value().

Referenced by Time::prevTimeState(), and timeSelector::select0().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setTime() [2/4]

void setTime ( const instant inst,
const label  newIndex 
)
virtual

Reset the time and time-index.

Definition at line 882 of file Time.C.

References Foam::fileHandler(), instant::name(), dimensioned< Type >::name(), IOobject::NO_WRITE, IOobject::READ_IF_PRESENT, dictionary::readIfPresent(), fileOperation::setTime(), timeName, and instant::value().

Here is the call graph for this function:

◆ setTime() [3/4]

void setTime ( const dimensionedScalar newTime,
const label  newIndex 
)
virtual

Reset the time and time-index.

Definition at line 909 of file Time.C.

References setTime(), and dimensioned< Type >::value().

Here is the call graph for this function:

◆ setTime() [4/4]

void setTime ( const scalar  newTime,
const label  newIndex 
)
virtual

Reset the time and time-index.

Definition at line 915 of file Time.C.

References Foam::fileHandler(), dimensioned< Type >::name(), fileOperation::setTime(), and timeName.

Here is the call graph for this function:

◆ setEndTime() [1/2]

void setEndTime ( const dimensionedScalar endTime)
virtual

Reset end time.

Definition at line 924 of file Time.C.

References dimensioned< Type >::value().

Referenced by convergenceControl::endIfConverged(), and Time::prevTimeState().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setEndTime() [2/2]

void setEndTime ( const scalar  endTime)
virtual

Reset end time.

Definition at line 930 of file Time.C.

◆ setDeltaT() [1/2]

void setDeltaT ( const dimensionedScalar deltaT)
virtual

Reset time step.

Definition at line 936 of file Time.C.

References dimensioned< Type >::value().

Referenced by Time::prevTimeState().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDeltaT() [2/2]

void setDeltaT ( const scalar  deltaT)
virtual

Reset time step.

Definition at line 942 of file Time.C.

◆ setDeltaTNoAdjust()

void setDeltaTNoAdjust ( const scalar  deltaT)
virtual

Reset time step without additional adjustment or modification.

by function objects

Definition at line 955 of file Time.C.

Referenced by Time::prevTimeState().

Here is the caller graph for this function:

◆ subCycle()

Foam::TimeState subCycle ( const label  nSubCycles)
virtual

Set time to sub-cycle for the given number of steps.

Definition at line 962 of file Time.C.

References setTime(), and timeIndex.

Referenced by Time::prevTimeState(), and subCycleTime::subCycleTime().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ endSubCycle()

void endSubCycle ( )
virtual

Reset time after sub-cycling back to previous TimeState.

Definition at line 976 of file Time.C.

Referenced by subCycleTime::endSubCycle(), and Time::prevTimeState().

Here is the caller graph for this function:

◆ functionObjects() [2/2]

functionObjectList& functionObjects ( )
inline

Return non-const access to the list of function objects.

Definition at line 531 of file Time.H.

References Time::operator++(), and Time::operator+=().

Here is the call graph for this function:

◆ operator+=() [1/2]

Foam::Time & operator+= ( const dimensionedScalar deltaT)
virtual

Set deltaT to that specified and increment time via operator++()

Definition at line 989 of file Time.C.

References dimensioned< Type >::value().

Referenced by Time::functionObjects().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator+=() [2/2]

Foam::Time & operator+= ( const scalar  deltaT)
virtual

Set deltaT to that specified and increment time via operator++()

Definition at line 995 of file Time.C.

◆ operator++() [1/2]

Foam::Time & operator++ ( )
virtual

Prefix increment,.

also invokes the functionObjectList::start() or functionObjectList::execute() method, depending on the time-index

Definition at line 1002 of file Time.C.

References Foam::endl(), Foam::mag(), Foam::max(), Foam::min(), dimensioned< Type >::name(), Foam::nl, Foam::pow(), Foam::readScalar(), Foam::reduce(), Foam::returnReduce(), setTime(), Foam::sign(), timeIndex, and WarningInFunction.

Referenced by Time::functionObjects().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator++() [2/2]

Foam::Time & operator++ ( int  )
virtual

Postfix increment, this is identical to the prefix increment.

Definition at line 1213 of file Time.C.

Member Data Documentation

◆ startTimeIndex_

label startTimeIndex_
protected

Definition at line 119 of file Time.H.

◆ startTime_

scalar startTime_
protected

Definition at line 120 of file Time.H.

◆ endTime_

scalar endTime_
mutableprotected

Definition at line 121 of file Time.H.

Referenced by Time::readDict(), and Time::writeAndEnd().

◆ stopAtControlNames_

const Foam::NamedEnum< Foam::Time::stopAtControls, 4 > stopAtControlNames_
staticprotected

Definition at line 123 of file Time.H.

Referenced by NamedEnum< directionType, 3 >::names(), and Time::readDict().

◆ stopAt_

stopAtControls stopAt_
mutableprotected

Definition at line 124 of file Time.H.

Referenced by Time::readDict(), and Time::writeAndEnd().

◆ writeControlNames_

const Foam::NamedEnum< Foam::Time::writeControls, 5 > writeControlNames_
staticprotected

Definition at line 126 of file Time.H.

Referenced by NamedEnum< directionType, 3 >::names(), and Time::readDict().

◆ writeControl_

writeControls writeControl_
protected

Definition at line 127 of file Time.H.

Referenced by Time::readDict().

◆ writeInterval_

scalar writeInterval_
protected

Definition at line 129 of file Time.H.

Referenced by Time::readDict().

◆ purgeWrite_

label purgeWrite_
protected

Definition at line 131 of file Time.H.

Referenced by Time::readDict(), and Time::writeObject().

◆ previousWriteTimes_

FIFOStack<word> previousWriteTimes_
mutableprotected

Definition at line 132 of file Time.H.

Referenced by Time::writeObject().

◆ writeOnce_

bool writeOnce_
protected

Definition at line 135 of file Time.H.

Referenced by Time::writeOnce().

◆ subCycling_

bool subCycling_
protected

Is the time currently being sub-cycled?

Definition at line 138 of file Time.H.

Referenced by Time::subCycling().

◆ prevTimeState_

autoPtr<TimeState> prevTimeState_
protected

If time is being sub-cycled this is the previous TimeState.

Definition at line 141 of file Time.H.

Referenced by Time::prevTimeState().

◆ sigWriteNow_

sigWriteNow sigWriteNow_
protected

Enable one-shot writing upon signal.

Definition at line 147 of file Time.H.

◆ sigStopAtWriteNow_

sigStopAtWriteNow sigStopAtWriteNow_
protected

Enable write and clean exit upon signal.

Definition at line 150 of file Time.H.

◆ format_

Foam::Time::fmtflags format_
staticprotected

Time directory name format.

Definition at line 154 of file Time.H.

Referenced by NamedEnum< directionType, 3 >::names(), and Time::readDict().

◆ precision_

int precision_
staticprotected

Time directory name precision.

Definition at line 157 of file Time.H.

Referenced by NamedEnum< directionType, 3 >::names(), and Time::readDict().

◆ maxPrecision_

const int maxPrecision_
staticprotected

Maximum time directory name precision.

Definition at line 160 of file Time.H.

Referenced by NamedEnum< directionType, 3 >::names(), and Time::writeTimeDict().

◆ controlDictName

Foam::word controlDictName
static

The default control dictionary name (normally "controlDict")

Definition at line 198 of file Time.H.

Referenced by NamedEnum< directionType, 3 >::names().


The documentation for this class was generated from the following files: