crankConRod Class Reference

Manage time in terms of engine RPM and crank-angle. More...

Inheritance diagram for crankConRod:
Collaboration diagram for crankConRod:

Public Member Functions

 TypeName ("crankConRod")
 Runtime type information. More...
 
 crankConRod (const word &name, const fileName &rootPath, const fileName &caseName, const fileName &systemName="system", const fileName &constantName="constant", const fileName &dictName="engineGeometry")
 Construct from objectRegistry arguments. More...
 
 crankConRod (const crankConRod &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~crankConRod ()
 Destructor. More...
 
scalar degToTime (const scalar theta) const
 Convert degrees to seconds (for given engine speed in RPM) More...
 
scalar timeToDeg (const scalar t) const
 Convert seconds to degrees (for given engine speed in RPM) More...
 
scalar pistonPosition (const scalar theta) const
 Calculate the piston position from the engine geometry. More...
 
const dimensionedScalarrpm () const
 Return the engines current operating RPM. More...
 
const dimensionedScalarconRodLength () const
 Return the engines connecting-rod length. More...
 
const dimensionedScalarbore () const
 Return the engines bore. More...
 
const dimensionedScalarstroke () const
 Return the engines stroke. More...
 
const dimensionedScalarclearance () const
 Return the engines clearance-gap. More...
 
virtual scalar theta () const
 Return current crank-angle. More...
 
virtual word unit () const
 Return time unit. More...
 
scalar thetaRevolution () const
 Return current crank-angle translated to a single revolution. More...
 
virtual scalar deltaTheta () const
 Return crank-angle increment. More...
 
virtual scalar userTimeToTime (const scalar theta) const
 Convert the user-time (CA deg) to real-time (s). More...
 
virtual scalar timeToUserTime (const scalar t) const
 Convert the real-time (s) into user-time (CA deg) More...
 
virtual scalar timeToUserTimeRatio () const
 Ratio between real-time and user-time. More...
 
virtual void readDict ()
 Read the control dictionary and set the write controls etc. More...
 
virtual bool read ()
 Read the controlDict and set all the parameters. More...
 
void operator= (const crankConRod &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from engineTime
 TypeName ("engineTime")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, engineTime, dictionary,(const word &name, const fileName &rootPath, const fileName &caseName, const fileName &systemName, const fileName &constantName, const fileName &dictName),(name, rootPath, caseName, systemName, constantName, dictName))
 Declare runtime constructor selection table. More...
 
 engineTime (const word &name, const fileName &rootPath, const fileName &caseName, const fileName &systemName="system", const fileName &constantName="constant", const fileName &dictName="engineGeometry")
 Construct from objectRegistry arguments. More...
 
virtual ~engineTime ()
 Destructor. More...
 
const IOdictionaryengineDict () const
 Return the engine geometry dictionary. More...
 
dimensionedScalar pistonPosition () const
 Return current piston position. More...
 
dimensionedScalar pistonDisplacement () const
 Return piston displacement for current time step. More...
 
dimensionedScalar pistonSpeed () const
 Return piston speed for current time step. More...
 
- Public Member Functions inherited from Time
 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...
 
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 write) 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...
 
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 stopAtControl) 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...
 
 objectRegistry (const objectRegistry &)
 Disallow default bitwise copy construction. 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...
 
void addTemporaryObject (const word &name) const
 Add the given name to the set of temporary objects to cache. More...
 
bool cacheTemporaryObject (const word &name) const
 Return true if given name is in the cacheTemporaryObjects set. More...
 
template<class Object >
bool cacheTemporaryObject (Object &ob) const
 Cache the given object. More...
 
void resetCacheTemporaryObject (const regIOobject &ob) const
 Reset the cache state of the given object. More...
 
bool checkCacheTemporaryObjects () const
 Check that all objects in the cacheTemporaryObjects set. 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...
 
void operator= (const objectRegistry &)=delete
 Disallow default bitwise assignment. 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 &)
 Copy constructor. More...
 
 regIOobject (const regIOobject &, bool registerCopy)
 Copy constructor, transferring registry registration to copy. More...
 
 regIOobject (const word &newName, const regIOobject &, bool registerCopy)
 Copy constructor with new name, transferring registry registration. More...
 
 regIOobject (const IOobject &, const regIOobject &)
 Copy constructor with new IO parameters. More...
 
virtual ~regIOobject ()
 Destructor. More...
 
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 read=true)
 Return Istream and check object type against that given. More...
 
