COPASI API
4.40.278
|
The CCSPMethod class implements the CSP method. More...
#include <CCSPMethod.h>
Public Member Functions | |
CCSPMethod (const CCSPMethod &src, const CDataContainer *pParent) | |
CCSPMethod (const CDataContainer *pParent, const CTaskEnum::Method &methodType=CTaskEnum::Method::tssCSP, const CTaskEnum::Task &taskType=CTaskEnum::Task::tssAnalysis) | |
virtual void | createAnnotationsM () |
void | CSPOutput (C_INT &N, C_INT &M, C_INT &R) |
void | emptyVectors () |
const CDataArray * | getFastParticipationIndexAnn () const |
const CDataArray * | getFastReactionPointerAnn () const |
const CDataArray * | getFastReactionPointerNormedAnn () const |
const CDataArray * | getImportanceIndexAnn () const |
const CDataArray * | getImportanceIndexNormedRowAnn () const |
const CDataArray * | getParticipationIndexAnn () const |
const CDataArray * | getParticipationIndexNormedColumnAnn () const |
const CDataArray * | getParticipationIndexNormedRowAnn () const |
const CDataArray * | getRadicalPointerAnn () const |
const CDataArray * | getSlowParticipationIndexAnn () const |
virtual void | initializeOutput () |
void | initializeParameter () |
virtual void | printResult (std::ostream *ostream) const |
virtual bool | setAnnotationM (size_t step) |
void | setVectors (int fast) |
void | setVectorsToNaN () |
virtual void | start () |
virtual void | step (const double &deltaT) |
virtual | ~CCSPMethod () |
Public Member Functions inherited from CTSSAMethod | |
CTSSAMethod (const CDataContainer *pParent, const CTaskEnum::Method &methodType, const CTaskEnum::Task &taskType=CTaskEnum::Task::tssAnalysis) | |
CTSSAMethod (const CTSSAMethod &src, const CDataContainer *pParent) | |
void | emptyVectors () |
const int & | getCurrentStep () const |
const CDataArray * | getTable (const std::string &name) |
const std::vector< std::string > & | getTableNames () const |
C_FLOAT64 | getTimeForStep (int step) const |
CVector< C_FLOAT64 > | getVec_TimeScale (int step) |
virtual bool | isValidProblem (const CCopasiProblem *pProblem) |
void | setProblem (CTSSAProblem *problem) |
void | setVectors (int slowMode) |
virtual | ~CTSSAMethod () |
Public Member Functions inherited from CCopasiMethod | |
CCopasiMethod (const CCopasiMethod &src, const CDataContainer *pParent) | |
virtual void | clearCallBack () |
const CProcessReportLevel & | getCallBack () const |
CMathContainer * | getMathContainer () const |
const CTaskEnum::Method & | getSubType () const |
const CTaskEnum::Task & | getType () const |
virtual void | load (CReadConfig &configBuffer, CReadConfig::Mode mode=CReadConfig::SEARCH) |
CCopasiMethod & | operator= (const CCopasiMethod &rhs) |
virtual void | print (std::ostream *ostream) const |
virtual bool | setCallBack (CProcessReportLevel callBack) |
void | setMathContainer (CMathContainer *pContainer) |
virtual | ~CCopasiMethod () |
Public Member Functions inherited from CCopasiParameterGroup | |
bool | addGroup (const std::string &name) |
void | addParameter (CCopasiParameter *pParameter) |
bool | addParameter (const CCopasiParameter ¶meter) |
bool | addParameter (const std::string &name, const CCopasiParameter::Type type, const CCopasiParameter::UserInterfaceFlag &flag=CCopasiParameter::UserInterfaceFlag::All) |
template<class CType > | |
bool | addParameter (const std::string &name, const CCopasiParameter::Type type, const CType &value, const CCopasiParameter::UserInterfaceFlag &flag=CCopasiParameter::UserInterfaceFlag::All) |
virtual bool | applyData (const CData &data, CUndoData::CChangeSet &changes) |
CCopasiParameterGroup * | assertGroup (const std::string &name, const CCopasiParameter::UserInterfaceFlag &flag=CCopasiParameter::UserInterfaceFlag::All) |
template<class CType > | |
CType * | assertParameter (const std::string &name, const CCopasiParameter::Type type, const CType &defaultValue, const CCopasiParameter::UserInterfaceFlag &flag=CCopasiParameter::UserInterfaceFlag::All) |
index_iterator | beginIndex () const |
const_name_iterator | beginName () const |
CCopasiParameterGroup (const CCopasiParameterGroup &src, const CDataContainer *pParent=NULL) | |
CCopasiParameterGroup (const std::string &name, const CDataContainer *pParent=NO_PARENT, const std::string &objectType="ParameterGroup") | |
void | clear () |
virtual void | createUndoData (CUndoData &undoData, const CUndoData::Type &type, const CData &oldData=CData(), const CCore::Framework &framework=CCore::Framework::ParticleNumbers) const |
index_iterator | endIndex () const |
const_name_iterator | endName () const |
CCopasiParameterGroup & | getElementTemplates () |
const CCopasiParameterGroup & | getElementTemplates () const |
CCopasiParameterGroup * | getGroup (const size_t &index) |
const CCopasiParameterGroup * | getGroup (const size_t &index) const |
CCopasiParameterGroup * | getGroup (const std::string &name) |
const CCopasiParameterGroup * | getGroup (const std::string &name) const |
virtual size_t | getIndex (const CDataObject *pObject) const |
size_t | getIndex (const std::string &name) const |
std::string | getKey (const size_t &index) const |
std::string | getKey (const std::string &name) const |
virtual const std::string & | getName (const size_t &index) const |
virtual const CObjectInterface * | getObject (const CCommonName &cn) const |
CCopasiParameter * | getParameter (const size_t &index) |
const CCopasiParameter * | getParameter (const size_t &index) const |
CCopasiParameter * | getParameter (std::string name) |
const CCopasiParameter * | getParameter (std::string name) const |
CCopasiParameter::Type | getType (const size_t &index) const |
CCopasiParameter::Type | getType (const std::string &name) const |
std::string | getUniqueParameterName (const CCopasiParameter *pParameter) const |
template<class CType > | |
CType & | getValue (const size_t &index) |
template<class CType > | |
const CType & | getValue (const size_t &index) const |
template<class CType > | |
CType & | getValue (const std::string &name) |
template<class CType > | |
const CType & | getValue (const std::string &name) const |
bool | haveTemplate () const |
virtual CUndoObjectInterface * | insert (const CData &data) |
CCopasiParameterGroup & | operator= (const CCopasiParameterGroup &rhs) |
virtual bool | remove (CDataObject *pObject) |
bool | removeParameter (CCopasiParameter *pParameter) |
bool | removeParameter (const size_t &index) |
bool | removeParameter (const std::string &name) |
virtual void | setUserInterfaceFlag (const UserInterfaceFlag &flag) |
template<class CType > | |
bool | setValue (const size_t &index, const CType &value) |
template<class CType > | |
bool | setValue (const std::string &name, const CType &value) |
size_t | size (const UserInterfaceFlag &require=UserInterfaceFlag::None, const UserInterfaceFlag &exclude=UserInterfaceFlag::None) const |
bool | swap (const size_t &iFrom, const size_t &iTo) |
bool | swap (index_iterator &from, index_iterator &to) |
virtual CData | toData () const |
virtual void | updateIndex (const size_t &index, const CUndoObjectInterface *pUndoObject) |
virtual | ~CCopasiParameterGroup () |
Public Member Functions inherited from CCopasiParameter | |
CCopasiParameter (const CCopasiParameter &src, const CDataContainer *pParent) | |
CCopasiParameter (const std::string &name, const Type &type, const void *pValue=NULL, const CDataContainer *pParent=NO_PARENT, const std::string &objectType="Parameter") | |
virtual CCommonName | getCN () const override |
template<class CType > | |
const CType & | getDefault () const |
virtual const std::string & | getKey () const override |
virtual std::string | getObjectDisplayName () const override |
const CCopasiParameter::Type & | getType () const |
const UserInterfaceFlag & | getUserInterfaceFlag () const |
template<class CType > | |
std::vector< std::pair< CType, CType > > & | getValidValues () |
template<class CType > | |
const std::vector< std::pair< CType, CType > > & | getValidValues () const |
void * | getValidValuesPointer () const |
template<class CType > | |
CType & | getValue () |
template<class CType > | |
const CType & | getValue () const |
virtual void * | getValuePointer () const override |
CDataObject * | getValueReference () const |
bool | hasValidValues () const |
bool | isBasic () const |
bool | isDefault () const |
bool | isEditable () const |
bool | isUnsupported () const |
bool | isValidValue (const bool &value) const |
bool | isValidValue (const C_FLOAT64 &value) const |
bool | isValidValue (const C_INT32 &value) const |
bool | isValidValue (const CCommonName &value) const |
template<class CType > | |
bool | isValidValue (const CType &) const |
bool | isValidValue (const std::string &value) const |
bool | isValidValue (const std::vector< CCopasiParameter * > &value) const |
bool | isValidValue (const unsigned C_INT32 &value) const |
CCopasiParameter & | operator= (const CCopasiParameter &rhs) |
template<class CType > | |
bool | setDefault (const CType &defaultValue) |
bool | setDefault (const std::vector< CCopasiParameter * > &defaultValue) |
virtual bool | setObjectParent (const CDataContainer *pParent) override |
template<class CType , class Enum > | |
bool | setValidValues (const CEnumAnnotation< CType, Enum > &validValues) |
template<class CType > | |
bool | setValidValues (const std::vector< std::pair< CType, CType > > &validValues) |
template<class CType > | |
bool | setValue (const CType &value) |
bool | setValue (const std::vector< CCopasiParameter * > &value) |
virtual | ~CCopasiParameter () |
Public Member Functions inherited from CDataContainer | |
virtual bool | add (CDataObject *pObject, const bool &adopt=true) |
virtual bool | appendDeletedDependentData (CUndoData &undoData) const |
CDataContainer (const CDataContainer &src, const CDataContainer *pParent) | |
CDataContainer (const std::string &name, const CDataContainer *pParent=NO_PARENT, const std::string &type="CN", const CFlags< Flag > &flag=CFlags< Flag >::None) | |
virtual std::string | getChildObjectUnits (const CDataObject *pObject) const |
void | getDescendants (CDataObject::DataObjectSet &descendants, const bool &recursive=false) const |
virtual objectMap & | getObjects () |
virtual const objectMap & | getObjects () const |
virtual const std::string | getUnits () const override |
virtual const CDataObject * | getValueObject () const override |
void | objectRenamed (CDataObject *pObject, const std::string &oldName) |
virtual | ~CDataContainer () |
Public Member Functions inherited from CDataObject | |
void | addIssue (const CIssue &issue) |
void | addReference (const CDataContainer *pReference) |
virtual void | calculateValue () override |
CDataObject (const CDataObject &src, const CDataContainer *pParent=NULL) | |
virtual void | destruct () override |
virtual const CDataObject * | getDataObject () const override |
CDataContainer * | getObjectAncestor (const std::string &type) const |
CDataModel * | getObjectDataModel () const |
const CObjectInterface * | getObjectFromCN (const CCommonName &cn) const |
const std::string & | getObjectName () const |
CDataContainer * | getObjectParent () const |
const std::string & | getObjectType () const |
virtual const CObjectInterface::ObjectSet & | getPrerequisites () const override |
virtual const CValidity & | getValidity () const override |
bool | hasFlag (const Flag &flag) const |
virtual bool | isPrerequisiteForContext (const CObjectInterface *pObject, const CCore::SimulationContextFlag &context, const CObjectInterface::ObjectSet &changedObjects) const override |
bool | prerequisitsContains (const DataObjectSet &objects) const |
void | removeIssue (const CIssue &issue) |
void | removeReference (const CDataContainer *pReference) |
bool | setObjectName (const std::string &name) |
void | validityChanged (const CValidity &changedValidity) override |
void | validityRemoved (const CValidity &changedValidity) |
virtual | ~CDataObject () |
Public Member Functions inherited from CObjectInterface | |
CObjectInterface () | |
CObjectInterface (const CObjectInterface &src) | |
virtual | ~CObjectInterface () |
Public Member Functions inherited from CUndoObjectInterface | |
CUndoObjectInterface () | |
CUndoObjectInterface (const CUndoObjectInterface &src) | |
bool | generateUuid () |
const xg::Guid & | getUuid () const |
bool | setUuid (const std::string &uuid) |
bool | setUuid (const xg::Guid &uuid) |
virtual | ~CUndoObjectInterface () |
Protected Member Functions | |
void | basisRefinement (C_INT N, C_INT M, const CMatrix< C_FLOAT64 > &ALA, const 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) |
void | CSPImportanceIndex (C_INT &N, C_FLOAT64 &tauM1, CMatrix< C_FLOAT64 > &Q) |
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 | 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) |
C_INT | isBlockDiagonal (C_INT N, C_INT M, const CMatrix< C_FLOAT64 > &ALA, const C_FLOAT64 &SMALL) |
void | modesAmplitude (C_INT N, const CVector< C_FLOAT64 > &g, const 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, const CMatrix< C_FLOAT64 > &A, const CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &F) |
void | smadd (const CMatrix< C_FLOAT64 > &A, const CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &C, C_INT n1, C_INT n2) |
void | sminverse (C_INT n, const CMatrix< C_FLOAT64 > &A, CMatrix< C_FLOAT64 > &B) |
void | smmult (const CMatrix< C_FLOAT64 > &A, const 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 (const CMatrix< C_FLOAT64 > &A, const CMatrix< C_FLOAT64 > &B, CMatrix< C_FLOAT64 > &C, C_INT n1, C_INT n2) |
void | yCorrection (C_INT &N, C_INT &M, CVector< C_FLOAT64 > &y, CMatrix< C_FLOAT64 > &TAUM, CMatrix< C_FLOAT64 > &F, CMatrix< C_FLOAT64 > &A) |
Protected Member Functions inherited from CTSSAMethod | |
void | calculateDerivatives (C_FLOAT64 *X1, C_FLOAT64 *Y1, bool useReducedModel) |
bool | elevateChildren () |
void | integrationMethodStart () |
void | integrationStep (const double &deltaT) |
void | map_index (C_FLOAT64 *eval_r, C_INT *index, const C_INT &dim) |
void | map_index_desc (C_FLOAT64 *eval_r, C_INT *index, const C_INT &dim) |
void | mat_anal_fast_space (C_INT &slow) |
void | mat_anal_fast_space_thomas (C_INT &slow) |
void | mat_anal_metab (C_INT &slow) |
void | mat_anal_mod (C_INT &slow) |
void | mat_anal_mod_space (C_INT &slow) |
double | orthog (C_INT &number1, C_INT &number2) |
void | schur (C_INT &info) |
void | schur_desc (C_INT &info) |
void | sylvester (C_INT slow, C_INT &info) |
void | update_nid (C_INT *index, C_INT *nid, const C_INT &dim) |
void | update_pid (C_INT *index, C_INT *pid, const C_INT &dim) |
virtual void | updateCurrentTime () |
Protected Member Functions inherited from CCopasiMethod | |
CCopasiMethod (const CCopasiMethod &src) | |
CCopasiMethod (const CDataContainer *pParent, const CTaskEnum::Method &methodType, const CTaskEnum::Task &taskType) | |
virtual void | signalMathContainerChanged () |
Protected Member Functions inherited from CCopasiParameterGroup | |
CCopasiParameterGroup () | |
Protected Member Functions inherited from CCopasiParameter | |
CCopasiParameter (const CCopasiParameter &src) | |
Protected Member Functions inherited from CDataContainer | |
template<class CType > | |
CDataMatrixReference< CType > * | addMatrixReference (const std::string &name, CType &reference, const CFlags< Flag > &flag=CFlags< Flag >::None) |
template<class CType > | |
CDataObjectReference< CType > * | addObjectReference (const std::string &name, CType &reference, const CFlags< Flag > &flag=CFlags< Flag >::None) |
template<class CType > | |
CDataVectorReference< CType > * | addVectorReference (const std::string &name, CType &reference, const CFlags< Flag > &flag=CFlags< Flag >::None) |
CDataContainer (const CDataContainer &src) | |
void | initObjects () |
Protected Member Functions inherited from CDataObject | |
CDataObject () | |
CDataObject (const std::string &name, const CDataContainer *pParent=static_cast< CDataContainer * >((void *) 0), const std::string &type="CN", const CFlags< Flag > &flag=CFlags< Flag >::None) | |
Private Member Functions | |
CCSPMethod () | |
Additional Inherited Members | |
Public Types inherited from CCopasiParameterGroup | |
typedef CDataObjectMap::const_type_iterator< CCopasiParameter > | const_name_iterator |
typedef std::vector< CCopasiParameter * > | elements |
typedef elements::iterator | index_iterator |
typedef CDataObjectMap::type_iterator< CCopasiParameter > | name_iterator |
Public Types inherited from CCopasiParameter | |
enum class | eUserInterfaceFlag { editable , basic , unsupported , __SIZE } |
enum class | Type { DOUBLE = 0 , UDOUBLE , INT , UINT , BOOL , GROUP , STRING , CN , KEY , FILE , EXPRESSION , INVALID , __SIZE } |
typedef CFlags< eUserInterfaceFlag > | UserInterfaceFlag |
Public Types inherited from CDataContainer | |
typedef CDataObjectMap | objectMap |
Public Types inherited from CDataObject | |
typedef std::set< const CDataObject * > | DataObjectSet |
enum | Flag { Container , Vector , Matrix , NameVector , Reference , ValueBool , ValueInt , ValueInt64 , ValueDbl , NonUniqueName , StaticString , ValueString , Separator , DisplayName , ModelEntity , Array , DataModel , Root , Gui , __SIZE } |
Public Types inherited from CObjectInterface | |
typedef std::vector< const CDataContainer * > | ContainerList |
typedef std::set< const CObjectInterface * > | ObjectSet |
Static Public Member Functions inherited from CCopasiParameter | |
static void | allocateValidValues (const Type &type, void *&pValidValues) |
static void | allocateValue (const Type &type, void *&pValue) |
static void | assignValue (const Type &type, void *&pValue, const void *pNewValue) |
static void | deleteValidValues (const Type &type, void *&pValidValues) |
static void | deleteValue (const Type &type, void *&pValue) |
static CCopasiParameter * | fromData (const CData &data, CUndoObjectInterface *pParent) |
Static Public Member Functions inherited from CDataContainer | |
static CDataContainer * | fromData (const CData &data, CUndoObjectInterface *pParent) |
Static Public Member Functions inherited from CDataObject | |
static CDataObject * | fromData (const CData &data, CUndoObjectInterface *pParent) |
static void | sanitizeObjectName (std::string &name) |
Static Public Member Functions inherited from CObjectInterface | |
static const CDataObject * | DataObject (const CObjectInterface *pInterface) |
static CObjectInterface * | GetObjectFromCN (const ContainerList &listOfContainer, const CCommonName &objName) |
Static Public Member Functions inherited from CUndoObjectInterface | |
template<class CType > | |
static CType * | fromData (const CData &, CUndoObjectInterface *) |
Static Public Attributes inherited from CCopasiParameter | |
static const CEnumAnnotation< std::string, Type > | TypeName |
static const CEnumAnnotation< std::string, Type > | XMLType |
Static Public Attributes inherited from CDataContainer | |
static const CObjectInterface::ContainerList | EmptyList |
The CCSPMethod class implements the CSP method.
more information under: http://copasi.org/Support/User_Manual/Methods/Time_Scale_Separation_Methods/CSP/
|
private |
Default constructor.
CCSPMethod::CCSPMethod | ( | const CDataContainer * | pParent, |
const CTaskEnum::Method & | methodType = CTaskEnum::Method::tssCSP , |
||
const CTaskEnum::Task & | taskType = CTaskEnum::Task::tssAnalysis |
||
) |
Specific constructor
const | CDataContainer * pParent |
const | CTaskEnum::Method & methodType (defaulf: tssCSP) |
const | CTaskEnum::Task & taskType (default: tssAnalysis) |
References createAnnotationsM(), and initializeParameter().
CCSPMethod::CCSPMethod | ( | const CCSPMethod & | src, |
const CDataContainer * | pParent | ||
) |
Copy constructor.
const CCSPMethod & | src |
const | CDataContainer * pParent (default: NULL) |
References createAnnotationsM(), and initializeParameter().
|
virtual |
Destructor.
|
protected |
evaluate Jacobian for the current y
|
virtual |
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.
Reimplemented from CTSSAMethod.
References CTSSAMethod::mapTableToName, mFastParticipationIndexTab, mFastReactionPointerNormedTab, mFastReactionPointerTab, mImportanceIndexNormedRowTab, mImportanceIndexTab, mParticipationIndexNormedColumnTab, mParticipationIndexNormedRowTab, mParticipationIndexTab, mRadicalPointerTab, mSlowParticipationIndexTab, pFastParticipationIndexAnn, pFastReactionPointerAnn, pFastReactionPointerNormedAnn, pImportanceIndexAnn, pImportanceIndexNormedRowAnn, pParticipationIndexAnn, pParticipationIndexNormedColumnAnn, pParticipationIndexNormedRowAnn, pRadicalPointerAnn, pSlowParticipationIndexAnn, CDataArray::setDescription(), CDataArray::setDimensionDescription(), CDataArray::setMode(), CDataArray::Strings, CTSSAMethod::tableNames, and CDataArray::Vector.
Referenced by CCSPMethod().
|
protected |
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
References C_FLOAT64, C_INT, CMathContainer::getParticleFluxes(), CMathContainer::getReactions(), CMathContainer::getStoichiometry(), mImportanceIndex, mImportanceIndexNormedRow, CCopasiMethod::mpContainer, mReducedModel, mYerror, CMatrix< CType >::resize(), CVector< CType >::resize(), CVectorCore< CType >::size(), and smmult().
Referenced by cspstep().
CSP output
References CStateTemplate::beginIndependent(), C_INT, CMathContainer::getModel(), CDataObject::getObjectName(), CModel::getReactions(), CModel::getStateTemplate(), mAmplitude, mFastReactionPointer, mImportanceIndex, mParticipationIndex, CCopasiMethod::mpContainer, and mRadicalPointer.
Referenced by cspstep().
|
protected |
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
References C_FLOAT64, C_INT, CMathContainer::getParticleFluxes(), CMathContainer::getReactions(), CMathContainer::getStoichiometry(), mFastParticipationIndex, mParticipationIndex, mParticipationIndexNormedColumn, mParticipationIndexNormedRow, CCopasiMethod::mpContainer, mReducedModel, mSlowParticipationIndex, mYerror, CMatrix< CType >::resize(), CVector< CType >::resize(), and CVectorCore< CType >::size().
Referenced by cspstep().
|
protected |
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
References C_FLOAT64, C_INT, CMathContainer::getReactions(), CMathContainer::getStoichiometry(), mFastReactionPointer, mFastReactionPointerNormed, CCopasiMethod::mpContainer, mRadicalPointer, mReducedModel, CMatrix< CType >::resize(), and CVectorCore< CType >::size().
Referenced by cspstep().
|
protected |
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
References CVectorCore< CType >::array(), basisRefinement(), C_FLOAT64, C_INT, CSPImportanceIndex(), CSPOutput(), CSPParticipationIndex(), CSPradicalPointer(), emptyOutputData(), findCandidatesNumber(), CMetab::getCompartment(), CMathObject::getDataObject(), CModelEntity::getInitialValue(), CMathContainer::getMathObject(), CDataObject::getObjectParent(), CMathContainer::getReactions(), isBlockDiagonal(), mAerror, mAmplitude, MCTSSAMethod, mG, mI, mIter, CTSSAMethod::mJacobian, CTSSAMethod::mJacobian_initial, modesAmplitude(), modesAreExhausted(), CCopasiMethod::mpContainer, CTSSAMethod::mpContainerStateTime, CTSSAMethod::mQ, CTSSAMethod::mR, mRerror, mY, mYerror, CMatrix< CType >::resize(), CVector< CType >::resize(), CTSSAMethod::schur(), CVectorCore< CType >::size(), sminverse(), smmult(), smnorm(), smsubst(), and CCopasiMessage::WARNING.
Referenced by step().
CSP output : empty
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.
References CTSSAMethod::mCurrentStep, CTSSAMethod::mCurrentTime, 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().
|
protected |
find the new number of fast according to the time-scale separation ratio
const CDataArray * CCSPMethod::getFastParticipationIndexAnn | ( | ) | const |
References pFastParticipationIndexAnn.
const CDataArray * CCSPMethod::getFastReactionPointerAnn | ( | ) | const |
References pFastReactionPointerAnn.
const CDataArray * CCSPMethod::getFastReactionPointerNormedAnn | ( | ) | const |
References pFastReactionPointerNormedAnn.
const CDataArray * CCSPMethod::getImportanceIndexAnn | ( | ) | const |
References pImportanceIndexAnn.
const CDataArray * CCSPMethod::getImportanceIndexNormedRowAnn | ( | ) | const |
References pImportanceIndexNormedRowAnn.
const CDataArray * CCSPMethod::getParticipationIndexAnn | ( | ) | const |
References pParticipationIndexAnn.
const CDataArray * CCSPMethod::getParticipationIndexNormedColumnAnn | ( | ) | const |
References pParticipationIndexNormedColumnAnn.
const CDataArray * CCSPMethod::getParticipationIndexNormedRowAnn | ( | ) | const |
References pParticipationIndexNormedRowAnn.
const CDataArray * CCSPMethod::getRadicalPointerAnn | ( | ) | const |
return CArrayAnnotation for visualization in the CQTSSAResultSubWidget
References pRadicalPointerAnn.
const CDataArray * CCSPMethod::getSlowParticipationIndexAnn | ( | ) | const |
References pSlowParticipationIndexAnn.
|
virtual |
initialize output for the result elements, this method initializes the output elements so that an output handler can be used afterwards
Predefine the CArrayAnnotation for plots
Reimplemented from CTSSAMethod.
References CDataVector< CType >::add(), CStateTemplate::beginIndependent(), CMathContainer::getModel(), CModel::getNumDependentReactionMetabs(), CModel::getNumIndependentReactionMetabs(), CModel::getReactions(), CModel::getStateTemplate(), mFastParticipationIndexTab, mImportanceIndexTab, CCopasiMethod::mpContainer, mReducedModel, mSlowParticipationIndexTab, pFastParticipationIndexAnn, pImportanceIndexAnn, pSlowParticipationIndexAnn, CDataArray::resize(), CMatrix< CType >::resize(), CDataArray::setAnnotationString(), CDataArray::setCopasiVector(), and CDataVector< CType >::size().
|
virtual |
Intialize the method parameter
Reimplemented from CTSSAMethod.
References CCopasiParameterGroup::assertParameter(), CCopasiParameter::BOOL, C_FLOAT64, C_INT32, CTSSAMethod::initializeParameter(), CCopasiParameter::UDOUBLE, and CCopasiParameter::UINT.
Referenced by CCSPMethod().
|
protected |
compute amplitudes of fast and slow modes
References C_INT.
Referenced by cspstep(), and modesAreExhausted().
|
protected |
check : whether each of the analysed M modes is exhausted
References C_FLOAT64, C_INT, modesAmplitude(), and mYerror.
Referenced by cspstep().
|
virtual |
print of the standart report sequence for ILDM Method
std::ostream | * ostream |
Reimplemented from CCopasiMethod.
References CStateTemplate::beginIndependent(), C_INT, C_INT32, CMathContainer::getModel(), CDataObject::getObjectName(), CModel::getReactions(), CModel::getStateTemplate(), CTSSAMethod::getTimeForStep(), CModel::getTimeUnitName(), CTSSAMethod::mDim, CCopasiMethod::mpContainer, mVec_mImportanceIndex, mVec_mParticipationIndex, mVec_mRadicalPointer, CTSSAMethod::mVec_SlowModes, CTSSAMethod::mVec_TimeScale, and CDataVector< CType >::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.
References CDataVector< CType >::add(), CStateTemplate::beginIndependent(), C_INT32, CMathContainer::getModel(), CModel::getNumDependentReactionMetabs(), CModel::getNumIndependentReactionMetabs(), CModel::getReactions(), CModel::getStateTemplate(), CTSSAMethod::mDim, mFastParticipationIndexTab, mFastReactionPointerNormedTab, mFastReactionPointerTab, mImportanceIndexNormedRowTab, mImportanceIndexTab, mParticipationIndexNormedColumnTab, mParticipationIndexNormedRowTab, mParticipationIndexTab, CCopasiMethod::mpContainer, mRadicalPointerTab, mReducedModel, mSlowParticipationIndexTab, 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, pFastParticipationIndexAnn, pFastReactionPointerAnn, pFastReactionPointerNormedAnn, pImportanceIndexAnn, pImportanceIndexNormedRowAnn, pParticipationIndexAnn, pParticipationIndexNormedColumnAnn, pParticipationIndexNormedRowAnn, pRadicalPointerAnn, pSlowParticipationIndexAnn, CDataArray::resize(), CMatrix< CType >::resize(), CDataArray::setAnnotationString(), CDataArray::setCopasiVector(), CDataVector< CType >::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
References C_INT, CMathContainer::getReactions(), CTSSAMethod::mCurrentStep, CTSSAMethod::mDim, mFastParticipationIndex, mFastReactionPointer, mFastReactionPointerNormed, mImportanceIndex, mImportanceIndexNormedRow, mParticipationIndex, mParticipationIndexNormedColumn, mParticipationIndexNormedRow, CCopasiMethod::mpContainer, CTSSAMethod::mR, mRadicalPointer, mSlowParticipationIndex, 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 CVectorCore< CType >::size().
Referenced by step().
void CCSPMethod::setVectorsToNaN | ( | ) |
set vectors to NaN when the reduction was not possible
References C_INT, CMathContainer::getReactions(), CTSSAMethod::mCurrentStep, CTSSAMethod::mDim, CCopasiMethod::mpContainer, CTSSAMethod::mR, 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 CVectorCore< CType >::size().
Referenced by step().
|
protected |
Addition of submatrix
References C_INT.
|
protected |
Inverse submatrix
References CMatrix< CType >::array(), C_INT, and dgesv_().
Referenced by cspstep().
|
protected |
CSP related staff Multiplication of submatrix
References C_INT.
Referenced by CSPImportanceIndex(), cspstep(), and yCorrection().
|
virtual |
This instructs the method to prepare for integration starting with the initialState given.
Reimplemented from CTSSAMethod.
References C_INT, emptyVectors(), CMathContainer::getCountDependentSpecies(), CMathContainer::getModel(), CModel::getNumber2QuantityFactor(), CMathContainer::getReactions(), CVectorCore< CType >::initialize(), CTSSAMethod::integrationMethodStart(), mAerror, mAmplitude, mB, mCSPbasis, CTSSAMethod::mDim, mEps, mFastParticipationIndex, mFastParticipationIndexTab, mFastReactionPointer, mFastReactionPointerNormed, mG, mI, mImportanceIndex, mImportanceIndexNormedRow, mImportanceIndexTab, mIter, mParticipationIndex, mParticipationIndexNormedColumn, mParticipationIndexNormedRow, CCopasiMethod::mpContainer, CTSSAMethod::mpFirstSpecies, CTSSAMethod::mpFirstSpeciesRate, CTSSAMethod::mpLsodaMethod, mRadicalPointer, mReducedModel, mRerror, mSetVectors, mSlowParticipationIndex, mSlowParticipationIndexTab, mTStep, mVec_mFastParticipationIndex, mVec_mImportanceIndex, mVec_mSlowParticipationIndex, mY, mYerror, pFastParticipationIndexAnn, pImportanceIndexAnn, pSlowParticipationIndexAnn, CDataArray::resize(), CDataVector< CType >::resize(), CMatrix< CType >::resize(), CVector< CType >::resize(), CDataArray::setCopasiVector(), CCopasiParameterGroup::setValue(), CVectorCore< CType >::size(), CTSSAMethod::start(), and CMathContainer::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.
References C_INT, CMathContainer::calculateJacobian(), cspstep(), CTSSAMethod::integrationStep(), mB, CTSSAMethod::mCurrentStep, CTSSAMethod::mDim, CTSSAMethod::mJacobian, CCopasiMethod::mpContainer, mReducedModel, mTStep, CMatrix< CType >::resize(), setAnnotationM(), setVectors(), setVectorsToNaN(), CTSSAMethod::updateCurrentTime(), and CMathContainer::updateSimulatedValues().
Referenced by setAnnotationM().
|
protected |
correct for the contribution of the fast time-scales to y
References C_INT, CMatrix< CType >::resize(), CVector< CType >::resize(), and smmult().
|
protected |
Amplitudes of reaction modes (column vector);
Referenced by CSPOutput(), cspstep(), emptyOutputData(), and start().
|
protected |
indicates whether the basis vectors B were computed on the time step (T - delta T)
Referenced by start().
|
protected |
A value related to a measure of the time scale separation of the fast and slow modes
Referenced by findCandidatesNumber(), and start().
Referenced by CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Referenced by createAnnotationsM(), initializeOutput(), 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
Referenced by CSPOutput(), CSPradicalPointer(), emptyOutputData(), setVectors(), and start().
Referenced by CSPradicalPointer(), emptyOutputData(), setVectors(), and start().
Referenced by createAnnotationsM(), and setAnnotationM().
Referenced by createAnnotationsM(), and setAnnotationM().
|
protected |
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
Referenced by CSPImportanceIndex(), CSPOutput(), emptyOutputData(), setVectors(), and start().
Referenced by CSPImportanceIndex(), emptyOutputData(), setVectors(), and start().
Referenced by createAnnotationsM(), and setAnnotationM().
Referenced by createAnnotationsM(), initializeOutput(), setAnnotationM(), and start().
|
protected |
Participation Index : is a mesure of participation of the r-th elementary reaction to the balancing act of the i-th mode (matrix)
Referenced by CSPOutput(), CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Referenced by CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Referenced by createAnnotationsM(), and setAnnotationM().
Referenced by CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Referenced by createAnnotationsM(), and setAnnotationM().
Referenced by createAnnotationsM(), and setAnnotationM().
Radical Pointer: whenever is not a small number, species k is said to be CSP radical
Referenced by CSPOutput(), CSPradicalPointer(), emptyOutputData(), setVectors(), and start().
input for every CArraAnnotations contain data for single stepcalculation
Referenced by createAnnotationsM(), and setAnnotationM().
|
protected |
CSP related staff
Referenced by CSPImportanceIndex(), CSPParticipationIndex(), CSPradicalPointer(), initializeOutput(), setAnnotationM(), start(), and step().
|
protected |
Referenced by CSPParticipationIndex(), emptyOutputData(), setVectors(), and start().
Referenced by createAnnotationsM(), initializeOutput(), setAnnotationM(), and start().
|
protected |
An alternative value related to a mesure of the time scale separation of the fast and slow modes
Referenced by emptyVectors(), setAnnotationM(), setVectors(), setVectorsToNaN(), and start().
Referenced by emptyVectors(), setAnnotationM(), setVectors(), and setVectorsToNaN().
Referenced by emptyVectors(), setAnnotationM(), setVectors(), and setVectorsToNaN().
Referenced by emptyVectors(), printResult(), setAnnotationM(), setVectors(), setVectorsToNaN(), and start().
Referenced by emptyVectors(), setAnnotationM(), setVectors(), and setVectorsToNaN().
Referenced by emptyVectors(), printResult(), setAnnotationM(), setVectors(), and setVectorsToNaN().
Referenced by emptyVectors(), setAnnotationM(), setVectors(), and setVectorsToNaN().
Referenced by emptyVectors(), setAnnotationM(), setVectors(), and setVectorsToNaN().
vectors contain whole data for all calculation steps
Referenced by emptyVectors(), printResult(), setAnnotationM(), setVectors(), and setVectorsToNaN().
Referenced by emptyVectors(), setAnnotationM(), setVectors(), setVectorsToNaN(), and start().
|
protected |
An error vector build on the basis of the solution vector
Referenced by CSPImportanceIndex(), CSPParticipationIndex(), cspstep(), modesAreExhausted(), and start().
|
protected |
Referenced by createAnnotationsM(), getFastParticipationIndexAnn(), initializeOutput(), setAnnotationM(), and start().
|
protected |
Referenced by createAnnotationsM(), getFastReactionPointerAnn(), and setAnnotationM().
|
protected |
Referenced by createAnnotationsM(), getFastReactionPointerNormedAnn(), and setAnnotationM().
|
protected |
Referenced by createAnnotationsM(), getImportanceIndexAnn(), initializeOutput(), setAnnotationM(), and start().
|
protected |
Referenced by createAnnotationsM(), getImportanceIndexNormedRowAnn(), and setAnnotationM().
|
protected |
Referenced by createAnnotationsM(), getParticipationIndexAnn(), and setAnnotationM().
|
protected |
Referenced by createAnnotationsM(), getParticipationIndexNormedColumnAnn(), and setAnnotationM().
|
protected |
Referenced by createAnnotationsM(), getParticipationIndexNormedRowAnn(), and setAnnotationM().
|
protected |
CArraAnnotations for CQTSSAResultSubWidget
Referenced by createAnnotationsM(), getRadicalPointerAnn(), and setAnnotationM().
|
protected |
Referenced by createAnnotationsM(), getSlowParticipationIndexAnn(), initializeOutput(), setAnnotationM(), and start().