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

Inheritance diagram for Time:
Collaboration diagram for Time:

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 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...
 
label addWatch (const fileName &) const
 Add watching of a file. Returns handle. More...
 
bool removeWatch (const label) const
 Remove watch on a file (using handle) More...
 
const fileNamegetFile (const label) const
 Get name of file being watched (using handle) More...
 
fileMonitor::fileState getState (const label) const
 Get current state of file (using handle) More...
 
void setUnmodified (const label) const
 Set current state of file (using handle) to unmodified. 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 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 writeObject (IOstream::streamFormat, IOstream::versionNumber, IOstream::compressionType) 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 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 &, const bool adjustDeltaT=true)
 Reset time step. More...
 
virtual void setDeltaT (const scalar, const bool adjustDeltaT=true)
 Reset time step. 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...
 
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...
 
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 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, and transferring registry registration to copy. More...
 
virtual ~regIOobject ()
 Destructor. More...
 
bool checkIn ()
 Add object to registry. More...
 
bool checkOut ()
 Remove object from 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...
 
IstreamreadStream (const word &)
 Return Istream and check object type against that given. More...
 
void close ()
 Close Istream. More...
 
virtual bool readData (Istream &)
 Virtual readData function. More...
 
label watchIndex () const
 Return file-monitoring handle. More...
 
label & watchIndex ()
 Return file-monitoring handle. More...
 
virtual bool write () const
 Write using setting from DB. More...
 
void operator= (const IOobject &)
 
template<class Type >
Type & store (Type *tPtr)
 
template<class Type >
Type & store (autoPtr< Type > &atPtr)
 
- 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)
 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)
 Construct from path, registry, io options. More...
 
Foam::autoPtr< IOobjectclone () const
 Clone. 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...
 
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...
 
readOption readOpt () const
 
readOptionreadOpt ()
 
writeOption writeOpt () const
 
writeOptionwriteOpt ()
 
word group () const
 Return group (extension part of name) 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 filePath () const
 Return complete path + object name if the file exists. More...
 
bool readHeader (Istream &)
 Read header. More...
 
bool headerOk ()
 Read and check header info. 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)
 
template<class Stream >
Stream & writeBanner (Stream &os, bool noHint)
 
template<class Stream >
Stream & writeDivider (Stream &os)
 
template<class Stream >
Stream & writeEndDivider (Stream &os)
 
- Public Member Functions inherited from HashTable< T, Key, Hash >
 HashTable (const label size=128)
 Construct given initial table size. More...
 
 HashTable (Istream &, const label size=128)
 Construct from Istream. More...
 
 HashTable (const HashTable< T, Key, Hash > &)
 Construct as copy. More...
 
 HashTable (const Xfer< HashTable< T, Key, Hash > > &)
 Construct by transferring the parameter contents. 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 Key &) const
 Return true if hashedEntry is found in table. More...
 
iterator find (const Key &)
 Find and return an iterator set at the hashedEntry. More...
 
const_iterator find (const Key &) const
 Find and return an const_iterator set at the hashedEntry. More...
 
List< Key > toc () const
 Return the table of contents. More...
 
List< Key > sortedToc () const
 Return the table of contents as a sorted list. More...
 
OstreamprintInfo (Ostream &) const
 Print information. More...
 
bool insert (const Key &, const T &newElmt)
 Insert a new hashedEntry. More...
 
bool set (const Key &, const T &newElmt)
 Assign a new hashedEntry, overwriting existing entries. More...
 
bool erase (const iterator &)
 Erase a hashedEntry specified by given iterator. More...
 
bool erase (const Key &)
 Erase a hashedEntry specified by the given key. More...
 
label erase (const UList< Key > &)
 Remove entries given by the listed keys from this HashTable. More...
 
template<class AnyType , class AnyHash >
label erase (const HashTable< AnyType, Key, AnyHash > &)
 Remove entries given by the given keys from this HashTable. More...
 
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< T, Key, Hash > &)
 Transfer the contents of the argument table into this table. More...
 
Xfer< HashTable< T, Key, Hash > > xfer ()
 Transfer contents to the Xfer container. More...
 
Toperator[] (const Key &)
 Find and return a hashedEntry. More...
 
const Toperator[] (const Key &) const
 Find and return a hashedEntry. More...
 
Toperator() (const Key &)
 Find and return a hashedEntry, create it null if not present. More...
 