void close ()
 Close Istream. More...
 
virtual bool readData (Istream &)
 Virtual readData function. More...
 
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 global () const
 Is object same for all processors. More...
 
virtual bool write (const bool write=true) const
 Write using setting from DB. 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)
 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...
 
 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...
 
 IOobject (const IOobject &io)=default
 Copy constructor. 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...
 
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...
 
word modelName (const char *name) const
 Return the name of the object within this model. 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 localPath () const
 Return the path relative to the case. More...
 
fileName objectPath () const
 Return complete path + object name. More...
 
fileName localObjectPath () const
 Return complete localPath + 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)
 
template<class Name >
Foam::word modelName (Name name, const word &model)
 
- 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 > &)
 Copy constructor. More...
 
 HashTable (HashTable< regIOobject *, word, string::hash > &&)
 Move constructor. 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...
 
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 operator. More...
 
void operator= (HashTable< regIOobject *, word, string::hash > &&)
 Move assignment operator. 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...
 
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 name, dimensions and value. More...
 
 dimensioned (const dimensionSet &, const scalar &)
 Construct given dimensions and value. More...
 
 dimensioned (const scalar &)
 Construct dimensionless given value only. More...
 
 dimensioned (const word &, const dimensioned< scalar > &)
 Construct from a dimensioned<Type> changing the name. 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)
 

Additional Inherited Members

- Public Types inherited from Time
enum  writeControl {
  timeStep, runTime, adjustableRunTime, clockTime,
  cpuTime
}
 Write control options. More...
 
enum  stopAtControl { endTime, noWriteNow, writeNow, nextWrite }
 Stop-run control options. More...
 
enum  format { 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...
 
- Static Public Member Functions inherited from engineTime
static autoPtr< engineTimeNew (const word &name, const fileName &rootPath, const fileName &caseName, const fileName &systemName="system", const fileName &constantName="constant", const fileName &dictName="engineGeometry")
 
- Static Public Member Functions inherited from Time
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 Name >
static word modelName (Name name, const word &model)
 Return the name of the object within the given model. 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 inherited from Time
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 constexpr const char * foamFile = "FoamFile"
 Keyword for the FoamFile header sub-dictionary. More...
 
static const NamedEnum< fileCheckTypes, 4 > fileCheckTypesNames
 
static fileCheckTypes fileModificationChecking
 Type of file modification checking. More...
 
- Static Public Attributes inherited from HashTableCore
static const label maxTableSize
 Maximum allowable table size. More...
 
- Protected Member Functions inherited from Time
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...
 
- 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 inherited from engineTime
const IOdictionary dict_
 
- Protected Attributes inherited from Time
label startTimeIndex_
 
scalar startTime_
 
scalar endTime_
 
stopAtControl stopAt_
 
writeControl 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 inherited from Time
static const NamedEnum< stopAtControl, 4 > stopAtControlNames_
 
static const NamedEnum< writeControl, 5 > writeControlNames_
 
static format format_
 Time directory name format. More...
 
static int precision_
 Time directory name precision. More...
 
static const int maxPrecision_
 Maximum time directory name precision. More...
 

Detailed Description

Manage time in terms of engine RPM and crank-angle.

When crankConRod is in effect, the userTime is reported in degrees crank-angle instead of in seconds. The RPM to be used is specified in constant/engineGeometry. If only a time conversion is required, the geometric engine parameters can be dropped or set to zero.

For example,

    rpm             rpm  [0 0 -1 0 0]  2000;

    conRodLength    conRodLength  [0 1 0 0 0] 0.0;
    bore            bore          [0 1 0 0 0] 0.0;
    stroke          stroke        [0 1 0 0 0] 0.0;
    clearance       clearance     [0 1 0 0 0] 0.0;
Source files

Definition at line 65 of file crankConRod.H.

Constructor & Destructor Documentation

◆ crankConRod() [1/2]

crankConRod ( const word name,
const fileName rootPath,
const fileName caseName,
const fileName systemName = "system",
const fileName constantName = "constant",
const fileName dictName = "engineGeometry" 
)

Construct from objectRegistry arguments.

Definition at line 60 of file crankConRod.C.

References dimensioned< Type >::readIfPresent().

Here is the call graph for this function:

◆ crankConRod() [2/2]

crankConRod ( const crankConRod )
delete

Disallow default bitwise copy construction.

◆ ~crankConRod()

virtual ~crankConRod ( )
inlinevirtual

Destructor.

Definition at line 111 of file crankConRod.H.

References crankConRod::degToTime(), engineTime::pistonPosition(), crankConRod::theta(), and crankConRod::timeToDeg().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "crankConRod"  )

