COPASI API
4.40.278
|
The CTSSAMethod class is the base class for all time scale separation analysis methods. More...
#include <CTSSAMethod.h>
Public Member Functions | |
virtual void | createAnnotationsM () |
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 void | initializeOutput () |
virtual void | initializeParameter () |
virtual bool | isValidProblem (const CCopasiProblem *pProblem) |
virtual bool | setAnnotationM (size_t s)=0 |
void | setProblem (CTSSAProblem *problem) |
void | setVectors (int slowMode) |
virtual void | start () |
virtual void | step (const double &deltaT) |
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 void | printResult (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 | 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 | |
CTSSAMethod () | |
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 CTSSAMethod class is the base class for all time scale separation analysis methods.
|
private |
Default constructor.
CTSSAMethod::CTSSAMethod | ( | const CDataContainer * | pParent, |
const CTaskEnum::Method & | methodType, | ||
const CTaskEnum::Task & | taskType = CTaskEnum::Task::tssAnalysis |
||
) |
Specific constructor
const | CDataContainer * pParent |
const | CTaskEnum::Method & methodType |
const | CTaskEnum::Task & taskType (default: tssAnalysis) |
CTSSAMethod class. This class describes the interface to all time scale separation analysis methods. The various method like ILDM or CSP have to be derived from this class. Default constructor.
CTSSAMethod::CTSSAMethod | ( | const CTSSAMethod & | src, |
const CDataContainer * | pParent | ||
) |
Copy constructor.
const CTSSAMethod & | src |
const | CDataContainer * pParent (default: NULL) |
Copy constructor.
const CTSSAMethod & | src |
|
virtual |
Destructor.
References mpLsodaMethod, and pdelete.
|
protected |
References C_FLOAT64, CMathContainer::getValues(), mConcentration2Number, mDim, mNumber2Concentration, CCopasiMethod::mpContainer, mpFirstSpecies, mpFirstSpeciesRate, CMathContainer::setValues(), and CMathContainer::updateSimulatedValues().
Referenced by CILDMMethod::deuflhard(), CILDMModifiedMethod::deuflhard_metab(), CILDMMethod::newton(), CILDMModifiedMethod::newton_for_timestep(), CILDMModifiedMethod::newton_new(), and CILDMModifiedMethod::step().
|
virtual |
create the CArraAnnotations for every ILDM-tab in the CQTSSAResultSubWidget input for each CArraAnnotations is a seperate CMatrix
Create the CArraAnnotations for every ILDM-tab in the CQTSSAResultSubWidget. Input for each CArraAnnotations is a separate CMatrix.
Reimplemented in CILDMModifiedMethod, CILDMMethod, and CCSPMethod.
|
protectedvirtual |
This methods must be called to elevate subgroups to derived objects. The default implementation does nothing.
Reimplemented from CCopasiParameterGroup.
References initializeParameter().
void CTSSAMethod::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.
const int & CTSSAMethod::getCurrentStep | ( | ) | const |
Retrieve the current step
References mCurrentStep.
const CDataArray * CTSSAMethod::getTable | ( | const std::string & | name | ) |
References mapTableToName.
const std::vector< std::string > & CTSSAMethod::getTableNames | ( | ) | const |
References tableNames.
C_FLOAT64 CTSSAMethod::getTimeForStep | ( | int | step | ) | const |
References mCurrentTime, and step().
Referenced by CCSPMethod::printResult(), and CILDMModifiedMethod::printResult().
return mVec_TimeScale for visualization in ILDM-tab in the CQTSSAResultSubWidget
References mVec_TimeScale, and step().
|
virtual |
initialize output for the result elements, this method initializes the output elements so that an output handler can be used afterwards
Reimplemented in CILDMModifiedMethod, CILDMMethod, and CCSPMethod.
Referenced by CTSSATask::initialize(), and CTSSATask::updateMatrices().
|
virtual |
Initialize the method parameter
Reimplemented in CILDMModifiedMethod, CILDMMethod, and CCSPMethod.
References C_FLOAT64, C_INT32, CMethodFactory::create(), CTaskEnum::deterministic, mpLsodaMethod, CCopasiParameterGroup::setValue(), and CTaskEnum::timeCourse.
Referenced by elevateChildren(), CCSPMethod::initializeParameter(), CILDMMethod::initializeParameter(), and CILDMModifiedMethod::initializeParameter().
|
protected |
This instructs the method to prepare for integration starting with the initialState given.
References mpLsodaMethod, and CLsodaMethod::start().
Referenced by CCSPMethod::start(), CILDMMethod::start(), and CILDMModifiedMethod::start().
|
protected |
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 |
References mpLsodaMethod, and CLsodaMethod::step().
Referenced by CCSPMethod::step(), CILDMMethod::step(), and CILDMModifiedMethod::step().
|
virtual |
Check if the method is suitable for this problem
Reimplemented from CCopasiMethod.
References CModelEntity::ASSIGNMENT, CDataVector< CType >::begin(), CDataVector< CType >::end(), CCopasiMessage::ERROR, fatalError, CModel::getCompartments(), CModel::getEvents(), CModel::getMetabolites(), CMathContainer::getModel(), CModel::getModelValues(), CModel::getNumAssignmentMetabs(), CModel::getNumODEMetabs(), CCopasiMethod::getSubType(), CCopasiMethod::isValidProblem(), MCTSSAMethod, CCopasiMethod::mpContainer, CModelEntity::ODE, CDataVector< CType >::size(), CCopasiParameterGroup::size(), CTaskEnum::tssCSP, CTaskEnum::tssILDM, and CTaskEnum::tssILDMModified.
This is the test only. We try to reorder the Schur matrix from slowest mode (on the bottom) to the fastest (on the top) The function map_index_desc() is used on the end of schur() in order to produce the orthogonal slow space
References C_FLOAT64, C_INT, and min.
Referenced by schur_desc().
|
protected |
MAT_ANAL_fast_space: mathematical analysis of matrices mTdInverse for post-analysis
References C_FLOAT64, C_INT, mDim, mTdInverse, mVfast_space, and CMatrix< CType >::resize().
Referenced by CILDMModifiedMethod::deuflhard_metab(), CILDMMethod::step(), and CILDMModifiedMethod::step().
|
protected |
MAT_ANAL_fast_space: mathematical analysis of matrices mTdInverse for post-analysis
References C_FLOAT64, C_INT, mDim, mNumber2Concentration, mQ, mVfast_space, mY_initial, and CVector< CType >::resize().
|
protected |
MAT_ANAL_METAB: mathematical analysis of matrices mTd for post-analysis
References C_INT, mDim, mTd, mVslow_metab, and CVector< CType >::resize().
Referenced by CILDMMethod::step(), and CILDMModifiedMethod::step().
|
protected |
This is not very elegant solution. But I don't know the better one.
MAT_ANAL_MOD: mathematical analysis of matrices mTdInverse for post-analysis
References C_INT, mDim, mTdInverse, mVslow, CMatrix< CType >::resize(), and CVector< CType >::resize().
Referenced by CILDMMethod::step(), and CILDMModifiedMethod::step().
|
protected |
MAT_ANAL_MOD_space: mathematical analysis of matrices mTdInverse for post-analysis
References C_FLOAT64, C_INT, mDim, mTdInverse, mVslow_space, and CMatrix< CType >::resize().
Referenced by CILDMMethod::step(), and CILDMModifiedMethod::step().
References C_FLOAT64, C_INT, mDim, and mTdInverse.
Referenced by CILDMMethod::step().
|
protected |
SCHUR: Schur Decomposition of Jacobian (reordered). Output: mQ - transformation matrix mR - block upper triangular matrix (with ordered eigenvalues)
References CVectorCore< CType >::array(), C_INT, dgees_(), dtrexc_(), fatalError, CCopasiMethod::getSubType(), map_index(), mDim, mJacobian_initial, mQ, mR, CVector< CType >::resize(), CTaskEnum::tssCSP, CTaskEnum::tssILDM, CTaskEnum::tssILDMModified, update_nid(), and update_pid().
Referenced by CCSPMethod::cspstep(), CILDMMethod::step(), and CILDMModifiedMethod::step().
|
protected |
SCHUR_desc: Schur Decomposition of Jacobian (reordered). Output: mQ_desc - transformation matrix mR_desc - block upper triangular matrix (with ordered eigenvalues)
References CVectorCore< CType >::array(), C_INT, dgees_(), dtrexc_(), map_index_desc(), mDim, mJacobian_initial, mQ_desc, mR_desc, CVector< CType >::resize(), update_nid(), and update_pid().
Referenced by CILDMMethod::step().
|
pure virtual |
Implemented in CILDMModifiedMethod, CILDMMethod, and CCSPMethod.
void CTSSAMethod::setProblem | ( | CTSSAProblem * | problem | ) |
Set a pointer to the problem. This method is used by CTSSA
CTSSAProblem * | problem |
References mpProblem.
Referenced by CTSSATask::initialize().
void CTSSAMethod::setVectors | ( | int | slowMode | ) |
upgrade all vectors with values from actually calculalion for current step
upgrade all vectors with values from actually calculation for current step
|
virtual |
This instructs the method to prepare for integration
This instructs the method to calculate a a time step of deltaT starting with the initialState given. The new state (after deltaT) is expected in the current state. The return value is the actual time step taken.
Reimplemented in CILDMModifiedMethod, CILDMMethod, and CCSPMethod.
References CVectorCore< CType >::array(), CModel::getCompartments(), CMathContainer::getCountFixedEventTargets(), CMathContainer::getCountIndependentSpecies(), CMathContainer::getCountODEs(), CMathContainer::getModel(), CModel::getNumber2QuantityFactor(), CModel::getQuantity2NumberFactor(), CMathContainer::getRate(), CMathContainer::getState(), CVectorCore< CType >::initialize(), mConcentration2Number, mContainerState, mDim, mNumber2Concentration, CCopasiMethod::mpContainer, mpContainerStateTime, mpFirstSpecies, mpFirstSpeciesRate, mpLsodaMethod, and CCopasiMethod::setMathContainer().
Referenced by CTSSATask::processStart(), CCSPMethod::start(), CILDMMethod::start(), and CILDMModifiedMethod::start().
|
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 |
This instructs the method to calculate a 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 time step taken.
const double & | deltaT |
Reimplemented in CILDMModifiedMethod, CILDMMethod, and CCSPMethod.
Referenced by getTimeForStep(), getVec_TimeScale(), and CTSSATask::processStep().
SYLVESTER: Solution of Sylvester equation for given slow, mQ,mR Output: mTd, mTdinverse, mQz (is used later for Newton iterations)
References CVectorCore< CType >::array(), C_FLOAT64, C_INT, dtrsyl_(), mDim, mJacobian_initial, mQ, mQz, mR, mTd, mTdInverse, CMatrix< CType >::resize(), and CVector< CType >::resize().
Referenced by CILDMMethod::step().
UPDATE_NID: used for sorting of SchurDecompostion
References C_INT.
Referenced by schur(), and schur_desc().
UPDATE_PID: used for sorting of SchurDecompostion
References C_INT.
Referenced by schur(), and schur_desc().
|
protectedvirtual |
stores the current time in the time vector
References mCurrentStep, mCurrentTime, and mpContainerStateTime.
Referenced by CCSPMethod::step(), CILDMMethod::step(), and CILDMModifiedMethod::step().
|
protected |
Referenced by CILDMMethod::deuflhard(), CILDMMethod::newton(), and CILDMMethod::step().
|
protected |
Referenced by calculateDerivatives(), and start().
|
protected |
Referenced by start().
|
protected |
stepcounter
Referenced by CCSPMethod::emptyVectors(), CILDMMethod::emptyVectors(), CILDMModifiedMethod::emptyVectors(), getCurrentStep(), CCSPMethod::setVectors(), CILDMMethod::setVectors(), CILDMModifiedMethod::setVectors(), CCSPMethod::setVectorsToNaN(), CCSPMethod::step(), CILDMMethod::step(), CILDMModifiedMethod::step(), and updateCurrentTime().
|
protected |
Referenced by CCSPMethod::emptyVectors(), getTimeForStep(), and updateCurrentTime().
|
protected |
Referenced by calculateDerivatives(), CILDMMethod::deuflhard(), CILDMModifiedMethod::deuflhard_metab(), mat_anal_fast_space(), mat_anal_fast_space_thomas(), mat_anal_metab(), mat_anal_mod(), mat_anal_mod_space(), CILDMMethod::newton(), CILDMModifiedMethod::newton_for_timestep(), CILDMModifiedMethod::newton_new(), orthog(), CCSPMethod::printResult(), CILDMModifiedMethod::printResult(), schur(), schur_desc(), CCSPMethod::setAnnotationM(), CILDMMethod::setAnnotationM(), CILDMModifiedMethod::setAnnotationM(), CCSPMethod::setVectors(), CILDMMethod::setVectors(), CILDMModifiedMethod::setVectors(), CCSPMethod::setVectorsToNaN(), CCSPMethod::start(), CILDMMethod::start(), CILDMModifiedMethod::start(), start(), CCSPMethod::step(), CILDMMethod::step(), CILDMModifiedMethod::step(), and sylvester().
|
protected |
Tolerance for Deuflhard criterion
Referenced by CILDMMethod::deuflhard(), CILDMModifiedMethod::deuflhard_metab(), CILDMMethod::start(), CILDMModifiedMethod::start(), and CILDMModifiedMethod::step().
|
protected |
Referenced by CILDMMethod::deuflhard(), and CILDMMethod::step().
Jacobian matrix
Referenced by CCSPMethod::cspstep(), CCSPMethod::step(), CILDMMethod::step(), and CILDMModifiedMethod::step().
Jacobian matrix at initial point
Referenced by CCSPMethod::cspstep(), CILDMModifiedMethod::newton_for_timestep(), CILDMModifiedMethod::newton_new(), schur(), schur_desc(), CILDMMethod::step(), CILDMModifiedMethod::step(), and sylvester().
|
protected |
|
protected |
Referenced by CCSPMethod::cspstep(), start(), CILDMMethod::step(), CILDMModifiedMethod::step(), and updateCurrentTime().
|
protected |
Referenced by calculateDerivatives(), CCSPMethod::start(), start(), CILDMMethod::step(), and CILDMModifiedMethod::step().
|
protected |
Referenced by calculateDerivatives(), CCSPMethod::start(), start(), CILDMMethod::step(), and CILDMModifiedMethod::step().
|
protected |
Referenced by initializeParameter(), integrationMethodStart(), integrationStep(), CCSPMethod::start(), start(), and ~CTSSAMethod().
|
protected |
A pointer to the time scale separation analysis problem.
Referenced by setProblem().
Referenced by CCSPMethod::cspstep(), mat_anal_fast_space_thomas(), schur(), CILDMMethod::step(), CILDMModifiedMethod::step(), and sylvester().
Referenced by schur_desc(), and CILDMMethod::step().
Referenced by CILDMMethod::newton(), CILDMMethod::step(), CILDMModifiedMethod::step(), and sylvester().
Referenced by schur_desc(), and CILDMMethod::step().
|
protected |
Referenced by CILDMMethod::step(), and CILDMModifiedMethod::step().
Referenced by CILDMMethod::step(), and CILDMModifiedMethod::step().
|
protected |
vectors contain whole data for all calculationsteps
Referenced by CCSPMethod::emptyVectors(), CILDMMethod::emptyVectors(), CILDMModifiedMethod::emptyVectors(), CCSPMethod::printResult(), CILDMModifiedMethod::printResult(), CCSPMethod::setAnnotationM(), CILDMMethod::setAnnotationM(), CILDMModifiedMethod::setAnnotationM(), CCSPMethod::setVectors(), CILDMMethod::setVectors(), CILDMModifiedMethod::setVectors(), and CCSPMethod::setVectorsToNaN().
Referenced by CCSPMethod::emptyVectors(), CILDMMethod::emptyVectors(), CILDMModifiedMethod::emptyVectors(), getVec_TimeScale(), CCSPMethod::printResult(), CILDMModifiedMethod::printResult(), CCSPMethod::setAnnotationM(), CILDMMethod::setAnnotationM(), CILDMModifiedMethod::setAnnotationM(), CCSPMethod::setVectors(), CILDMMethod::setVectors(), CILDMModifiedMethod::setVectors(), and CCSPMethod::setVectorsToNaN().
|
protected |