void operator= (const HashTable< T, Key, Hash > &)
 Assignment. More...
 
bool operator== (const HashTable< T, Key, Hash > &) const
 Equality. Hash tables are equal if the keys and values are equal. More...
 
bool operator!= (const HashTable< T, Key, 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 cbegin () const
 const_iterator set to the beginning of the HashTable More...
 
const_iterator begin () const
 const_iterator set to the beginning of the HashTable More...
 
template<class AnyType , class AnyHash >
Foam::label erase (const HashTable< AnyType, Key, AnyHash > &rhs)
 
- 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 outputTime () const
 Return true if this is an output time (primary or secondary) More...
 

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)
 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 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 Attributes

static word controlDictName
 The default control dictionary name (normally "controlDict") 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 Attributes

label startTimeIndex_
 
scalar startTime_
 
scalar endTime_
 
stopAtControls stopAt_
 
writeControls writeControl_
 
scalar writeInterval_
 
writeControls secondaryWriteControl_
 
scalar secondaryWriteInterval_
 
label purgeWrite_
 
FIFOStack< wordpreviousOutputTimes_
 
label secondaryPurgeWrite_
 
FIFOStack< wordpreviousSecondaryOutputTimes_
 
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 outputTimeIndex_
 
bool primaryOutputTime_
 Is outputTime because of primary? More...
 
label secondaryOutputTimeIndex_
 
bool secondaryOutputTime_
 Is outputTime because of secondary? More...
 
bool outputTime_
 

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...
 

Detailed Description

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

Source files

Definition at line 69 of file Time.H.

Member Enumeration Documentation

Write control options.

Enumerator
wcTimeStep 
wcRunTime 
wcAdjustableRunTime 
wcClockTime 
wcCpuTime 

Definition at line 92 of file Time.H.

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 102 of file Time.H.

enum fmtflags

Supported time directory name formats.

Enumerator
general 
fixed 
scientific 

Definition at line 111 of file Time.H.

Constructor & Destructor Documentation

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 380 of file Time.C.

References f().

Here is the call graph for this function:

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 285 of file Time.C.

References f().

Here is the call graph for this function:

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 475 of file Time.C.

References f(), and IOobject::readOpt().

Here is the call graph for this function:

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 575 of file Time.C.

~Time ( )
virtual

Destructor.

Definition at line 636 of file Time.C.

References Time::~Time().

Referenced by Time::~Time().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Function Documentation

void adjustDeltaT ( )
protected

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

Definition at line 80 of file Time.C.

References Time::adjustDeltaT(), max, and min.

Referenced by Time::adjustDeltaT().

Here is the call graph for this function:

Here is the caller graph for this function:

void setControls ( )
protected

Set the controls from the current controlDict.

Definition at line 137 of file Time.C.

References Foam::endl(), Foam::exit(), FatalIOErrorIn, IOWarningIn, Foam::mag(), name(), path(), dictionary::readIfPresent(), Foam::reduce(), Time::setControls(), setTime(), timeDirs, and timeName.

Referenced by Time::setControls().

Here is the call graph for this function:

Here is the caller graph for this function:

TypeName ( "time"  )
const fileName& rootPath ( ) const
inline

Return root path.

Definition at line 267 of file Time.H.

References Time::rootPath().

Referenced by Time::path(), and Time::rootPath().

Here is the call graph for this function:

Here is the caller graph for this function:

const fileName& caseName ( ) const
inline

Return case name.

Definition at line 273 of file Time.H.

References Time::caseName().

Referenced by Time::caseName(), 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:

const dictionary& controlDict ( ) const
inline

Definition at line 284 of file Time.H.

virtual const fileName& dbDir ( ) const
inlinevirtual

Local directory path of this objectRegistry relative to the time.

Reimplemented from objectRegistry.

Definition at line 289 of file Time.H.

References Time::dbDir().

Referenced by Time::dbDir().

Here is the call graph for this function:

Here is the caller graph for this function:

fileName timePath ( ) const
inline

Return current time path.

Definition at line 295 of file Time.H.

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

Referenced by Time::timePath(), MeshedSurfaceProxy< Face >::write(), and molecule::writeFields().

Here is the call graph for this function:

Here is the caller graph for this function:

IOstream::streamFormat writeFormat ( ) const
inline

Default write format.

Definition at line 301 of file Time.H.

References Time::writeFormat().

Referenced by Time::writeFormat().

