COPASI API
4.16.103
|
#include <CDimension.h>
Public Member Functions | |
CDimension () | |
CDimension | compare (const CDimension &rhs) const |
void | fixDimensionless (bool d1, bool d2, bool d3, bool d4, bool d5) |
std::string | getDebugString () const |
std::string | getDisplayString (const CModel *pModel) const |
bool | isContradiction () const |
bool | isUnknown () const |
CDimension | operator* (const C_FLOAT64 &rhs) const |
CDimension | operator+ (const CDimension &rhs) const |
CDimension | operator- (const CDimension &rhs) const |
bool | operator== (const CDimension &rhs) const |
std::string | print (const CModel *pModel) const |
void | setContradiction () |
void | setDimension (const C_FLOAT64 &d1, const C_FLOAT64 &d2, const C_FLOAT64 &d3, const C_FLOAT64 &d4, const C_FLOAT64 &d5) |
void | setUnknown () |
Static Private Member Functions | |
static std::string | constructDisplayElement (const std::string &base, C_FLOAT64 exponent) |
Private Attributes | |
bool | mContradiction |
C_FLOAT64 | mD1 |
exponent of quantity base unit More... | |
C_FLOAT64 | mD2 |
exponent of volume base unit More... | |
C_FLOAT64 | mD3 |
exponent of time base unit More... | |
C_FLOAT64 | mD4 |
exponent of area base unit More... | |
C_FLOAT64 | mD5 |
exponent of length base unit More... | |
bool | mUnknown |
CDimension class. The class describes the dimension of a value, usually a CFunctionParameter.
The dimension is given as a quintuple of real numbers: (amount of substance, volume, time, area, length). It can also be "unknown" or "contradiction". The actual unit can be constructed from the dimension and the 5 basic units from the CModel class (which is done in the getDisplayString() method).
Definition at line 33 of file CDimension.h.
CDimension::CDimension | ( | ) |
Definition at line 22 of file CDimension.cpp.
CDimension CDimension::compare | ( | const CDimension & | rhs | ) | const |
Definition at line 219 of file CDimension.cpp.
References isContradiction(), isUnknown(), and setContradiction().
Referenced by CFindDimensions::findDimension().
|
staticprivate |
Definition at line 61 of file CDimension.cpp.
Referenced by getDisplayString().
void CDimension::fixDimensionless | ( | bool | d1, |
bool | d2, | ||
bool | d3, | ||
bool | d4, | ||
bool | d5 | ||
) |
If one of the base units is dimensionless, the corresponding exponent is adjusted to be 0.0. d1,d2,d3, d4, d5 indicate whether the base units are dimensionless
Definition at line 263 of file CDimension.cpp.
References mD1, mD2, mD3, mD4, and mD5.
Referenced by CFindDimensions::findDimensions(), and CFindDimensions::findDimensionsMassAction().
std::string CDimension::getDebugString | ( | ) | const |
std::string CDimension::getDisplayString | ( | const CModel * | pModel | ) | const |
Definition at line 72 of file CDimension.cpp.
References constructDisplayElement(), CModel::getAreaUnitName(), CModel::getLengthUnitName(), CModel::getQuantityUnitName(), CModel::getTimeUnitName(), CModel::getVolumeUnitName(), isContradiction(), isUnknown(), mD1, mD2, mD3, mD4, and mD5.
Referenced by print().
bool CDimension::isContradiction | ( | ) | const |
Definition at line 43 of file CDimension.cpp.
References mContradiction.
Referenced by compare(), getDisplayString(), operator*(), operator+(), and operator-().
bool CDimension::isUnknown | ( | ) | const |
Definition at line 33 of file CDimension.cpp.
References mUnknown.
Referenced by compare(), getDisplayString(), operator*(), operator+(), and operator-().
CDimension CDimension::operator* | ( | const C_FLOAT64 & | rhs | ) | const |
Definition at line 205 of file CDimension.cpp.
References isContradiction(), isUnknown(), mD1, mD2, mD3, mD4, mD5, setContradiction(), setDimension(), and setUnknown().
CDimension CDimension::operator+ | ( | const CDimension & | rhs | ) | const |
Definition at line 177 of file CDimension.cpp.
References isContradiction(), isUnknown(), mD1, mD2, mD3, mD4, mD5, setContradiction(), setDimension(), and setUnknown().
CDimension CDimension::operator- | ( | const CDimension & | rhs | ) | const |
Definition at line 191 of file CDimension.cpp.
References isContradiction(), isUnknown(), mD1, mD2, mD3, mD4, mD5, setContradiction(), setDimension(), and setUnknown().
bool CDimension::operator== | ( | const CDimension & | rhs | ) | const |
Definition at line 166 of file CDimension.cpp.
References mContradiction, mD1, mD2, mD3, mD4, mD5, and mUnknown.
std::string CDimension::print | ( | const CModel * | pModel | ) | const |
insert operator
Disabled becuase the in order to generate output, the dimensions instance needs the datamodel. std::ostream & operator<<(std::ostream &os, const CDimension & d) { if (d.mUnknown) os << "Dim: unknown"; else if (d.mContradiction) os << "Dim: conctradiction"; else os << "Dim: (" << d.mD1 << ", " << d.mD2 << ", " << d.mD3 << ") " << d.getDisplayString();
return os; }
Definition at line 250 of file CDimension.cpp.
References getDisplayString(), mContradiction, mD1, mD2, mD3, mD4, mD5, and mUnknown.
void CDimension::setContradiction | ( | ) |
Definition at line 38 of file CDimension.cpp.
References mContradiction, and mUnknown.
Referenced by compare(), operator*(), operator+(), and operator-().
void CDimension::setDimension | ( | const C_FLOAT64 & | d1, |
const C_FLOAT64 & | d2, | ||
const C_FLOAT64 & | d3, | ||
const C_FLOAT64 & | d4, | ||
const C_FLOAT64 & | d5 | ||
) |
Definition at line 48 of file CDimension.cpp.
References mContradiction, mD1, mD2, mD3, mD4, mD5, and mUnknown.
Referenced by CFindDimensions::findDimension(), CFindDimensions::findDimensions(), CFindDimensions::findDimensionsMassAction(), operator*(), operator+(), and operator-().
void CDimension::setUnknown | ( | ) |
Definition at line 28 of file CDimension.cpp.
References mContradiction, and mUnknown.
Referenced by CFindDimensions::findDimension(), operator*(), operator+(), and operator-().
|
private |
Definition at line 85 of file CDimension.h.
Referenced by isContradiction(), operator==(), print(), setContradiction(), setDimension(), and setUnknown().
|
private |
exponent of quantity base unit
Definition at line 74 of file CDimension.h.
Referenced by fixDimensionless(), getDisplayString(), operator*(), operator+(), operator-(), operator==(), print(), and setDimension().
|
private |
exponent of volume base unit
Definition at line 76 of file CDimension.h.
Referenced by fixDimensionless(), getDisplayString(), operator*(), operator+(), operator-(), operator==(), print(), and setDimension().
|
private |
exponent of time base unit
Definition at line 78 of file CDimension.h.
Referenced by fixDimensionless(), getDisplayString(), operator*(), operator+(), operator-(), operator==(), print(), and setDimension().
|
private |
exponent of area base unit
Definition at line 80 of file CDimension.h.
Referenced by fixDimensionless(), getDisplayString(), operator*(), operator+(), operator-(), operator==(), print(), and setDimension().
|
private |
exponent of length base unit
Definition at line 82 of file CDimension.h.
Referenced by fixDimensionless(), getDisplayString(), operator*(), operator+(), operator-(), operator==(), print(), and setDimension().
|
private |
Definition at line 84 of file CDimension.h.
Referenced by isUnknown(), operator==(), print(), setContradiction(), setDimension(), and setUnknown().