COPASI API
4.16.103
|
#include <CCSPMethod.h>
Public Member Functions | |
void | basisRefinement (C_INT &N, C_INT &M, CMatrix< C_FLOAT64 > &ALA, CMatrix< C_FLOAT64 > &TAU, CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &A0, CMatrix< C_FLOAT64 > &B0) |
void | calculateJacobian (C_INT &n, CVector< C_FLOAT64 > &y, CMatrix< C_FLOAT64 > &J) |
CCSPMethod (const CCSPMethod &src, const CCopasiContainer *pParent=NULL) | |
void | createAnnotationsM () |
void | CSPImportanceIndex (C_INT &N, C_FLOAT64 &tauM1, CMatrix< C_FLOAT64 > &Q) |
void | CSPOutput (C_INT &N, C_INT &M, C_INT &R) |
void | CSPParticipationIndex (C_INT &N, C_INT &M, C_FLOAT64 &tauM1, CMatrix< C_FLOAT64 > &B0) |
void | CSPradicalPointer (C_INT &N, C_INT &M, CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B) |
void | cspstep (const double &deltaT, C_INT &n, C_INT &m, CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B) |
void | emptyOutputData (C_INT &N, C_INT &M, C_INT &R) |
void | emptyVectors () |
void | findCandidatesNumber (C_INT &n, C_INT &k, CVector< C_FLOAT64 > &tsc, C_INT &info) |
void | findTimeScaleSeparation (C_INT &n, C_INT &k, CVector< C_FLOAT64 > &tsc, C_INT &info) |
const CArrayAnnotation * | getAmplitudeAnn () const |
const CArrayAnnotation * | getFastParticipationIndexAnn () const |
const CArrayAnnotation * | getFastReactionPointerAnn () const |
const CArrayAnnotation * | getFastReactionPointerNormedAnn () const |
const CArrayAnnotation * | getImportanceIndexAnn () const |
const CArrayAnnotation * | getImportanceIndexNormedRowAnn () const |
const CArrayAnnotation * | getParticipationIndexAnn () const |
const CArrayAnnotation * | getParticipationIndexNormedColumnAnn () const |
const CArrayAnnotation * | getParticipationIndexNormedRowAnn () const |
const CArrayAnnotation * | getRadicalPointerAnn () const |
const CArrayAnnotation * | getSlowParticipationIndexAnn () const |
void | initializeParameter () |
C_INT | isBlockDiagonal (C_INT &N, C_INT &M, CMatrix< C_FLOAT64 > &ALA, C_FLOAT64 SMALL) |
void | modesAmplitude (C_INT &N, C_INT &M, CVector< C_FLOAT64 > &g, CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &F) |
bool | modesAreExhausted (C_INT &N, C_INT &M, C_FLOAT64 &tauM, C_FLOAT64 &tauM1, CVector< C_FLOAT64 > &g, CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &F) |
void | perturbateA (C_INT &n, CMatrix< C_FLOAT64 > &A, C_FLOAT64 delta) |
virtual void | predifineAnnotation () |
void | printResult (std::ostream *ostream) const |
virtual bool | setAnnotationM (size_t step) |
void | setVectors (int fast) |
void | setVectorsToNaN () |
void | smadd (CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &C, C_INT &n1, C_INT &n2) |
void | sminverse (C_INT &n, CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B) |
void | smmult (CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &C, C_INT &n1, C_INT &n2, C_INT &n3) |
void | smnorm (C_INT &n, CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B, C_INT &n1) |
void | smsubst (CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &C, C_INT &n1, C_INT &n2) |
virtual void | start (const CState *initialState) |
virtual void | step (const double &deltaT) |
void | yCorrection (C_INT &N, C_INT &M, CVector< C_FLOAT64 > &y, CMatrix< C_FLOAT64 > &TAUM, CMatrix< C_FLOAT64 > &F, CMatrix< C_FLOAT64 > &A) |
~CCSPMethod () | |
![]() | |
void | createAnnotationsM () |
CTSSAMethod (const CTSSAMethod &src, const CCopasiContainer *pParent=NULL) | |
void | emptyVectors () |
const int & | getCurrentStep () const |
const CArrayAnnotation * | getTable (std::string name) |
const std::vector< std::string > | getTableName () const |
CVector< C_FLOAT64 > | getVec_TimeScale (int step) |
virtual bool | isValidProblem (const CCopasiProblem *pProblem) |
C_FLOAT64 | returnCurrentTime (int step) |
void | setCurrentState (CState *currentState) |
void | setModel (CModel *model) |
void | setProblem (CTSSAProblem *problem) |
void | setVectors (int slowMode) |
~CTSSAMethod () | |
![]() | |
CCopasiMethod (const CCopasiMethod &src, const CCopasiContainer *pParent=NULL) | |
const CCopasiMethod::SubType & | getSubType () const |
const CCopasiTask::Type & | getType () const |
virtual void | load (CReadConfig &configBuffer, CReadConfig::Mode mode=CReadConfig::SEARCH) |
virtual void | print (std::ostream *ostream) const |
virtual bool | setCallBack (CProcessReport *pCallBack) |
virtual | ~CCopasiMethod () |
![]() | |
bool | addGroup (const std::string &name) |
bool | addParameter (const CCopasiParameter ¶meter) |
bool | addParameter (const std::string &name, const CCopasiParameter::Type type) |
template<class CType > | |
bool | addParameter (const std::string &name, const CCopasiParameter::Type type, const CType &value) |
void | addParameter (CCopasiParameter *pParameter) |
CCopasiParameterGroup * | assertGroup (const std::string &name) |
template<class CType > | |
CCopasiParameter * | assertParameter (const std::string &name, const CCopasiParameter::Type type, const CType &defaultValue) |
index_iterator | beginIndex () const |
name_iterator | beginName () const |
CCopasiParameterGroup (const CCopasiParameterGroup &src, const CCopasiContainer *pParent=NULL) | |
CCopasiParameterGroup (const std::string &name, const CCopasiContainer *pParent=NULL, const std::string &objectType="ParameterGroup") | |
void | clear () |
index_iterator | endIndex () const |
name_iterator | endName () const |
CCopasiParameterGroup * | getGroup (const std::string &name) |
const CCopasiParameterGroup * | getGroup (const std::string &name) const |
CCopasiParameterGroup * | getGroup (const size_t &index) |
const CCopasiParameterGroup * | getGroup (const size_t &index) const |
size_t | getIndex (const std::string &name) const |
std::string | getKey (const std::string &name) const |
std::string | getKey (const size_t &index) const |
virtual const std::string & | getName (const size_t &index) const |
virtual const CObjectInterface * | getObject (const CCopasiObjectName &cn) const |
CCopasiParameter * | getParameter (const std::string &name) |
const CCopasiParameter * | getParameter (const std::string &name) const |
CCopasiParameter * | getParameter (const size_t &index) |
const CCopasiParameter * | getParameter (const size_t &index) const |
CCopasiParameter::Type | getType (const std::string &name) const |
CCopasiParameter::Type | getType (const size_t &index) const |
std::string | getUniqueParameterName (const CCopasiParameter *pParameter) const |
const CCopasiParameter::Value & | getValue (const std::string &name) const |
const CCopasiParameter::Value & | getValue (const size_t &index) const |
CCopasiParameter::Value & | getValue (const std::string &name) |
CCopasiParameter::Value & | getValue (const size_t &index) |
CCopasiParameterGroup & | operator= (const CCopasiParameterGroup &rhs) |
bool | removeParameter (const std::string &name) |
bool | removeParameter (const size_t &index) |
template<class CType > | |
bool | setValue (const std::string &name, const CType &value) |
template<class CType > | |
bool | setValue (const size_t &index, const CType &value) |
size_t | size () const |
bool | swap (const size_t &iFrom, const size_t &iTo) |
bool | swap (index_iterator &from, index_iterator &to) |
virtual | ~CCopasiParameterGroup () |
![]() | |
CCopasiParameter (const CCopasiParameter &src, const CCopasiContainer *pParent=NULL) | |
CCopasiParameter (const std::string &name, const Type &type, const void *pValue=NULL, const CCopasiContainer *pParent=NULL, const std::string &objectType="Parameter") | |
virtual CCopasiObjectName | getCN () const |
virtual const std::string & | getKey () const |
virtual std::string | getObjectDisplayName (bool regular=true, bool richtext=false) const |
const CCopasiParameter::Type & | getType () const |
const Value & | getValue () const |
Value & | getValue () |
virtual void * | getValuePointer () const |
CCopasiObject * | getValueReference () const |
bool | isValidValue (const C_FLOAT64 &value) const |
bool | isValidValue (const C_INT32 &value) const |
bool | isValidValue (const unsigned C_INT32 &value) const |
bool | isValidValue (const bool &value) const |
bool | isValidValue (const std::string &value) const |
bool | isValidValue (const CCopasiObjectName &value) const |
bool | isValidValue (const std::vector< CCopasiParameter * > &value) const |
CCopasiParameter & | operator= (const CCopasiParameter &rhs) |
template<class CType > | |
bool | setValue (const CType &value) |
bool | setValue (const std::vector< CCopasiParameter * > &value) |
virtual | ~CCopasiParameter () |
![]() | |
virtual bool | add (CCopasiObject *pObject, const bool &adopt=true) |
CCopasiContainer (const std::string &name, const CCopasiContainer *pParent=NULL, const std::string &type="CN", const unsigned C_INT32 &flag=CCopasiObject::Container) | |
CCopasiContainer (const CCopasiContainer &src, const CCopasiContainer *pParent=NULL) | |
virtual std::string | getChildObjectUnits (const CCopasiObject *pObject) const |
virtual const objectMap & | getObjects () const |
virtual std::string | getUnits () const |
virtual const CCopasiObject * | getValueObject () const |
virtual bool | remove (CCopasiObject *pObject) |
virtual | ~CCopasiContainer () |
![]() | |
void | addDirectDependency (const CCopasiObject *pObject) |
CCopasiObject (const CCopasiObject &src, const CCopasiContainer *pParent=NULL) | |
void | clearDirectDependencies () |
void | clearRefresh () |
bool | dependsOn (DataObjectSet candidates, const DataObjectSet &context=DataObjectSet()) const |
void | getAllDependencies (DataObjectSet &dependencies, const DataObjectSet &context) const |
virtual const DataObjectSet & | getDirectDependencies (const DataObjectSet &context=DataObjectSet()) const |
CCopasiContainer * | getObjectAncestor (const std::string &type) const |
CCopasiDataModel * | getObjectDataModel () |
const CCopasiDataModel * | getObjectDataModel () const |
const std::string & | getObjectName () const |
CCopasiContainer * | getObjectParent () const |
const std::string & | getObjectType () const |
virtual const CObjectInterface::ObjectSet & | getPrerequisites () const |
virtual Refresh * | getRefresh () const |
UpdateMethod * | getUpdateMethod () const |
bool | hasCircularDependencies (DataObjectSet &candidates, DataObjectSet &verified, const DataObjectSet &context) const |
bool | hasUpdateMethod () const |
bool | isArray () const |
bool | isContainer () const |
bool | isDataModel () const |
bool | isMatrix () const |
bool | isNameVector () const |
bool | isNonUniqueName () const |
virtual bool | isPrerequisiteForContext (const CObjectInterface *pObject, const CMath::SimulationContextFlag &context, const CObjectInterface::ObjectSet &changedObjects) const |
bool | isReference () const |
bool | isRoot () const |
bool | isSeparator () const |
bool | isStaticString () const |
bool | isValueBool () const |
bool | isValueDbl () const |
bool | isValueInt () const |
bool | isValueInt64 () const |
bool | isValueString () const |
bool | isVector () const |
virtual bool | mustBeDeleted (const DataObjectSet &deletedObjects) const |
void | removeDirectDependency (const CCopasiObject *pObject) |
void | setDirectDependencies (const DataObjectSet &directDependencies) |
bool | setObjectName (const std::string &name) |
virtual bool | setObjectParent (const CCopasiContainer *pParent) |
void | setObjectValue (const C_FLOAT64 &value) |
void | setObjectValue (const C_INT32 &value) |
void | setObjectValue (const bool &value) |
template<class CType > | |
void | setRefresh (CType *pType, void(CType::*method)(void)) |
template<class CType > | |
void | setUpdateMethod (CType *pType, void(CType::*method)(const C_FLOAT64 &)) |
template<class CType > | |
void | setUpdateMethod (CType *pType, void(CType::*method)(const C_INT32 &)) |
template<class CType > | |
void | setUpdateMethod (CType *pType, void(CType::*method)(const bool &)) |
virtual | ~CCopasiObject () |
![]() | |
CObjectInterface () | |
virtual | ~CObjectInterface () |
Private Member Functions | |
CCSPMethod (const CCopasiContainer *pParent=NULL) | |
Friends | |
CTSSAMethod * | CTSSAMethod::createMethod (CCopasiMethod::SubType subType) |
Definition at line 37 of file CCSPMethod.h.
|
private |
Default constructor.
const | CCopasiContainer * pParent (default: NULL) |
Definition at line 36 of file CCSPMethod.cpp.
References createAnnotationsM(), CTSSAMethod::Data::dim, initializeParameter(), CTSSAMethod::mData, and CTSSAMethod::Data::pMethod.
CCSPMethod::CCSPMethod | ( | const CCSPMethod & | src, |
const CCopasiContainer * | pParent = NULL |
||
) |
Copy constructor.
const CCSPMethod & | src |
const | CCopasiContainer * pParent (default: NULL) |
Definition at line 50 of file CCSPMethod.cpp.
References createAnnotationsM(), CTSSAMethod::Data::dim, initializeParameter(), CTSSAMethod::mData, and CTSSAMethod::Data::pMethod.
CCSPMethod::~CCSPMethod | ( | ) |
Destructor.
Definition at line 65 of file CCSPMethod.cpp.
References CTSSAMethod::mpState, and pdelete.
void CCSPMethod::basisRefinement | ( | C_INT & | N, |
C_INT & | M, | ||
CMatrix< C_FLOAT64 > & | ALA, | ||
CMatrix< C_FLOAT64 > & | TAU, | ||
CMatrix< C_FLOAT64 > & | A, | ||
CMatrix< C_FLOAT64 > & | B, | ||
CMatrix< C_FLOAT64 > & | A0, | ||
CMatrix< C_FLOAT64 > & | B0 | ||
) |
Refinement Procedre : Lamm, Combustion Science and Technoligy, 1993.
Definition at line 1690 of file CCSPMethod.cpp.
References C_INT, CMatrix< CType >::resize(), and TAU.
Referenced by cspstep().
void CCSPMethod::calculateJacobian | ( | C_INT & | n, |
CVector< C_FLOAT64 > & | y, | ||
CMatrix< C_FLOAT64 > & | J | ||
) |
evaluate Jacobian for the current y
void CCSPMethod::createAnnotationsM | ( | ) |
create the CArraAnnotations for every table in the CQTSSAResultSubWidget input for each CArraAnnotations is a seperate CMatrix
Create the CArraAnnotations for tables in the CQTSSAResultSubWidget. Input for each CArraAnnotations is a separate CMatrix.
Definition at line 1845 of file CCSPMethod.cpp.
References mAmplitudeTab, CTSSAMethod::mapTableToName, mFastParticipationIndexTab, mFastReactionPointerNormedTab, mFastReactionPointerTab, mImportanceIndexNormedRowTab, mImportanceIndexTab, mParticipationIndexNormedColumnTab, mParticipationIndexNormedRowTab, mParticipationIndexTab, mRadicalPointerTab, mSlowParticipationIndexTab, pAmplitudeAnn, pFastParticipationIndexAnn, pFastReactionPointerAnn, pFastReactionPointerNormedAnn, pImportanceIndexAnn, pImportanceIndexNormedRowAnn, pParticipationIndexAnn, pParticipationIndexNormedColumnAnn, pParticipationIndexNormedRowAnn, pRadicalPointerAnn, pSlowParticipationIndexAnn, pTmp1, pTmp2, pTmp3, pTmp3Normed, pTmp4, pTmp4Fast, pTmp4NormedColumn, pTmp4NormedRow, pTmp4Slow, pTmp5, pTmp5NormedRow, CArrayAnnotation::setDescription(), CArrayAnnotation::setDimensionDescription(), CArrayAnnotation::setMode(), CArrayAnnotation::STRINGS, CTSSAMethod::tableNames, and CArrayAnnotation::VECTOR.
Referenced by CCSPMethod().
compute CSP Importance Index
compute CSP Importance Index : a measure of relative importance of the contribution of r-th elementary reaction to the current reaction rate of the i-th species
Definition at line 1557 of file CCSPMethod.cpp.
References C_FLOAT64, C_INT, CModel::getReactions(), CModel::getRedStoi(), CModel::getStoi(), mImportanceIndex, mImportanceIndexNormedRow, CTSSAMethod::mpModel, CTSSAMethod::mReducedModel, mYerror, CMatrix< CType >::resize(), CVector< CType >::resize(), CCopasiVector< T >::size(), and smmult().
Referenced by cspstep().
CSP output
Definition at line 1244 of file CCSPMethod.cpp.
References CStateTemplate::beginIndependent(), C_INT, CCopasiObject::getObjectName(), CModel::getReactions(), CModel::getStateTemplate(), mAmplitude, mFastReactionPointer, mImportanceIndex, mParticipationIndex, CTSSAMethod::mpModel, and mRadicalPointer.
Referenced by cspstep().
void CCSPMethod::CSPParticipationIndex | ( | C_INT & | N, |
C_INT & | M, | ||
C_FLOAT64 & | tauM1, | ||
CMatrix< C_FLOAT64 > & | B0 | ||
) |
compute CSP Participation Index
compute CSP Participation Index: a measure of participation of the r-th elementary reaction to the balancing act of the i-th mode It is assumed that forward and reverse reactions are counted as distinct
Definition at line 1436 of file CCSPMethod.cpp.
References C_FLOAT64, C_INT, CModel::getReactions(), CModel::getRedStoi(), CModel::getStoi(), mFastParticipationIndex, mParticipationIndex, mParticipationIndexNormedColumn, mParticipationIndexNormedRow, CTSSAMethod::mpModel, CTSSAMethod::mReducedModel, mSlowParticipationIndex, mYerror, PI, CMatrix< CType >::resize(), CVector< CType >::resize(), and CCopasiVector< T >::size().
Referenced by cspstep().
void CCSPMethod::CSPradicalPointer | ( | C_INT & | N, |
C_INT & | M, | ||
CMatrix< C_FLOAT64 > & | A, | ||
CMatrix< C_FLOAT64 > & | B | ||
) |
compute CSP radical pointer and fast reaction pointers
some comments on the Qm matrix: Qm(i,i) , i = 0,1,...,N, is a measure of projection of i-th unit vector in the m-th mode, whenever Qm(i,i) is not a small number, species m is said to be a CSP radical
Pmr is a measure of projection of r-th stoichiometric vector in the m-th mode, whenever Pmr is not a small number, the r-th reaction is said to be a fast reaction
Definition at line 1314 of file CCSPMethod.cpp.
References C_FLOAT64, C_INT, CModel::getReactions(), CModel::getRedStoi(), CModel::getStoi(), mFastReactionPointer, mFastReactionPointerNormed, CTSSAMethod::mpModel, mRadicalPointer, CTSSAMethod::mReducedModel, CMatrix< CType >::resize(), and CCopasiVector< T >::size().
Referenced by cspstep().
void CCSPMethod::cspstep | ( | const double & | deltaT, |
C_INT & | n, | ||
C_INT & | m, | ||
CMatrix< C_FLOAT64 > & | A, | ||
CMatrix< C_FLOAT64 > & | B | ||
) |
Start procedure of the CSP algorithm. S.H. Lam and D.A. Gaussis, International Journal of Chemical Kinetics, 26, pp. 461-486, 1994
compute CSP Participation Index: a measure of participation of the r-th elementary reaction to the balancing act of the i-th mode It is assumed that forward and reverse reactions are counted as distinct
compute CSP Importance Index : a measure of relative importance of the contribution of r-th elementary reaction to the current reaction rate of the i-th species
Definition at line 401 of file CCSPMethod.cpp.
References basisRefinement(), CStateTemplate::beginIndependent(), C_FLOAT64, C_INT, CSPImportanceIndex(), CSPOutput(), CSPParticipationIndex(), CSPradicalPointer(), emptyOutputData(), findCandidatesNumber(), CMetab::getCompartment(), CModelEntity::getInitialValue(), CModel::getReactions(), CModel::getStateTemplate(), isBlockDiagonal(), mAerror, mAmplitude, mB, MCTSSAMethod, mG, mI, mIter, CTSSAMethod::mJacobian, CTSSAMethod::mJacobian_initial, modesAmplitude(), modesAreExhausted(), CTSSAMethod::mpModel, CTSSAMethod::mQ, CTSSAMethod::mR, mRerror, CTSSAMethod::mTime, mTStep, CTSSAMethod::mY, mYerror, CMatrix< CType >::resize(), CVector< CType >::resize(), CTSSAMethod::schur(), CCopasiVector< T >::size(), sminverse(), smmult(), smnorm(), smsubst(), and CCopasiMessage::WARNING.
Referenced by step().
CSP output : empty
Definition at line 1035 of file CCSPMethod.cpp.
References C_INT, mAmplitude, mFastParticipationIndex, mFastReactionPointer, mFastReactionPointerNormed, mImportanceIndex, mImportanceIndexNormedRow, mParticipationIndex, mParticipationIndexNormedColumn, mParticipationIndexNormedRow, mRadicalPointer, and mSlowParticipationIndex.
Referenced by cspstep().
void CCSPMethod::emptyVectors | ( | ) |
empty every vector to be able to fill them with new values for a new calculation also nullify the step counter
Empty every vector to be able to fill them with new values for a new calculation. Also nullify the step counter.
Definition at line 2496 of file CCSPMethod.cpp.
References CTSSAMethod::mCurrentStep, mVec_mAmplitude, mVec_mFastParticipationIndex, mVec_mFastReactionPointer, mVec_mFastReactionPointerNormed, mVec_mImportanceIndex, mVec_mImportanceIndexNormedRow, mVec_mParticipationIndex, mVec_mParticipationIndexNormedColumn, mVec_mParticipationIndexNormedRow, mVec_mRadicalPointer, mVec_mSlowParticipationIndex, CTSSAMethod::mVec_SlowModes, and CTSSAMethod::mVec_TimeScale.
Referenced by start().
void CCSPMethod::findCandidatesNumber | ( | C_INT & | n, |
C_INT & | k, | ||
CVector< C_FLOAT64 > & | tsc, | ||
C_INT & | info | ||
) |
void CCSPMethod::findTimeScaleSeparation | ( | C_INT & | n, |
C_INT & | k, | ||
CVector< C_FLOAT64 > & | tsc, | ||
C_INT & | info | ||
) |
find the new number of fast according to the time-scale separation ratio
|
inline |
return CArrayAnnotation for visualization in the CQTSSAResultSubWidget
Definition at line 389 of file CCSPMethod.h.
References pAmplitudeAnn.
|
inline |
Definition at line 403 of file CCSPMethod.h.
References pFastParticipationIndexAnn.
|
inline |
Definition at line 393 of file CCSPMethod.h.
References pFastReactionPointerAnn.
|
inline |
Definition at line 395 of file CCSPMethod.h.
References pFastReactionPointerNormedAnn.
|
inline |
|
inline |
Definition at line 409 of file CCSPMethod.h.
References pImportanceIndexNormedRowAnn.
|
inline |
Definition at line 397 of file CCSPMethod.h.
References pParticipationIndexAnn.
|
inline |
Definition at line 401 of file CCSPMethod.h.
References pParticipationIndexNormedColumnAnn.
|
inline |
Definition at line 399 of file CCSPMethod.h.
References pParticipationIndexNormedRowAnn.
|
inline |
|
inline |
Definition at line 405 of file CCSPMethod.h.
References pSlowParticipationIndexAnn.
|
virtual |
Intialize the method parameter
Reimplemented from CTSSAMethod.
Definition at line 70 of file CCSPMethod.cpp.
References CCopasiParameterGroup::assertParameter(), CCopasiParameter::BOOL, C_FLOAT64, C_INT32, CTSSAMethod::initializeIntegrationsParameter(), CCopasiParameter::UDOUBLE, and CCopasiParameter::UINT.
Referenced by CCSPMethod().
C_INT CCSPMethod::isBlockDiagonal | ( | C_INT & | N, |
C_INT & | M, | ||
CMatrix< C_FLOAT64 > & | ALA, | ||
C_FLOAT64 | SMALL | ||
) |
compute the norm C of the off-diagonal blocks
Definition at line 938 of file CCSPMethod.cpp.
References C_FLOAT64, C_INT, and max.
Referenced by cspstep().
void CCSPMethod::modesAmplitude | ( | C_INT & | N, |
C_INT & | M, | ||
CVector< C_FLOAT64 > & | g, | ||
CMatrix< C_FLOAT64 > & | B, | ||
CMatrix< C_FLOAT64 > & | F | ||
) |
compute amplitudes of fast and slow modes
Definition at line 1634 of file CCSPMethod.cpp.
References C_INT.
Referenced by cspstep(), and modesAreExhausted().
bool CCSPMethod::modesAreExhausted | ( | C_INT & | N, |
C_INT & | M, | ||
C_FLOAT64 & | tauM, | ||
C_FLOAT64 & | tauM1, | ||
CVector< C_FLOAT64 > & | g, | ||
CMatrix< C_FLOAT64 > & | A, | ||
CMatrix< C_FLOAT64 > & | B, | ||
CMatrix< C_FLOAT64 > & | F | ||
) |
check : whether each of the analysed M modes is exhausted
Definition at line 1757 of file CCSPMethod.cpp.
References C_FLOAT64, C_INT, modesAmplitude(), and mYerror.
Referenced by cspstep().
|
virtual |
Predifine the CArrayAnnotation for plots
Reimplemented from CTSSAMethod.
Definition at line 1792 of file CCSPMethod.cpp.
References CStateTemplate::beginIndependent(), C_INT, CModel::getNumDependentReactionMetabs(), CModel::getNumIndependentReactionMetabs(), CModel::getReactions(), CModel::getStateTemplate(), CCopasiParameter::getValue(), mFastParticipationIndexTab, mImportanceIndexTab, CTSSAMethod::mpModel, CTSSAMethod::mReducedModel, mSlowParticipationIndexTab, CCopasiParameter::Value::pBOOL, pFastParticipationIndexAnn, pImportanceIndexAnn, pSlowParticipationIndexAnn, CMatrix< CType >::resize(), CArrayAnnotation::resize(), CCopasiVector< T >::resize(), CArrayAnnotation::setCopasiVector(), and CCopasiVector< T >::size().
|
virtual |
print of the standart report sequence for ILDM Method
std::ostream | * ostream |
Reimplemented from CCopasiMethod.
Definition at line 2519 of file CCSPMethod.cpp.
References CStateTemplate::beginIndependent(), C_INT, C_INT32, CTSSAMethod::Data::dim, CCopasiRootContainer::getDatamodelList(), CCopasiObject::getObjectName(), CCopasiTask::getProblem(), CModel::getReactions(), CModel::getStateTemplate(), CTSSAMethod::mData, CTSSAMethod::mpModel, mVec_mImportanceIndex, mVec_mParticipationIndex, mVec_mRadicalPointer, CTSSAMethod::mVec_SlowModes, CTSSAMethod::mVec_TimeScale, CCopasiMethod::print(), pTask, CMatrix< CType >::resize(), CCopasiVector< T >::size(), and CCopasiParameterGroup::size().
|
virtual |
set the every CArrayAnnotation for the requested step set the desription of CArayAnnotation for both dimensions
Set the every CArrayAnnotation for the requested step. Set also the description of CArayAnnotation for both dimensions:
Implements CTSSAMethod.
Definition at line 2025 of file CCSPMethod.cpp.
References CStateTemplate::beginIndependent(), C_INT, C_INT32, CTSSAMethod::Data::dim, CModel::getNumDependentReactionMetabs(), CModel::getNumIndependentReactionMetabs(), CModel::getReactions(), CModel::getStateTemplate(), mAmplitudeTab, CTSSAMethod::mData, mFastParticipationIndexTab, mFastReactionPointerNormedTab, mFastReactionPointerTab, mImportanceIndexNormedRowTab, mImportanceIndexTab, mParticipationIndexNormedColumnTab, mParticipationIndexNormedRowTab, mParticipationIndexTab, CTSSAMethod::mpModel, mRadicalPointerTab, CTSSAMethod::mReducedModel, mSlowParticipationIndexTab, mVec_mAmplitude, mVec_mFastParticipationIndex, mVec_mFastReactionPointer, mVec_mFastReactionPointerNormed, mVec_mImportanceIndex, mVec_mImportanceIndexNormedRow, mVec_mParticipationIndex, mVec_mParticipationIndexNormedColumn, mVec_mParticipationIndexNormedRow, mVec_mRadicalPointer, mVec_mSlowParticipationIndex, CTSSAMethod::mVec_SlowModes, CTSSAMethod::mVec_TimeScale, pAmplitudeAnn, pFastParticipationIndexAnn, pFastReactionPointerAnn, pFastReactionPointerNormedAnn, pImportanceIndexAnn, pImportanceIndexNormedRowAnn, pParticipationIndexAnn, pParticipationIndexNormedColumnAnn, pParticipationIndexNormedRowAnn, pRadicalPointerAnn, CMatrix< CType >::resize(), CArrayAnnotation::resize(), CCopasiVector< T >::resize(), CArrayAnnotation::setAnnotationString(), CArrayAnnotation::setCopasiVector(), CCopasiVector< T >::size(), and step().
Referenced by step().
void CCSPMethod::setVectors | ( | int | fast | ) |
upgrade all vectors with values from actually calculalion for current step
upgrade all vectors with values from actually calculation for current step
Definition at line 2402 of file CCSPMethod.cpp.
References C_INT, CTSSAMethod::Data::dim, CModel::getReactions(), mAmplitude, CTSSAMethod::mCurrentStep, CTSSAMethod::mCurrentTime, CTSSAMethod::mData, mFastParticipationIndex, mFastReactionPointer, mFastReactionPointerNormed, mImportanceIndex, mImportanceIndexNormedRow, mParticipationIndex, mParticipationIndexNormedColumn, mParticipationIndexNormedRow, CTSSAMethod::mpModel, CTSSAMethod::mR, mRadicalPointer, mSlowParticipationIndex, CTSSAMethod::mTime, mVec_mAmplitude, mVec_mFastParticipationIndex, mVec_mFastReactionPointer, mVec_mFastReactionPointerNormed, mVec_mImportanceIndex, mVec_mImportanceIndexNormedRow, mVec_mParticipationIndex, mVec_mParticipationIndexNormedColumn, mVec_mParticipationIndexNormedRow, mVec_mRadicalPointer, mVec_mSlowParticipationIndex, CTSSAMethod::mVec_SlowModes, CTSSAMethod::mVec_TimeScale, CMatrix< CType >::numCols(), CMatrix< CType >::numRows(), CVectorCore< CType >::size(), and CCopasiVector< T >::size().
Referenced by step().
void CCSPMethod::setVectorsToNaN | ( | ) |
set vectors to NaN when the reduction was not possible
Definition at line 2309 of file CCSPMethod.cpp.
References C_INT, CTSSAMethod::Data::dim, CModel::getReactions(), CTSSAMethod::mCurrentStep, CTSSAMethod::mCurrentTime, CTSSAMethod::mData, CTSSAMethod::mpModel, CTSSAMethod::mR, CTSSAMethod::mTime, mVec_mFastParticipationIndex, mVec_mFastReactionPointer, mVec_mFastReactionPointerNormed, mVec_mImportanceIndex, mVec_mImportanceIndexNormedRow, mVec_mParticipationIndex, mVec_mParticipationIndexNormedColumn, mVec_mParticipationIndexNormedRow, mVec_mRadicalPointer, mVec_mSlowParticipationIndex, CTSSAMethod::mVec_SlowModes, CTSSAMethod::mVec_TimeScale, and CCopasiVector< T >::size().
Referenced by step().
void CCSPMethod::smadd | ( | CMatrix< C_FLOAT64 > & | A, |
CMatrix< C_FLOAT64 > & | B, | ||
CMatrix< C_FLOAT64 > & | C, | ||
C_INT & | n1, | ||
C_INT & | n2 | ||
) |
Inverse submatrix
Definition at line 164 of file CCSPMethod.cpp.
References CMatrix< CType >::array(), C_INT, dgesv_(), and CMatrix< CType >::resize().
Referenced by cspstep().
void CCSPMethod::smmult | ( | CMatrix< C_FLOAT64 > & | A, |
CMatrix< C_FLOAT64 > & | B, | ||
CMatrix< C_FLOAT64 > & | C, | ||
C_INT & | n1, | ||
C_INT & | n2, | ||
C_INT & | n3 | ||
) |
CSP related staff Multiplication of submatrix
Definition at line 85 of file CCSPMethod.cpp.
References C_INT.
Referenced by CSPImportanceIndex(), cspstep(), and yCorrection().
void CCSPMethod::smnorm | ( | C_INT & | n, |
CMatrix< C_FLOAT64 > & | A, | ||
CMatrix< C_FLOAT64 > & | B, | ||
C_INT & | n1 | ||
) |
Normalize submatrix
Definition at line 126 of file CCSPMethod.cpp.
References C_FLOAT64, and C_INT.
Referenced by cspstep().
void CCSPMethod::smsubst | ( | CMatrix< C_FLOAT64 > & | A, |
CMatrix< C_FLOAT64 > & | B, | ||
CMatrix< C_FLOAT64 > & | C, | ||
C_INT & | n1, | ||
C_INT & | n2 | ||
) |
Substruction of submatrix
Definition at line 102 of file CCSPMethod.cpp.
References C_INT.
Referenced by cspstep().
This instructs the method to prepare for integration starting with the initialState given.
const CState * | initialState |
Reimplemented from CTSSAMethod.
Definition at line 1142 of file CCSPMethod.cpp.
References CStateTemplate::beginIndependent(), C_INT, CTSSAMethod::Data::dim, emptyVectors(), CModel::getNumber2QuantityFactor(), CModel::getReactions(), CModel::getStateTemplate(), CCopasiParameter::getValue(), CTSSAMethod::integrationMethodStart(), mAerror, mAmplitude, mB, mCSPbasis, CTSSAMethod::mData, mEps, mFastParticipationIndex, mFastParticipationIndexTab, mFastReactionPointer, mFastReactionPointerNormed, mG, mI, mImportanceIndex, mImportanceIndexNormedRow, mImportanceIndexTab, mIter, mParticipationIndex, mParticipationIndexNormedColumn, mParticipationIndexNormedRow, CTSSAMethod::mpModel, mRadicalPointer, CTSSAMethod::mReducedModel, mRerror, mSetVectors, mSlowParticipationIndex, mSlowParticipationIndexTab, mTStep, mVec_mFastParticipationIndex, mVec_mImportanceIndex, mVec_mSlowParticipationIndex, mYerror, CCopasiParameter::Value::pBOOL, pFastParticipationIndexAnn, pImportanceIndexAnn, pSlowParticipationIndexAnn, CCopasiParameter::Value::pUDOUBLE, CCopasiParameter::Value::pUINT, CMatrix< CType >::resize(), CArrayAnnotation::resize(), CVector< CType >::resize(), CCopasiVector< T >::resize(), CArrayAnnotation::setCopasiVector(), CCopasiVector< T >::size(), and CModel::updateSimulatedValues().
|
virtual |
This instructs the method to calculate a time step of deltaT starting with the current state, i.e., the result of the previous step. The new state (after deltaT) is expected in the current state. The return value is the actual timestep taken.
const double & | deltaT |
Reimplemented from CTSSAMethod.
Definition at line 1085 of file CCSPMethod.cpp.
References CVectorCore< CType >::array(), C_INT, CModel::calculateDerivatives(), CModel::calculateDerivativesX(), CModel::calculateJacobian(), CModel::calculateJacobianX(), cspstep(), CTSSAMethod::Data::dim, CTSSAMethod::integrationStep(), mB, CTSSAMethod::mCurrentStep, CTSSAMethod::mData, mG, CTSSAMethod::mJacobian, CTSSAMethod::mpModel, CTSSAMethod::mReducedModel, mTStep, CMatrix< CType >::resize(), setAnnotationM(), setVectors(), setVectorsToNaN(), and CModel::updateSimulatedValues().
Referenced by setAnnotationM().
void CCSPMethod::yCorrection | ( | C_INT & | N, |
C_INT & | M, | ||
CVector< C_FLOAT64 > & | y, | ||
CMatrix< C_FLOAT64 > & | TAUM, | ||
CMatrix< C_FLOAT64 > & | F, | ||
CMatrix< C_FLOAT64 > & | A | ||
) |
correct for the contribution of the fast time-scales to y
Definition at line 1657 of file CCSPMethod.cpp.
References C_INT, CMatrix< CType >::resize(), CVector< CType >::resize(), and smmult().
|
friend |
C_FLOAT64 CCSPMethod::mAerror |
A maximux absolute error
Definition at line 71 of file CCSPMethod.h.
Amplitudes of reaction modes (column vector);
Definition at line 109 of file CCSPMethod.h.
Referenced by CSPOutput(), cspstep(), emptyOutputData(), setVectors(), and start().
input for every CArraAnnotations contain data for single stepcalculation
Definition at line 366 of file CCSPMethod.h.
Referenced by createAnnotationsM(), and setAnnotationM().
The basis vectors B from the time step (T - delta T)
Definition at line 91 of file CCSPMethod.h.
C_INT CCSPMethod::mCSPbasis |
indicates whether the basis vectors B were computed on the time step (T - delta T)
Definition at line 97 of file CCSPMethod.h.
Referenced by start().
C_FLOAT64 CCSPMethod::mEps |
A value related to a measure of the time scale separation of the fast and slow modes
Definition at line 56 of file CCSPMethod.h.
Referenced by findCandidatesNumber(), and start().
Definition at line 133 of file CCSPMethod.h.
Referenced by CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Definition at line 376 of file CCSPMethod.h.
Referenced by createAnnotationsM(), predifineAnnotation(), setAnnotationM(), and start().
Fast Reaction Pointer of the m-th reaction mode : whenever is not a small number, the r-th reaction is said to be a fast reaction
Definition at line 122 of file CCSPMethod.h.
Referenced by CSPOutput(), CSPradicalPointer(), emptyOutputData(), setVectors(), and start().
Definition at line 123 of file CCSPMethod.h.
Referenced by CSPradicalPointer(), emptyOutputData(), setVectors(), and start().
Definition at line 369 of file CCSPMethod.h.
Referenced by createAnnotationsM(), and setAnnotationM().
Definition at line 368 of file CCSPMethod.h.
Referenced by createAnnotationsM(), and setAnnotationM().
A vector of the current right hand side
Definition at line 81 of file CCSPMethod.h.
CSP related staff Unit matrix
Definition at line 51 of file CCSPMethod.h.
Importance Index: is a measure of relative importance of the contribution of r-th elementary reaction to the current reaction rate of i-th species
Definition at line 141 of file CCSPMethod.h.
Referenced by CSPImportanceIndex(), CSPOutput(), emptyOutputData(), setVectors(), and start().
Definition at line 142 of file CCSPMethod.h.
Referenced by CSPImportanceIndex(), emptyOutputData(), setVectors(), and start().
Definition at line 374 of file CCSPMethod.h.
Referenced by createAnnotationsM(), and setAnnotationM().
Definition at line 373 of file CCSPMethod.h.
Referenced by createAnnotationsM(), predifineAnnotation(), setAnnotationM(), and start().
C_INT CCSPMethod::mIter |
Max number of the refinement iterations
Definition at line 76 of file CCSPMethod.h.
Participation Index : is a mesure of participation of the r-th elementary reaction to the balancing act of the i-th mode (matrix)
Definition at line 130 of file CCSPMethod.h.
Referenced by CSPOutput(), CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Definition at line 132 of file CCSPMethod.h.
Referenced by CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Definition at line 372 of file CCSPMethod.h.
Referenced by createAnnotationsM(), and setAnnotationM().
Definition at line 131 of file CCSPMethod.h.
Referenced by CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Definition at line 371 of file CCSPMethod.h.
Referenced by createAnnotationsM(), and setAnnotationM().
Definition at line 370 of file CCSPMethod.h.
Referenced by createAnnotationsM(), and setAnnotationM().
Radical Pointer: whenever is not a small number, species k is said to be CSP radical
Definition at line 115 of file CCSPMethod.h.
Referenced by CSPOutput(), CSPradicalPointer(), emptyOutputData(), setVectors(), and start().
Definition at line 367 of file CCSPMethod.h.
Referenced by createAnnotationsM(), and setAnnotationM().
C_FLOAT64 CCSPMethod::mRerror |
A maximux relative error
Definition at line 66 of file CCSPMethod.h.
C_INT CCSPMethod::mSetVectors |
Definition at line 134 of file CCSPMethod.h.
Referenced by CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Definition at line 377 of file CCSPMethod.h.
Referenced by createAnnotationsM(), predifineAnnotation(), setAnnotationM(), and start().
C_FLOAT64 CCSPMethod::mTsc |
An alternative value related to a mesure of the time scale separation of the fast and slow modes
Definition at line 61 of file CCSPMethod.h.
C_INT CCSPMethod::mTStep |
Definition at line 93 of file CCSPMethod.h.
vectors contain whole data for all calculation steps
Definition at line 312 of file CCSPMethod.h.
Referenced by emptyVectors(), setAnnotationM(), and setVectors().