Here is the call graph for this function:

Here is the caller graph for this function:

IOstream::versionNumber writeVersion ( ) const
inline

Default write version number.

Definition at line 307 of file Time.H.

References Time::writeVersion().

Referenced by Time::writeVersion().

Here is the call graph for this function:

Here is the caller graph for this function:

IOstream::compressionType writeCompression ( ) const
inline

Default write compression.

Definition at line 313 of file Time.H.

References Time::writeCompression().

Referenced by PatchPostProcessing< CloudType >::write(), and Time::writeCompression().

Here is the call graph for this function:

Here is the caller graph for this function:

const word& graphFormat ( ) const
inline

Default graph format.

Definition at line 319 of file Time.H.

const Switch& runTimeModifiable ( ) const
inline

Supports re-reading.

Definition at line 325 of file Time.H.

References Time::runTimeModifiable().

Referenced by Time::runTimeModifiable().

Here is the call graph for this function:

Here is the caller graph for this function:

bool read ( )
virtual

Read control dictionary, update controls and time.

Reimplemented from regIOobject.

Reimplemented in engineTime.

Definition at line 436 of file TimeIO.C.

References Time::read().

Referenced by Time::read().

Here is the call graph for this function:

Here is the caller graph for this function:

void readModifiedObjects ( )

Read the objects that have been modified.

Definition at line 450 of file TimeIO.C.

References Time::readModifiedObjects().

Referenced by Time::readModifiedObjects(), and Time::run().

Here is the call graph for this function:

Here is the caller graph for this function:

Foam::label addWatch ( const fileName fName) const

Add watching of a file. Returns handle.

Definition at line 650 of file Time.C.

References Time::addWatch().

Referenced by Time::addWatch().

Here is the call graph for this function:

Here is the caller graph for this function:

bool removeWatch ( const label  watchIndex) const

Remove watch on a file (using handle)

Definition at line 656 of file Time.C.

References Time::removeWatch().

Referenced by Time::removeWatch().

Here is the call graph for this function:

Here is the caller graph for this function:

const Foam::fileName & getFile ( const label  watchIndex) const

Get name of file being watched (using handle)

Definition at line 661 of file Time.C.

References Time::getFile().

Referenced by Time::getFile().

Here is the call graph for this function:

Here is the caller graph for this function:

Foam::fileMonitor::fileState getState ( const label  watchFd) const

Get current state of file (using handle)

Definition at line 668 of file Time.C.

void setUnmodified ( const label  watchFd) const

Set current state of file (using handle) to unmodified.

Definition at line 676 of file Time.C.

References Time::setUnmodified().

Referenced by Time::setUnmodified().

Here is the call graph for this function:

Here is the caller graph for this function:

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 38 of file findInstance.C.

References Foam::endl(), Foam::exit(), FatalErrorIn, IOobject::headerOk(), Foam::isDir(), Foam::isFile(), name(), IOstream::name(), path(), and timeName.

Here is the call graph for this function:

Foam::instantList times ( ) const

Search the case for valid time directories.

Definition at line 699 of file Time.C.

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

Referenced by timeSelector::select0(), Time::times(), and triSurface::triSurfInstance().

Here is the call graph for this function:

Here is the caller graph for this function:

Foam::word findInstancePath ( const instant t) const

Search the case for the time directory path.

corresponding to the given instance

Definition at line 705 of file Time.C.

References instant::equal(), Time::findInstancePath(), forAll, Foam::isDir(), path(), Foam::readDir(), and readScalar.

Referenced by Time::findInstancePath(), and IOobjectList::IOobjectList().

Here is the call graph for this function:

Here is the caller graph for this function:

Foam::instant findClosestTime ( const scalar  t) const

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

Definition at line 735 of file Time.C.

References Foam::diff(), Time::findClosestTime(), Foam::mag(), path(), and timeDirs.

Referenced by Time::findClosestTime().

Here is the call graph for this function:

Here is the caller graph for this function:

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 782 of file Time.C.

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

Here is the call graph for this function:

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

Write using given format, version and compression.

Reimplemented from objectRegistry.

Definition at line 487 of file TimeIO.C.

References dictionary::add(), path(), Foam::rmDir(), and timeName.

Here is the call graph for this function:

bool writeNow ( )

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

the run

Definition at line 571 of file TimeIO.C.

References write(), and Time::writeNow().

Referenced by Time::writeNow().

Here is the call graph for this function:

