COPASI API
4.40.278
|
#include <CSteadyStateMethod.h>
Public Member Functions | |
CSteadyStateMethod (const CSteadyStateMethod &src, const CDataContainer *pParent) | |
void | doJacobian (CMatrix< C_FLOAT64 > &jacobian, CMatrix< C_FLOAT64 > &jacobianX) |
bool | elevateChildren () |
std::string | getMethodLog () const |
C_FLOAT64 | getStabilityResolution () |
virtual bool | initialize (const CSteadyStateProblem *pProblem) |
virtual bool | isValidProblem (const CCopasiProblem *pProblem) |
CSteadyStateMethod::ReturnCode | process (CVectorCore< C_FLOAT64 > &State, CMatrix< C_FLOAT64 > &jacobianX, CProcessReportLevel handler) |
~CSteadyStateMethod () | |
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 | |
bool | allPositive () |
void | calculateJacobian (const C_FLOAT64 &oldMaxRate, const bool &reduced) |
CSteadyStateMethod (const CDataContainer *pParent, const CTaskEnum::Method &methodType, const CTaskEnum::Task &taskType=CTaskEnum::Task::steadyState) | |
CSteadyStateMethod (CTaskEnum::Method subType, const CDataContainer *pParent=NO_PARENT) | |
void | initializeParameter () |
bool | isEquilibrium (const C_FLOAT64 &resolution) const |
virtual CSteadyStateMethod::ReturnCode | processInternal () |
virtual CSteadyStateMethod::ReturnCode | returnProcess (bool steadyStateFound) |
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 | |
CSteadyStateMethod () | |
Additional Inherited Members | |
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 |
|
private |
Default constructor.
|
protected |
Specific constructor
const | CDataContainer * pParent |
const | CTaskEnum::Method & methodType |
const | CTaskEnum::Task & taskType (default: steadyState) |
CSteadyStateMethod class. This class describes the interface to all steady state methods. The various method like Newton have to be derived from this class.
Created for COPASI by Stefan Hoops 2002 Default constructor.
References CONSTRUCTOR_TRACE, and initializeParameter().
|
protected |
Specific constructor.
CTaskEnum::Method | subType |
const | CDataContainer * pParent (default: NULL) |
CSteadyStateMethod::CSteadyStateMethod | ( | const CSteadyStateMethod & | src, |
const CDataContainer * | pParent | ||
) |
Copy constructor.
const CSteadyStateMethod & | src |
const | CDataContainer * pParent (default: NULL) |
Copy constructor.
const CSteadyStateMethod & | src |
References CONSTRUCTOR_TRACE, and initializeParameter().
CSteadyStateMethod::~CSteadyStateMethod | ( | ) |
Destructor.
References DESTRUCTOR_TRACE.
|
protected |
Check whether all values make physically sence, i.e., volumes and particle number are positive
References CVectorCore< CType >::array(), C_FLOAT64, CMath::Compartment, CMathContainer::getCountFixedEventTargets(), CMathObject::getEntityType(), CMathContainer::getMathObject(), CMathContainer::getModel(), CModel::getQuantity2NumberFactor(), mCompartmentVolumes, mContainerState, CCopasiMethod::mpContainer, mpDerivationResolution, CVectorCore< CType >::size(), CMath::Species, and CMathContainer::updateSimulatedValues().
Referenced by CNewtonMethod::doIntegration(), CNewtonMethod::doNewtonStep(), and returnProcess().
|
protected |
void CSteadyStateMethod::doJacobian | ( | CMatrix< C_FLOAT64 > & | jacobian, |
CMatrix< C_FLOAT64 > & | jacobianX | ||
) |
calls the CModel methods to calculate the jacobians (at the steady state). This trivial method is implemented in the method because it may need to know about some method parameters
References CMathContainer::calculateJacobian(), CCopasiMethod::mpContainer, mpDerivationFactor, mSteadyState, and CMathContainer::setState().
Referenced by CSteadyStateTask::process().
|
virtual |
This methods must be called to elevate subgroups to derived objects. The default implementation does nothing.
Reimplemented from CCopasiParameterGroup.
References initializeParameter().
std::string CSteadyStateMethod::getMethodLog | ( | ) | const |
References mMethodLog.
C_FLOAT64 CSteadyStateMethod::getStabilityResolution | ( | ) |
returns the resolution for stability analysis
References C_FLOAT64.
Referenced by CSteadyStateTask::process().
|
virtual |
Initialize the method must be called before process
const | CSteadyStateProblem * pProblem |
Reimplemented in CNewtonMethod.
References CVectorCore< CType >::array(), CVectorCore< CType >::begin(), CMathContainer::getCountFixedEventTargets(), CMathContainer::getState(), CVectorCore< CType >::initialize(), CMathContainer::initializeAtolVector(), mAtol, mContainerState, mContainerStateReduced, CCopasiMethod::mpContainer, mpContainerStateTime, mpProblem, mpSSResolution, and CVectorCore< CType >::size().
Referenced by CNewtonMethod::initialize(), and CSteadyStateTask::initialize().
|
protected |
initialize parameters and handle parameters of old COPASI files
References CCopasiParameterGroup::assertParameter(), C_FLOAT64, CCopasiParameterGroup::getParameter(), CCopasiParameter::getValue(), mpDerivationFactor, mpDerivationResolution, mpSSResolution, CCopasiParameterGroup::removeParameter(), CCopasiParameterGroup::setValue(), and CCopasiParameter::UDOUBLE.
Referenced by CSteadyStateMethod(), CNewtonMethod::elevateChildren(), and elevateChildren().
|
protected |
Check whether the steady state is chemical equilibrium
const | C_FLOAT64 & resolution @retrun bool isEquilibrium |
References CVectorCore< CType >::begin(), C_FLOAT64, CVectorCore< CType >::end(), CMathReaction::getNumberBalance(), CMathReaction::getParticleFluxObject(), CMathContainer::getReactions(), CMathObject::getValue(), mAtol, max, CCopasiMethod::mpContainer, mpContainerStateTime, and CMathContainer::updateTransientDataValues().
Referenced by returnProcess().
|
virtual |
Check if the method is suitable for this problem
Reimplemented from CCopasiMethod.
Reimplemented in CNewtonMethod.
References CCopasiMessage::EXCEPTION, and CCopasiMethod::isValidProblem().
Referenced by CSteadyStateTask::initialize(), and CNewtonMethod::isValidProblem().
CSteadyStateMethod::ReturnCode CSteadyStateMethod::process | ( | CVectorCore< C_FLOAT64 > & | State, |
CMatrix< C_FLOAT64 > & | jacobianX, | ||
CProcessReportLevel | handler | ||
) |
This instructs the method to calculate a the steady state starting with the initialState given. The steady state is returned in the object pointed to by steadyState.
CVectorCore< | C_FLOAT64 > & State |
CMatrix< | C_FLOAT64 > & jacobianX |
CProcessReport | * handler |
This instructs the method to calculate a the steady state starting with the initialState given. The steady state is returned in the object pointed to by steadyState.
CState | * steadyState |
const | CState * initialState |
C_FLOAT64 | * jacobian |
CEigen | * eigenValues |
References CDataObject::getObjectParent(), CVectorCore< CType >::initialize(), mpJacobian, mpParentTask, CCopasiMethod::mProcessReport, mStartState, mSteadyState, and processInternal().
Referenced by CSteadyStateTask::process().
|
protectedvirtual |
This instructs the method to calculate a the steady state starting with the initialState given. The steady state is returned in the object pointed to by steadyState.
This instructs the method to calculate a the steady state
Reimplemented in CNewtonMethod.
References notFound.
Referenced by process().
|
protectedvirtual |
This function has to be called at the return of any implementation of the protected function process()
This function has to be called at the return of any implementation of the protected function process
bool | success |
const | C_FLOAT64 & factor |
const | C_FLOAT64 & resolution |
References allPositive(), found, foundEquilibrium, foundNegative, CMathContainer::getState(), isEquilibrium(), CCopasiMethod::mpContainer, mpSSResolution, mStartState, mSteadyState, and notFound.
Referenced by CNewtonMethod::processInternal().
|
protected |
Referenced by allPositive(), calculateJacobian(), initialize(), and CNewtonMethod::processInternal().
|
protected |
Referenced by calculateJacobian(), CNewtonMethod::initialize(), and initialize().
|
protected |
|
protected |
Referenced by initialize(), and isEquilibrium().
|
protected |
The factor for numerical derivation
Referenced by calculateJacobian(), doJacobian(), initializeParameter(), and CNewtonMethod::targetFunctionDistance().
|
protected |
The resolution of the variable of numerical derivation
Referenced by allPositive(), and initializeParameter().
The jacobian of the steadystate
Referenced by calculateJacobian(), CNewtonMethod::doNewtonStep(), and process().
|
protected |
A pointer to the task.
Referenced by process().
|
protected |
A pointer to the problem.
Referenced by initialize().
|
protected |
The concentration rate that is considered zero
Referenced by initialize(), initializeParameter(), CNewtonMethod::isSteadyState(), and returnProcess().
The state from where the method started
Referenced by process(), and returnProcess().
|
protected |
A pointer to the steady state
Referenced by doJacobian(), process(), and returnProcess().