Runtime type information.

◆ degToTime()

Foam::scalar degToTime ( const scalar  theta) const

Convert degrees to seconds (for given engine speed in RPM)

Definition at line 122 of file crankConRod.C.

Referenced by crankConRod::~crankConRod().

Here is the caller graph for this function:

◆ timeToDeg()

Foam::scalar timeToDeg ( const scalar  t) const

Convert seconds to degrees (for given engine speed in RPM)

Definition at line 129 of file crankConRod.C.

Referenced by crankConRod::~crankConRod().

Here is the caller graph for this function:

◆ pistonPosition()

Foam::scalar pistonPosition ( const scalar  theta) const
virtual

Calculate the piston position from the engine geometry.

and given crank angle.

Implements engineTime.

Definition at line 172 of file crankConRod.C.

References Foam::cos(), Foam::degToRad(), Foam::sin(), Foam::sqr(), and Foam::sqrt().

Here is the call graph for this function:

◆ rpm()

const dimensionedScalar& rpm ( ) const
inline

Return the engines current operating RPM.

Definition at line 133 of file crankConRod.H.

◆ conRodLength()

const dimensionedScalar& conRodLength ( ) const
inline

Return the engines connecting-rod length.

Definition at line 139 of file crankConRod.H.

◆ bore()

const dimensionedScalar& bore ( ) const
inline

Return the engines bore.

Definition at line 145 of file crankConRod.H.

◆ stroke()

const dimensionedScalar& stroke ( ) const
inline

Return the engines stroke.

Definition at line 151 of file crankConRod.H.

◆ clearance()

◆ theta()

Foam::scalar theta ( ) const
virtual

Return current crank-angle.

Implements engineTime.

Definition at line 136 of file crankConRod.C.

Referenced by crankConRod::clearance(), and crankConRod::~crankConRod().

Here is the caller graph for this function:

◆ unit()

Foam::word unit ( ) const
virtual

Return time unit.

Implements engineTime.

Definition at line 142 of file crankConRod.C.

Referenced by crankConRod::clearance().

Here is the caller graph for this function:

◆ thetaRevolution()

Foam::scalar thetaRevolution ( ) const

Return current crank-angle translated to a single revolution.

(value between -180 and 180 with 0 = top dead centre)

Definition at line 148 of file crankConRod.C.

Referenced by crankConRod::clearance().

Here is the caller graph for this function:

◆ deltaTheta()

Foam::scalar deltaTheta ( ) const
virtual

Return crank-angle increment.

Implements engineTime.

Definition at line 166 of file crankConRod.C.

Referenced by crankConRod::clearance().

Here is the caller graph for this function:

◆ userTimeToTime()

Foam::scalar userTimeToTime ( const scalar  theta) const
virtual

Convert the user-time (CA deg) to real-time (s).

Reimplemented from TimeState.

Definition at line 192 of file crankConRod.C.

Referenced by crankConRod::clearance().

Here is the caller graph for this function:

◆ timeToUserTime()

Foam::scalar timeToUserTime ( const scalar  t) const
virtual

Convert the real-time (s) into user-time (CA deg)

Reimplemented from TimeState.

Definition at line 198 of file crankConRod.C.

Referenced by crankConRod::clearance().

Here is the caller graph for this function:

◆ timeToUserTimeRatio()

Foam::scalar timeToUserTimeRatio ( ) const
virtual

Ratio between real-time and user-time.

Reimplemented from TimeState.

Definition at line 204 of file crankConRod.C.

Referenced by crankConRod::clearance().

Here is the caller graph for this function:

◆ readDict()

void readDict ( )
virtual

Read the control dictionary and set the write controls etc.

Reimplemented from engineTime.

Definition at line 101 of file crankConRod.C.

References Time::readDict().

Referenced by crankConRod::clearance().

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

◆ read()

bool read ( )
virtual

Read the controlDict and set all the parameters.

Reimplemented from engineTime.

Definition at line 108 of file crankConRod.C.

References Time::read().

Referenced by crankConRod::clearance().

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

◆ operator=()

void operator= ( const crankConRod )
delete

Disallow default bitwise assignment.

Referenced by crankConRod::clearance().

Here is the caller graph for this function:

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