Here is the caller graph for this function:

bool writeAndEnd ( )

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

Definition at line 579 of file TimeIO.C.

References Time::writeAndEnd().

Referenced by simpleControl::loop(), and Time::writeAndEnd().

Here is the call graph for this function:

Here is the caller graph for this function:

void writeOnce ( )

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

Definition at line 588 of file TimeIO.C.

References Time::writeOnce().

Referenced by Time::writeOnce().

Here is the call graph for this function:

Here is the caller graph for this function:

Foam::word timeName ( const scalar  t)
static

Return time name of given scalar time.

Definition at line 682 of file Time.C.

Referenced by autoLayerDriver::addLayers(), interRegionExplicitPorositySource::addSup(), Foam::compressible::autoCreateAlphat(), Foam::compressible::autoCreateLowReMut(), Foam::incompressible::autoCreateLowReNut(), Foam::compressible::autoCreateMut(), Foam::incompressible::autoCreateNut(), basicMultiComponentMixture::basicMultiComponentMixture(), interpolate::calc(), mag::calc(), magSqr::calc(), components::calc(), div::calc(), magGrad::calc(), randomise::calc(), addSubtract::calc(), nearWallFields::calcAddressing(), curvatureSeparation::calcCosAngle(), chemistryModel< CompType, ThermoType >::chemistryModel(), cubic< Type >::correction(), linearUpwindV< Type >::correction(), linearUpwind< Type >::correction(), CourantNo::CourantNo(), heThermo< BasicThermo, MixtureType >::Cp(), heThermo< BasicThermo, MixtureType >::CpByCpv(), heThermo< BasicThermo, MixtureType >::Cpv(), epsilonWallFunctionFvPatchScalarField::createAveragingWeights(), omegaWallFunctionFvPatchScalarField::createAveragingWeights(), heThermo< BasicThermo, MixtureType >::Cv(), CrankNicolsonDdtScheme< Type >::ddt0_(), DESModelRegions::DESModelRegions(), autoSnapDriver::doSnap(), GenEddyVisc::epsilon(), GenSGSStress::epsilon(), kOmega::epsilon(), kkLOmega::epsilon(), kOmegaSST::epsilon(), Peclet::execute(), blendingFactor::factor(), heThermo< BasicThermo, MixtureType >::gamma(), calcFvcGrad::gradField(), heThermo< BasicThermo, MixtureType >::hc(), heThermo< BasicThermo, MixtureType >::he(), Foam::MULES::implicitSolve(), fvMeshSubset::interpolate(), localMax< Type >::interpolate(), localMin< Type >::interpolate(), GenSGSStress::k(), heSolidThermo< BasicSolidThermo, MixtureType >::Kappa(), Lambda2::Lambda2(), Foam::MULES::limit(), Foam::MULES::limitCorr(), PhiScheme< Type, PhiLimiter >::limiter(), LimitedScheme< Type, Limiter, LimitFunc >::limiter(), Foam::MULES::limiter(), Foam::MULES::limiterCorr(), readFields::loadField(), basicThermo::lookupOrConstruct(), simpleControl::loop(), meshRefinement::makeDisplacementField(), Foam::MapLagrangianFields(), Foam::MapMesh(), meshToMesh::mapSrcToTgt(), meshToMesh::mapTgtToSrc(), Foam::MapVolFields(), LocalInteraction< CloudType >::massEscape(), LocalInteraction< CloudType >::massStick(), MeshedSurface< Face >::MeshedSurface(), solidParticle::move(), Peclet::Peclet(), sampledSurface::pointAverage(), VoidFraction< CloudType >::preEvolve(), ParticleErosion< CloudType >::preEvolve(), pressureTools::pressureTools(), processorField::processorField(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::pyrolysisChemistryModel(), Q::Q(), fvMeshDistribute::receiveFields(), forces::rho(), autoSnapDriver::scaleMesh(), timeSelector::selectIfPresent(), singleStepReactingMixture< ThermoType >::singleStepReactingMixture(), skewCorrected< Type >::skewCorrection(), autoSnapDriver::smoothDisplacement(), solidChemistryModel< CompType, SolidThermo >::solidChemistryModel(), wallShearStress::wallShearStress(), extendedUpwindCellToFaceStencil::weightedSum(), extendedFaceToCellStencil::weightedSum(), extendedCellToFaceStencil::weightedSum(), reverseLinear< Type >::weights(), clippedLinear< Type >::weights(), FacePostProcessing< CloudType >::write(), MeshedSurfaceProxy< Face >::write(), ParticleCollector< CloudType >::write(), streamLine::write(), regionSizeDistribution::write(), wallBoundedStreamLine::write(), meshRefinement::write(), addSubtract::writeAddSubtractField(), addSubtract::writeAddSubtractValue(), components::writeComponentFields(), div::writeDivField(), interpolate::writeInterpolateField(), mag::writeMagField(), magGrad::writeMagGradField(), magSqr::writeMagSqrField(), Foam::writeMeshObject(), randomise::writeRandomField(), yPlusLES::yPlusLES(), and yPlusRAS::yPlusRAS().

Foam::word timeName ( ) const
virtual

Return current time name.

Definition at line 692 of file Time.C.

References name().

Here is the call graph for this function:

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

Search a given directory for valid time directories.

Definition at line 38 of file findTimes.C.

References Foam::endl(), IOstream::eof(), forAll, token::isNumber(), Foam::less(), token::number(), Foam::readDir(), and Foam::sort().

Here is the call graph for this function:

Foam::label startTimeIndex ( ) const
virtual

Return start time index.

Definition at line 807 of file Time.C.

Referenced by CrankNicolsonDdtScheme< Type >::ddt0_().

Here is the caller graph for this function:

Foam::dimensionedScalar startTime ( ) const
virtual

Return start time.

Definition at line 813 of file Time.C.

Referenced by CrankNicolsonDdtScheme< Type >::ddt0_().

Here is the caller graph for this function:

Foam::dimensionedScalar endTime ( ) const
virtual

Return end time.

Definition at line 819 of file Time.C.

Referenced by simpleControl::simpleControl().

Here is the caller graph for this function:

const functionObjectList& functionObjects ( ) const
inline

Return the list of function objects.

Definition at line 428 of file Time.H.

References Time::functionObjects().

Referenced by Time::functionObjects().

Here is the call graph for this function:

Here is the caller graph for this function:

const dlLibraryTable& libs ( ) const
inline

External access to the loaded libraries.

Definition at line 434 of file Time.H.

References Time::libs().

Referenced by Time::libs().

Here is the call graph for this function:

Here is the caller graph for this function:

dlLibraryTable& libs ( )
inline

External access to the loaded libraries.

Definition at line 440 of file Time.H.

References Time::libs().

Here is the call graph for this function:

bool subCycling ( ) const
inline

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

Definition at line 446 of file Time.H.

References Time::subCycling(), and Time::subCycling_.

Referenced by Time::subCycling().

Here is the call graph for this function:

Here is the caller graph for this function:

const TimeState& prevTimeState ( ) const
inline

Return previous TimeState if time is being sub-cycled.

Definition at line 452 of file Time.H.

References Time::prevTimeState(), and Time::prevTimeState_.

Referenced by Time::prevTimeState().

Here is the call graph for this function:

Here is the caller graph for this function:

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++;
runTime.write();
}

