COPASI API
4.40.278
|
#include <CTimeSensLsodaMethod.h>
Classes | |
struct | Data |
struct | State |
Public Member Functions | |
virtual void | copySensitivitiesToResultMatrix () |
CTimeSensLsodaMethod (const CDataContainer *pParent, const CTaskEnum::Method &methodType=CTaskEnum::Method::deterministic, const CTaskEnum::Task &taskType=CTaskEnum::Task::timeCourse) | |
CTimeSensLsodaMethod (const CTimeSensLsodaMethod &src, const CDataContainer *pParent) | |
virtual bool | elevateChildren () |
virtual void | evalF (const C_FLOAT64 *t, const C_FLOAT64 *y, C_FLOAT64 *ydot) |
virtual void | evalJ (const C_FLOAT64 *t, const C_FLOAT64 *y, const C_INT *ml, const C_INT *mu, C_FLOAT64 *pd, const C_INT *nRowPD) |
virtual void | evalR (const C_FLOAT64 *t, const C_FLOAT64 *y, const C_INT *nr, C_FLOAT64 *r) |
virtual void | start () |
virtual void | stateChange (const CMath::StateChange &change) |
virtual Status | step (const double &deltaT, const bool &final=false) |
~CTimeSensLsodaMethod () | |
Public Member Functions inherited from CTimeSensMethod | |
CTimeSensMethod (const CDataContainer *pParent, const CTaskEnum::Method &methodType, const CTaskEnum::Task &taskType=CTaskEnum::Task::timeCourse) | |
CTimeSensMethod (const CTimeSensMethod &src, const CDataContainer *pParent) | |
const CVectorCore< C_INT > & | getRoots () const |
void | initializeDerivativesCalculations (bool reduced) |
virtual void | initResult () |
const bool & | integrateReducedModel () const |
virtual bool | isValidProblem (const CCopasiProblem *pProblem) |
void | setProblem (CTimeSensProblem *problem) |
~CTimeSensMethod () | |
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 () |
Static Public Member Functions | |
static void | EvalF (const C_INT *n, const C_FLOAT64 *t, const C_FLOAT64 *y, C_FLOAT64 *ydot) |
static void | EvalJ (const C_INT *n, const C_FLOAT64 *t, const C_FLOAT64 *y, const C_INT *ml, const C_INT *mu, C_FLOAT64 *pd, const C_INT *nRowPD) |
static void | EvalR (const C_INT *n, const C_FLOAT64 *t, const C_FLOAT64 *y, const C_INT *nr, C_FLOAT64 *r) |
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 *) |
Protected Types | |
enum | eRootMasking { NONE = 0 , ALL , DISCRETE } |
Protected Member Functions | |
void | destroyRootMask () |
Protected Member Functions inherited from CTimeSensMethod | |
void | calculate_dAssignments_dPar (CMatrix< C_FLOAT64 > &s) |
void | calculate_dAssignments_dState (CMatrix< C_FLOAT64 > &s, bool reduced) |
void | calculate_dInitialState_dPar (CMatrix< C_FLOAT64 > &s) |
void | calculate_dRate_dPar (CMatrix< C_FLOAT64 > &s, bool reduced) |
void | output (const bool &useMoieties) |
virtual void | signalMathContainerChanged () |
Protected Member Functions inherited from CCopasiMethod | |
CCopasiMethod (const CCopasiMethod &src) | |
CCopasiMethod (const CDataContainer *pParent, const CTaskEnum::Method &methodType, const CTaskEnum::Task &taskType) | |
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 | |
void | createRootMask () |
CTimeSensLsodaMethod () | |
bool | hasStateChanged (const CVectorCore< C_FLOAT64 > &startState) const |
void | initializeParameter () |
void | maskRoots (CVectorCore< C_FLOAT64 > &rootValues) |
CTimeSensMethod::Status | peekAhead () |
void | resetState (State &state) |
void | saveState (State &state, const CTimeSensMethod::Status &status) const |
void | setRootMaskType (const eRootMasking &maskType) |
Private Attributes | |
CVector< C_FLOAT64 > | mAtol |
CVectorCore< bool > | mDiscreteRoots |
CVector< C_FLOAT64 > | mDWork |
std::ostringstream | mErrorMsg |
CVector< C_INT > | mIWork |
C_INT | mJType |
CLSODA | mLSODA |
CLSODAR | mLSODAR |
C_INT | mNumRoots |
C_FLOAT64 * | mpAbsoluteTolerance |
bool | mPeekAheadMode |
unsigned C_INT32 * | mpMaxInternalSteps |
C_FLOAT64 * | mpMaxInternalStepSize |
C_FLOAT64 * | mpRelativeTolerance |
const C_FLOAT64 * | mpYdot |
unsigned C_INT32 | mRootCounter |
CVector< bool > | mRootMask |
State | mSavedState |
C_FLOAT64 | mTargetTime |
C_INT | mTask |
CVector< C_FLOAT64 > | mVariables |
Additional Inherited Members | |
Public Types inherited from CTimeSensMethod | |
enum | Status { FAILURE = -1 , NORMAL = 0 , ROOT = 1 } |
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 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 |
Static Protected Member Functions inherited from CTimeSensMethod | |
static void | printObjectSet (const std::string &s, const CObjectInterface::ObjectSet &os) |
some methods for doing debug output More... | |
static void | printUpdateSeq (const std::string &s, const CCore::CUpdateSequence &us) |
Static Protected Attributes inherited from CTimeSensMethod | |
static const bool | ReducedModel |
|
protected |
|
private |
Constructor.
CTimeSensLsodaMethod::CTimeSensLsodaMethod | ( | const CDataContainer * | pParent, |
const CTaskEnum::Method & | methodType = CTaskEnum::Method::deterministic , |
||
const CTaskEnum::Task & | taskType = CTaskEnum::Task::timeCourse |
||
) |
Specific constructor
const | CDataContainer * pParent |
const | CTaskEnum::Method & methodType (default: deterministic) |
const | CTaskEnum::Task & taskType (default: timeCourse) |
References CTimeSensLsodaMethod::Data::dim, initializeParameter(), mData, and CTimeSensLsodaMethod::Data::pMethod.
CTimeSensLsodaMethod::CTimeSensLsodaMethod | ( | const CTimeSensLsodaMethod & | src, |
const CDataContainer * | pParent | ||
) |
Copy constructor.
const CTimeSensLsodaMethod & | src |
const | CDataContainer * pParent (default: NULL) |
References CTimeSensLsodaMethod::Data::dim, initializeParameter(), mData, and CTimeSensLsodaMethod::Data::pMethod.
CTimeSensLsodaMethod::~CTimeSensLsodaMethod | ( | ) |
Destructor.
References CVectorCore< CType >::array(), and CTimeSensMethod::mRootsFound.
|
virtual |
copies the sensitivity values from the state vector to the (annotated) result matrix
Implements CTimeSensMethod.
References C_FLOAT64, CTimeSensMethod::calculate_dAssignments_dPar(), CTimeSensMethod::calculate_dAssignments_dState(), CTimeSensProblem::getNumTargets(), CTimeSensProblem::getScaledStateResult(), CTimeSensProblem::getScaledTargetsResult(), CTimeSensProblem::getStateResult(), CTimeSensProblem::getTargetsResult(), CTimeSensMethod::mAssignmentJacobian, CTimeSensMethod::mAssTargetValuePointers, CTimeSensMethod::mdAssignment_dPar, CTimeSensMethod::mNumParameters, CTimeSensMethod::mParameterTransientValuePointers, CTimeSensMethod::mpContainerStateTime, CTimeSensMethod::mpProblem, CTimeSensMethod::mpReducedModel, CTimeSensMethod::mSystemSize, and mVariables.
Referenced by start().
|
private |
Create a mask which hides all roots being constant and zero.
References ALL, CVectorCore< CType >::begin(), C_FLOAT64, C_INT, CMathContainer::calculateRootDerivatives(), CVectorCore< CType >::end(), CMathContainer::getRootIsDiscrete(), CMathContainer::getRoots(), min, CCopasiMethod::mpContainer, CTimeSensMethod::mpReducedModel, mRootMask, mRootMasking, CTimeSensMethod::mRootsFound, CVector< CType >::resize(), CVectorCore< CType >::size(), and CMathContainer::updateRootValues().
Referenced by setRootMaskType().
|
protected |
Destroy the mask which hides all roots being constant and zero.
References mRootMask, mRootMasking, and NONE.
Referenced by start().
|
virtual |
This methods must be called to elevate subgroups to derived objects. The default implementation does nothing.
Reimplemented from CCopasiParameterGroup.
References initializeParameter().
|
virtual |
References CMatrix< CType >::array(), CVectorCore< CType >::array(), C_FLOAT64, CTimeSensMethod::calculate_dRate_dPar(), CMathContainer::calculateJacobian(), CTimeSensMethod::mdRate_dPar, CTimeSensMethod::mJacobian, CTimeSensMethod::mNumParameters, CCopasiMethod::mpContainer, CTimeSensMethod::mpContainerStateTime, CTimeSensMethod::mpReducedModel, mpYdot, CTimeSensMethod::mSystemSize, mVariables, and CMathContainer::updateSimulatedValues().
Referenced by EvalF().
|
static |
This evaluates the derivatives
References evalF(), and CTimeSensLsodaMethod::Data::pMethod.
Referenced by step().
|
virtual |
Referenced by EvalJ().
|
static |
This evaluates the Jacobian
References evalJ(), and CTimeSensLsodaMethod::Data::pMethod.
Referenced by step().
|
static |
This evaluates the roots
References evalR(), and CTimeSensLsodaMethod::Data::pMethod.
Referenced by step().
|
private |
References CVectorCore< CType >::array(), C_FLOAT64, CMathContainer::getCountFixedEventTargets(), mAtol, CTimeSensMethod::mContainerState, CCopasiMethod::mpContainer, mpRelativeTolerance, and CVectorCore< CType >::size().
Referenced by peekAhead(), and step().
|
private |
Initialize the method parameter
References CCopasiParameterGroup::assertParameter(), CCopasiParameter::BOOL, C_FLOAT64, C_INT32, mpAbsoluteTolerance, mpMaxInternalSteps, mpMaxInternalStepSize, CTimeSensMethod::mpReducedModel, mpRelativeTolerance, CCopasiParameter::UDOUBLE, and CCopasiParameter::UINT.
Referenced by CTimeSensLsodaMethod(), and elevateChildren().
|
private |
Mask roots which are constant and zero.
CVectorCore< | C_FLOAT64 > & rootValues |
References CVectorCore< CType >::array(), C_FLOAT64, mRootMask, and CVectorCore< CType >::size().
Referenced by evalR().
|
private |
Peek ahead to detect simultaneous roots.
References ALL, CVectorCore< CType >::array(), C_FLOAT64, C_INT, CTimeSensLsodaMethod::State::ContainerState, CTimeSensMethod::FAILURE, CMathContainer::getRoots(), hasStateChanged(), max, mLastRootState, mLsodaStatus, CCopasiMethod::mpContainer, mPeekAheadMode, mpRelativeTolerance, mRootCounter, mRootMask, CTimeSensMethod::mRootsFound, mSavedState, mTargetTime, mTime, CTimeSensMethod::NORMAL, resetState(), CTimeSensMethod::ROOT, saveState(), setRootMaskType(), CVectorCore< CType >::size(), CTimeSensLsodaMethod::State::Status, and step().
Referenced by step().
|
private |
References CTimeSensLsodaMethod::State::ContainerState, CTimeSensLsodaMethod::State::DWork, CTimeSensLsodaMethod::State::IWork, CTimeSensLsodaMethod::State::LsodaState, CTimeSensMethod::mContainerState, mDWork, mIWork, mLSODAR, mLsodaStatus, CTimeSensMethod::mpContainerStateTime, mRootMask, mRootMasking, CTimeSensMethod::mRootsFound, mTime, CInternalSolver::resetState(), CTimeSensMethod::ROOT, CTimeSensLsodaMethod::State::RootMask, CTimeSensLsodaMethod::State::RootMasking, CTimeSensLsodaMethod::State::RootsFound, and CTimeSensLsodaMethod::State::Status.
Referenced by peekAhead(), and step().
|
private |
References CTimeSensLsodaMethod::State::ContainerState, CTimeSensLsodaMethod::State::DWork, CTimeSensLsodaMethod::State::IWork, CTimeSensLsodaMethod::State::LsodaState, CTimeSensMethod::mContainerState, mDWork, mIWork, mLSODAR, CTimeSensMethod::mpContainerStateTime, mRootMask, mRootMasking, CTimeSensMethod::mRootsFound, mTime, CTimeSensLsodaMethod::State::RootMask, CTimeSensLsodaMethod::State::RootMasking, CTimeSensLsodaMethod::State::RootsFound, CInternalSolver::saveState(), and CTimeSensLsodaMethod::State::Status.
Referenced by peekAhead(), start(), and step().
|
private |
Set the root mask type and update the root mask accordingly
References ALL, CVectorCore< CType >::array(), CVectorCore< CType >::begin(), C_FLOAT64, createRootMask(), DISCRETE, CVectorCore< CType >::end(), CMathContainer::getRootIsDiscrete(), CMathContainer::getRoots(), mDiscreteRoots, min, mNumRoots, CCopasiMethod::mpContainer, CTimeSensMethod::mpReducedModel, mRootMask, mRootMasking, NONE, CVector< CType >::resize(), and CMathContainer::updateRootValues().
Referenced by peekAhead(), stateChange(), and step().
|
virtual |
This instructs the method to prepare for integration
Reimplemented from CTimeSensMethod.
References CVectorCore< CType >::array(), C_FLOAT64, C_INT, CTimeSensMethod::calculate_dInitialState_dPar(), CTimeSensLsodaMethod::State::ContainerState, copySensitivitiesToResultMatrix(), destroyRootMask(), CTimeSensLsodaMethod::Data::dim, CTimeSensMethod::FAILURE, CTrajectoryProblem::getAutomaticStepSize(), CMathContainer::getCountFixedEventTargets(), CMathContainer::getRate(), CMathContainer::getRootIsDiscrete(), CMathContainer::getRoots(), CVectorCore< CType >::initialize(), CMathContainer::initializeAtolVector(), mAtol, CTimeSensMethod::mContainerState, mData, mDiscreteRoots, CTimeSensMethod::mdRate_dPar, mDWork, mErrorMsg, mIWork, CTimeSensMethod::mJacobian, mJType, mLastRootState, mLSODA, mLSODAR, mLsodaStatus, CTimeSensMethod::mNumParameters, mNumRoots, mpAbsoluteTolerance, CCopasiMethod::mpContainer, CTimeSensMethod::mpContainerStateTime, mPeekAheadMode, mpMaxInternalSteps, mpMaxInternalStepSize, CTimeSensMethod::mpProblem, CTimeSensMethod::mpReducedModel, mpYdot, mRootCounter, CTimeSensMethod::mRootsFound, mSavedState, CTimeSensMethod::mSystemSize, mTargetTime, mTask, mTime, mVariables, CMatrix< CType >::resize(), CVector< CType >::resize(), CTimeSensLsodaMethod::State::RootsFound, saveState(), CInternalSolver::setOstream(), CVectorCore< CType >::size(), and CTimeSensMethod::start().
|
virtual |
Inform the trajectory method that the state has changed outside its control
const | CMath::StateChange & change |
Reimplemented from CTimeSensMethod.
References CVectorCore< CType >::array(), C_FLOAT64, CTimeSensLsodaMethod::State::ContainerState, CMath::ContinuousSimulation, CMath::EventSimulation, CTimeSensMethod::FAILURE, CMath::FixedEventTarget, CMathContainer::getCountFixedEventTargets(), CTimeSensMethod::mContainerState, mLastRootState, mLsodaStatus, mNumRoots, CCopasiMethod::mpContainer, CTimeSensMethod::mpContainerStateTime, mPeekAheadMode, CTimeSensMethod::mpReducedModel, mSavedState, CTimeSensMethod::mSystemSize, mTime, mVariables, NONE, setRootMaskType(), CMath::State, CTimeSensLsodaMethod::State::Status, and CMathContainer::updateSimulatedValues().
Referenced by step().
|
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 |
const | bool & final (default: false) |
Reimplemented from CTimeSensMethod.
References ALL, CVectorCore< CType >::array(), C_FLOAT64, C_INT, CTimeSensLsodaMethod::State::ContainerState, CTimeSensLsodaMethod::Data::dim, DISCRETE, EvalF(), EvalJ(), EvalR(), CCopasiMessage::EXCEPTION, CTimeSensMethod::FAILURE, CMathContainer::getCountFixedEventTargets(), CMathContainer::getState(), hasStateChanged(), CMathContainer::isStateValid(), mAtol, CTimeSensMethod::mContainerState, MCTrajectoryMethod, mData, mDWork, mErrorMsg, mIWork, mJType, mLastRootState, mLastSuccessState, mLSODA, mLSODAR, mLsodaStatus, mNumRoots, CCopasiMethod::mpContainer, CTimeSensMethod::mpContainerStateTime, mPeekAheadMode, mpMaxInternalSteps, CTimeSensMethod::mpReducedModel, mpRelativeTolerance, mRootCounter, mRootMask, mRootMasking, CTimeSensMethod::mRootsFound, mSavedState, CTimeSensMethod::mSystemSize, mTargetTime, mTask, mTime, mVariables, NONE, CTimeSensMethod::NORMAL, peekAhead(), resetState(), CTimeSensMethod::ROOT, CTimeSensLsodaMethod::State::RootsFound, saveState(), setRootMaskType(), CVectorCore< CType >::size(), CMath::State, stateChange(), CTimeSensLsodaMethod::State::Status, and CMathContainer::updateSimulatedValues().
Referenced by peekAhead().
A vector of absolute tolerances.
Referenced by hasStateChanged(), start(), and step().
|
protected |
mData.dim is the dimension of the ODE system. mData.pMethod contains CTimeSensLsodaMethod * this to be used in the static method EvalF
Referenced by CTimeSensLsodaMethod(), start(), and step().
|
private |
A which indicates whether roots change only discretely.
Referenced by setRootMaskType(), and start().
LSODA C_FLOAT64 work area
Referenced by resetState(), saveState(), start(), and step().
|
private |
LSODA C_INT work area
Referenced by resetState(), saveState(), start(), and step().
|
private |
|
protected |
The last state having a root
Referenced by peekAhead(), start(), stateChange(), and step().
The state after the last successful integration step
Referenced by step().
|
private |
The LSODA integrator
Referenced by resetState(), saveState(), start(), and step().
|
protected |
LSODA state.
Referenced by peekAhead(), resetState(), start(), stateChange(), and step().
|
private |
Number of roots
Referenced by setRootMaskType(), start(), stateChange(), and step().
|
private |
A pointer to the value of "Absolute Tolerance"
Referenced by initializeParameter(), and start().
|
private |
A Boolean indicating whether we are in peekAhead mode
Referenced by peekAhead(), start(), stateChange(), and step().
|
private |
A pointer to the value of "Max Internal Steps"
Referenced by initializeParameter(), start(), and step().
|
private |
A pointer to the value of "Max Internal Step Size"
Referenced by initializeParameter(), and start().
|
private |
A pointer to the value of "Relative Tolerance"
Referenced by hasStateChanged(), initializeParameter(), peekAhead(), and step().
|
private |
|
private |
Root counter to determine whether the internal step limit is exceeded.
Referenced by peekAhead(), start(), and step().
|
private |
A mask which hides all roots being constant and zero.
Referenced by createRootMask(), destroyRootMask(), maskRoots(), peekAhead(), resetState(), saveState(), setRootMaskType(), and step().
|
protected |
A Boolean flag indicating whether we should try masking roots
Referenced by createRootMask(), destroyRootMask(), evalR(), resetState(), saveState(), setRootMaskType(), and step().
|
private |
Referenced by peekAhead(), start(), stateChange(), and step().
|
private |
Store the targeted end time to determine whether the internal step limit is exceeded.
Referenced by peekAhead(), start(), and step().
|
private |
|
protected |
Current time.
Referenced by peekAhead(), resetState(), saveState(), start(), stateChange(), and step().
Pointer to the array with left hand side values of the math container. the vector that contains the extended system
Referenced by copySensitivitiesToResultMatrix(), evalF(), start(), stateChange(), and step().