Definition at line 825 of file Time.C.

References Time::readModifiedObjects(), and Time::run().

Referenced by Time::run().

Here is the call graph for this function:

Here is the caller graph for this function:

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 865 of file Time.C.

References Time::loop().

Referenced by simpleControl::loop(), and Time::loop().

Here is the call graph for this function:

Here is the caller graph for this function:

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 878 of file Time.C.

References Time::end().

Referenced by Time::end().

Here is the call graph for this function:

Here is the caller graph for this function:

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 884 of file Time.C.

References Time::stopAt().

Referenced by Time::stopAt().

Here is the call graph for this function:

Here is the caller graph for this function:

void setTime ( const Time t)
virtual

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

Definition at line 902 of file Time.C.

References name(), and TimeState::timeIndex_.

Referenced by timeSelector::select0().

Here is the call graph for this function:

Here is the caller graph for this function:

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

Reset the time and time-index.

Definition at line 910 of file Time.C.

References name(), instant::name(), dictionary::readIfPresent(), timeName, and instant::value().

Here is the call graph for this function:

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

Reset the time and time-index.

Definition at line 936 of file Time.C.

References setTime().

Here is the call graph for this function:

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

Reset the time and time-index.

Definition at line 942 of file Time.C.

References name(), and timeName.

Here is the call graph for this function:

void setEndTime ( const dimensionedScalar endTime)
virtual

Reset end time.

Definition at line 950 of file Time.C.

References Time::setEndTime().

Referenced by Time::setEndTime().

Here is the call graph for this function:

Here is the caller graph for this function:

void setEndTime ( const scalar  endTime)
virtual

Reset end time.

Definition at line 956 of file Time.C.

References endTime, and Time::setEndTime().

Here is the call graph for this function:

void setDeltaT ( const dimensionedScalar deltaT,
const bool  adjustDeltaT = true 
)
virtual

Reset time step.

Definition at line 963 of file Time.C.

Referenced by Time::setDeltaT().

Here is the caller graph for this function:

void setDeltaT ( const scalar  deltaT,
const bool  adjustDeltaT = true 
)
virtual

Reset time step.

Definition at line 972 of file Time.C.

References Time::setDeltaT().

Here is the call graph for this function:

Foam::TimeState subCycle ( const label  nSubCycles)
virtual

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

Definition at line 984 of file Time.C.

References setTime(), Time::subCycle(), and timeIndex.

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

Here is the call graph for this function:

Here is the caller graph for this function:

void endSubCycle ( )
virtual

Reset time after sub-cycling back to previous TimeState.

Definition at line 998 of file Time.C.

References Time::endSubCycle().

Referenced by Time::endSubCycle().

Here is the call graph for this function:

Here is the caller graph for this function:

functionObjectList& functionObjects ( )
inline

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

Definition at line 550 of file Time.H.

References Time::functionObjects().

Here is the call graph for this function:

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

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

Definition at line 1011 of file Time.C.

References Time::operator+=().

Referenced by Time::operator+=().

Here is the call graph for this function:

Here is the caller graph for this function:

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

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

Definition at line 1017 of file Time.C.

References Time::operator+=().

Here is the call graph for this function:

Foam::Time & operator++ ( )
virtual

Prefix increment,.

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

Definition at line 1024 of file Time.C.

References Foam::endl(), Foam::mag(), name(), Time::operator++(), Foam::reduce(), Foam::returnReduce(), setTime(), timeIndex, and WarningIn.

Referenced by Time::operator++().

Here is the call graph for this function:

Here is the caller graph for this function:

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

Postfix increment, this is identical to the prefix increment.

Definition at line 1256 of file Time.C.

References Time::operator++().

Here is the call graph for this function:

Member Data Documentation

label startTimeIndex_
protected

Definition at line 123 of file Time.H.

scalar startTime_
protected

Definition at line 124 of file Time.H.

scalar endTime_
mutableprotected

Definition at line 125 of file Time.H.

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

Definition at line 127 of file Time.H.

stopAtControls stopAt_
mutableprotected

Definition at line 128 of file Time.H.

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

Definition at line 130 of file Time.H.

writeControls writeControl_
protected

Definition at line 131 of file Time.H.

scalar writeInterval_
protected

Definition at line 133 of file Time.H.

writeControls secondaryWriteControl_
protected

Definition at line 137 of file Time.H.

scalar secondaryWriteInterval_
protected

Definition at line 139 of file Time.H.

label purgeWrite_
protected

Definition at line 141 of file Time.H.

FIFOStack<word> previousOutputTimes_
mutableprotected

Definition at line 142 of file Time.H.

label secondaryPurgeWrite_
protected

Definition at line 146 of file Time.H.

FIFOStack<word> previousSecondaryOutputTimes_
mutableprotected

Definition at line 147 of file Time.H.

bool writeOnce_
protected

Definition at line 151 of file Time.H.

bool subCycling_
protected

Is the time currently being sub-cycled?

Definition at line 154 of file Time.H.

Referenced by Time::subCycling().

autoPtr<TimeState> prevTimeState_
protected

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

Definition at line 157 of file Time.H.

Referenced by Time::prevTimeState().

sigWriteNow sigWriteNow_
protected

Enable one-shot writing upon signal.

Definition at line 163 of file Time.H.

sigStopAtWriteNow sigStopAtWriteNow_
protected

Enable write and clean exit upon signal.

Definition at line 166 of file Time.H.

Foam::Time::fmtflags format_
staticprotected

Time directory name format.

Definition at line 170 of file Time.H.

int precision_
staticprotected

Time directory name precision.

Definition at line 173 of file Time.H.

Foam::word controlDictName
static

The default control dictionary name (normally "controlDict")

Definition at line 211 of file Time.H.


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