COPASI API  4.40.278
CFitProblem Class Reference

#include <CFitProblem.h>

Inheritance diagram for CFitProblem:
[legend]

Public Member Functions

CFitConstraintaddFitConstraint (const CCommonName &objectCN)
 
CFitItemaddFitItem (const CCommonName &objectCN)
 
bool calcCov (const CMatrix< C_FLOAT64 > &fim, CMatrix< C_FLOAT64 > &corr, CVector< C_FLOAT64 > &sd, bool scale)
 
void calcEigen (const CMatrix< C_FLOAT64 > &fim, CMatrix< C_FLOAT64 > &eigenvalues, CMatrix< C_FLOAT64 > &eigenvectors)
 
void calcFIM (const CMatrix< C_FLOAT64 > &jacobian, CMatrix< C_FLOAT64 > &fim)
 
void calcPartialFIM (const CMatrix< C_FLOAT64 > &jacobian, CMatrix< C_FLOAT64 > &fim, size_t a, size_t b, bool exclude=false)
 
virtual bool calculate () override
 
virtual bool calculateStatistics (const C_FLOAT64 &factor=1.0e-003, const C_FLOAT64 &resolution=1.0e-009) override
 
 CFitProblem (const CFitProblem &src, const CDataContainer *pParent)
 
 CFitProblem (const CTaskEnum::Task &type=CTaskEnum::Task::parameterFitting, const CDataContainer *pParent=NO_PARENT)
 
virtual bool checkFunctionalConstraints () override
 
void createParameterSets ()
 
virtual bool elevateChildren () override
 
void fixBuild55 ()
 
CDataArraygetCorrelations () const
 
const bool & getCreateParameterSets () const
 
const C_FLOAT64getCrossValidationRMS () const
 
const C_FLOAT64getCrossValidationSD () const
 
CCrossValidationSetgetCrossValidationSet ()
 
const CCrossValidationSetgetCrossValidationSet () const
 
const C_FLOAT64getCrossValidationSolutionValue () const
 
CExperimentSetgetExperimentSet ()
 
const CExperimentSetgetExperimentSet () const
 
CDataArraygetFisherInformation () const
 
CDataArraygetFisherInformationEigenvalues () const
 
CDataArraygetFisherInformationEigenvectors () const
 
CDataArraygetParameterEstimationJacobian () const
 
const CVector< C_FLOAT64 > & getResiduals () const
 
const C_FLOAT64getRMS () const
 
CDataArraygetScaledFisherInformation () const
 
CDataArraygetScaledFisherInformationEigenvalues () const
 
CDataArraygetScaledFisherInformationEigenvectors () const
 
CDataArraygetScaledParameterEstimationJacobian () const
 
const C_FLOAT64getStdDeviation () const
 
CMatrix< C_FLOAT64 > & getTimeSensJac ()
 
const CMatrix< C_FLOAT64 > & getTimeSensJac () const
 
const bool & getUseTimeSens () const
 
const CVector< C_FLOAT64 > & getVariableStdDeviations () const
 
virtual bool initialize () override
 
virtual void print (std::ostream *ostream) const override
 
virtual void printResult (std::ostream *ostream) const override
 
virtual bool restore (const bool &updateModel) override
 
bool restore (const bool &updateModel, CExperiment *pExp)
 
virtual bool setCallBack (CProcessReportLevel callBack) override
 
void setCreateParameterSets (const bool &create)
 
bool setResidualsRequired (const bool &required)
 
virtual bool setSolution (const C_FLOAT64 &value, const CVector< C_FLOAT64 > &variables, const bool &algorithmOrder=false) override
 
void setUseTimeSens (bool value)
 
void updateInitialState ()
 
virtual ~CFitProblem ()
 
- Public Member Functions inherited from COptProblem
COptItemaddOptConstraint (const CCommonName &objectCN)
 
COptItemaddOptItem (const CCommonName &objectCN)
 
C_FLOAT64 adjustForIntervals (C_FLOAT64 *pValue, const C_FLOAT64 &min, const C_FLOAT64 &max)
 
bool adjustStartValue (COptItem &optItem)
 
bool adjustStartValuesForIntervals ()
 
virtual void calculateValue () override
 
bool checkIntervals ()
 
virtual bool checkParametricConstraints ()
 
 COptProblem (const COptProblem &src, const CDataContainer *pParent)
 
 COptProblem (const CTaskEnum::Task &type=CTaskEnum::Task::optimization, const CDataContainer *pParent=NO_PARENT)
 
C_FLOAT64 evalMinimizeIntervals (const C_FLOAT64 &value)
 
const unsigned C_INT32geFailedConstraintCounter () const
 
const bool & getCalculateStatistics () const
 
const C_FLOAT64getCalculateValue () const
 
const unsigned C_INT32getConstraintEvaluations () const
 
const std::vector< COptItem * > & getConstraintList () const
 
CVectorCore< C_FLOAT64 * > & getContainerVariables (const bool &algorithmOrder=false) const
 
const sCountergetCounters () const
 
const C_FLOAT64getExecutionTime () const
 
const unsigned C_INT32getFailedEvaluationsExc () const
 
const unsigned C_INT32getFailedEvaluationsNaN () const
 
const unsigned C_INT32getFunctionEvaluations () const
 
const std::string getObjectiveFunction ()
 
COptItemgetOptConstraint (const size_t &index)
 
size_t getOptConstraintSize () const
 
COptItemgetOptItem (const size_t &index)
 
const std::vector< COptItem * > & getOptItemList (const bool &algorithmOrder=false) const
 
size_t getOptItemSize () const
 
const bool & getRandomizeStartValues () const
 
const C_FLOAT64getSolutionValue () const
 
const CVector< C_FLOAT64 > & getSolutionVariables (const bool &algorithmOrder=false) const
 
virtual CCopasiTaskgetSubTask () const override
 
CTaskEnum::Task getSubtaskType () const
 
virtual void * getValuePointer () const override
 
const CVector< C_FLOAT64 > & getVariableGradients () const
 
size_t getVariableSize () const
 
void incrementCounters (const sCounter &increment)
 
virtual bool initializeSubtaskBeforeOutput ()
 
const bool & maximize () const
 
void randomizeStartValues ()
 
void rememberStartValues ()
 
bool removeOptConstraint (const size_t &index)
 
bool removeOptItem (const size_t &index)
 
void reset ()
 
void resetCounters ()
 
void setCalculateStatistics (const bool &calculate)
 
void setMaximize (const bool &maximize)
 
bool setObjectiveFunction (const std::string &infix)
 
void setParameters (const CVectorCore< C_FLOAT64 > &parameters)
 
void setRandomizeStartValues (const bool &randomize)
 
CCommonName setSubtaskType (const CTaskEnum::Task &subtaskType)
 
bool swapOptItem (const size_t &iFrom, const size_t &iTo)
 
virtual ~COptProblem ()
 
- Public Member Functions inherited from CCopasiProblem
 CCopasiProblem (const CCopasiProblem &src, const CDataContainer *pParent)
 
virtual void clearCallBack ()
 
CCopasiProblemcopy () const
 
const CProcessReportLevelgetCallBack () const
 
CMathContainergetMathContainer () const
 
const CTaskEnum::TaskgetType () const
 
void setMathContainer (CMathContainer *pContainer)
 
virtual bool setModel (CModel *model)
 
virtual ~CCopasiProblem ()
 
- Public Member Functions inherited from CCopasiParameterGroup
bool addGroup (const std::string &name)
 
void addParameter (CCopasiParameter *pParameter)
 
bool addParameter (const CCopasiParameter &parameter)
 
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)
 
CCopasiParameterGroupassertGroup (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
 
CCopasiParameterGroupgetElementTemplates ()
 
const CCopasiParameterGroupgetElementTemplates () const
 
CCopasiParameterGroupgetGroup (const size_t &index)
 
const CCopasiParameterGroupgetGroup (const size_t &index) const
 
CCopasiParameterGroupgetGroup (const std::string &name)
 
const CCopasiParameterGroupgetGroup (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 CObjectInterfacegetObject (const CCommonName &cn) const
 
CCopasiParametergetParameter (const size_t &index)
 
const CCopasiParametergetParameter (const size_t &index) const
 
CCopasiParametergetParameter (std::string name)
 
const CCopasiParametergetParameter (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 CUndoObjectInterfaceinsert (const CData &data)
 
CCopasiParameterGroupoperator= (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::TypegetType () const
 
const UserInterfaceFlaggetUserInterfaceFlag () 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
 
CDataObjectgetValueReference () 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
 
CCopasiParameteroperator= (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 objectMapgetObjects ()
 
virtual const objectMapgetObjects () const
 
virtual const std::string getUnits () const override
 
virtual const CDataObjectgetValueObject () 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)
 
 CDataObject (const CDataObject &src, const CDataContainer *pParent=NULL)
 
virtual void destruct () override
 
virtual const CDataObjectgetDataObject () const override
 
CDataContainergetObjectAncestor (const std::string &type) const
 
CDataModelgetObjectDataModel () const
 
const CObjectInterfacegetObjectFromCN (const CCommonName &cn) const
 
const std::string & getObjectName () const
 
CDataContainergetObjectParent () const
 
const std::string & getObjectType () const
 
virtual const CObjectInterface::ObjectSetgetPrerequisites () const override
 
virtual const CValiditygetValidity () 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 createParameterSet (const std::string &Name)
 
virtual void updateContainer (const bool &update) override
 
- Protected Member Functions inherited from CCopasiProblem
 CCopasiProblem (const CCopasiProblem &src)
 
 CCopasiProblem (const CTaskEnum::Task &type, const CDataContainer *pParent)
 
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

bool calculateCrossValidation ()
 
virtual bool createObjectiveFunction ()
 
void initializeParameter ()
 
void initObjects ()
 

Private Attributes

CVector< C_FLOAT64mCompleteInitialState
 
CMatrix< C_FLOAT64mCorrelation
 
CMatrix< CFitConstraint * > mCrossValidationConstraints
 
CVector< CCore::CUpdateSequencemCrossValidationConstraintUpdates
 
CVector< C_FLOAT64mCrossValidationDependentValues
 
CVector< CCore::CUpdateSequencemCrossValidationInitialUpdates
 
C_FLOAT64 mCrossValidationObjective
 
C_FLOAT64 mCrossValidationRMS
 
C_FLOAT64 mCrossValidationSD
 
C_FLOAT64 mCrossValidationSolutionValue
 
CMatrix< C_FLOAT64 * > mCrossValidationValues
 
CMatrix< C_FLOAT64mDeltaResidualDeltaParameter
 
CMatrix< C_FLOAT64mDeltaResidualDeltaParameterScaled
 
CMatrix< CFitConstraint * > mExperimentConstraints
 
CVector< CCore::CUpdateSequencemExperimentConstraintUpdates
 
CVector< C_FLOAT64mExperimentDependentValues
 
CVector< CCore::CUpdateSequencemExperimentInitialUpdates
 
CMatrix< C_FLOAT64 * > mExperimentValues
 
CMatrix< C_FLOAT64mFisher
 
CMatrix< C_FLOAT64mFisherEigenvalues
 
CMatrix< C_FLOAT64mFisherEigenvectors
 
CMatrix< C_FLOAT64mFisherScaled
 
CMatrix< C_FLOAT64mFisherScaledEigenvalues
 
CMatrix< C_FLOAT64mFisherScaledEigenvectors
 
CMatrix< C_FLOAT64mJacTimeSens
 
CVector< C_FLOAT64mParameterSD
 
CDataArraympCorrelationMatrix
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpCorrelationMatrixInterface
 
bool * mpCreateParameterSets
 
CCrossValidationSetmpCrossValidationSet
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpDeltaResidualDeltaParameterInterface
 
CDataArraympDeltaResidualDeltaParameterMatrix
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpDeltaResidualDeltaParameterScaledInterface
 
CDataArraympDeltaResidualDeltaParameterScaledMatrix
 
CExperimentSetmpExperimentSet
 
CDataArraympFisherEigenvaluesMatrix
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpFisherEigenvaluesMatrixInterface
 
CDataArraympFisherEigenvectorsMatrix
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpFisherEigenvectorsMatrixInterface
 
CDataArraympFisherMatrix
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpFisherMatrixInterface
 
CDataArraympFisherScaledEigenvaluesMatrix
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpFisherScaledEigenvaluesMatrixInterface
 
CDataArraympFisherScaledEigenvectorsMatrix
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpFisherScaledEigenvectorsMatrixInterface
 
CDataArraympFisherScaledMatrix
 
CMatrixInterface< CMatrix< C_FLOAT64 > > * mpFisherScaledMatrixInterface
 
C_FLOAT64mpInitialStateTime
 
std::string * mpParmSteadyStateCN
 
std::string * mpParmTimeCourseCN
 
std::string * mpParmTimeSensCN
 
CSteadyStateTaskmpSteadyState
 
CTimeSensTaskmpTimeSens
 
CTrajectoryTaskmpTrajectory
 
bool * mpUseTimeSens
 
CVector< C_FLOAT64mResiduals
 
C_FLOAT64 mRMS
 
C_FLOAT64 mSD
 
unsigned C_INT32 mThresholdCounter
 

Friends

std::ostream & operator<< (std::ostream &os, const CFitProblem &o)
 

Additional Inherited Members

- Public Types inherited from CCopasiParameterGroup
typedef CDataObjectMap::const_type_iterator< CCopasiParameterconst_name_iterator
 
typedef std::vector< CCopasiParameter * > elements
 
typedef elements::iterator index_iterator
 
typedef CDataObjectMap::type_iterator< CCopasiParametername_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< eUserInterfaceFlagUserInterfaceFlag
 
- 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 CCopasiParameterfromData (const CData &data, CUndoObjectInterface *pParent)
 
- Static Public Member Functions inherited from CDataContainer
static CDataContainerfromData (const CData &data, CUndoObjectInterface *pParent)
 
- Static Public Member Functions inherited from CDataObject
static CDataObjectfromData (const CData &data, CUndoObjectInterface *pParent)
 
static void sanitizeObjectName (std::string &name)
 
- Static Public Member Functions inherited from CObjectInterface
static const CDataObjectDataObject (const CObjectInterface *pInterface)
 
static CObjectInterfaceGetObjectFromCN (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 COptProblem
static const CTaskEnum::Task ValidSubtasks []
 
- Static Public Attributes inherited from CCopasiParameter
static const CEnumAnnotation< std::string, TypeTypeName
 
static const CEnumAnnotation< std::string, TypeXMLType
 
- Static Public Attributes inherited from CDataContainer
static const CObjectInterface::ContainerList EmptyList
 
- Protected Attributes inherited from COptProblem
std::set< COptItem * > mAdjustedItems
 
C_FLOAT64 mCalculateValue
 
CVector< C_FLOAT64 * > mContainerVariables
 
CVector< C_FLOAT64 * > mContainerVariablesAlgorithm
 
sCounter mCounters
 
size_t mCountInfluencingIntervals
 
CCopasiTimer mCPUTime
 
CVector< C_FLOAT64mGradient
 
bool mHaveStatistics
 
size_t mhCounter
 
size_t mhSolutionValue
 
CCore::CUpdateSequence mInitialRefreshSequence
 
C_FLOAT64 mMinInterval
 
std::map< COptItem *, size_t > mOptItem2Index
 
std::vector< COptItem * > mOptItemAlgorithm
 
CVector< C_FLOAT64mOriginalVariables
 
C_FLOAT64mpAdjust
 
std::vector< COptItem * > * mpConstraintItems
 
CCopasiParameterGroupmpGrpConstraints
 
CCopasiParameterGroupmpGrpItems
 
CMathExpressionmpMathObjectiveExpression
 
CExpressionmpObjectiveExpression
 
std::vector< COptItem * > * mpOptItems
 
bool * mpParmCalculateStatistics
 
bool * mpParmMaximize
 
std::string * mpParmObjectiveExpression
 
bool * mpParmRandomizeStartValues
 
std::string * mpParmSubTaskCN
 
CCopasiTaskmpSubTask
 
CCopasiTaskmpSubTaskSrc
 
C_FLOAT64 mSolutionValue
 
CVector< C_FLOAT64mSolutionVariables
 
CVector< C_FLOAT64mSolutionVariablesAlgorithm
 
bool mStoreResults
 
CCore::CUpdateSequence mUpdateConstraints
 
CCore::CUpdateSequence mUpdateIntervals
 
CCore::CUpdateSequence mUpdateObjectiveFunction
 
C_FLOAT64 mWorstValue
 
- Protected Attributes inherited from CCopasiProblem
CMathContainermpContainer
 
CReportmpReport
 
CProcessReportLevel mProcessReport
 
- Protected Attributes inherited from CCopasiParameter
std::string mKey
 
void * mpDefault
 
void * mpValidValues
 
void * mpValue
 
CDataObjectmpValueReference
 
UserInterfaceFlag mUserInterfaceFlag
 
- Protected Attributes inherited from CDataContainer
objectMap mObjects
 
- Protected Attributes inherited from CDataObject
ObjectSet mPrerequisits
 
std::set< CDataContainer * > mReferences
 
- Protected Attributes inherited from CObjectInterface
CValidity mValidity
 

Constructor & Destructor Documentation

◆ CFitProblem() [1/2]

CFitProblem::CFitProblem ( const CTaskEnum::Task type = CTaskEnum::Task::parameterFitting,
const CDataContainer pParent = NO_PARENT 
)

Default constructor

Parameters
constCTaskEnum::Task & type (default: parameterFitting)
constCDataContainer * pParent (default: NULL)

References initializeParameter(), and initObjects().

◆ CFitProblem() [2/2]

CFitProblem::CFitProblem ( const CFitProblem src,
const CDataContainer pParent 
)

Copy constructor.

Parameters
constCFitProblem & src
constCDataContainer * pParent (default: NULL)

References initializeParameter(), and initObjects().

◆ ~CFitProblem()

Member Function Documentation

◆ addFitConstraint()

CFitConstraint & CFitProblem::addFitConstraint ( const CCommonName objectCN)

Add a fit constraint to the problem.

Parameters
constCCommonName & objectCN
Returns
CFitConstraint optItemAdded

References CCopasiParameterGroup::addParameter(), CDataObject::getObjectDataModel(), COptProblem::mpGrpConstraints, and COptItem::setObjectCN().

◆ addFitItem()

CFitItem & CFitProblem::addFitItem ( const CCommonName objectCN)

Add a fit item to the problem.

Parameters
constCCommonName & objectCN
Returns
CFitItem optItemAdded

References CCopasiParameterGroup::addParameter(), CDataObject::getObjectDataModel(), COptProblem::mpGrpItems, and COptItem::setObjectCN().

◆ calcCov()

bool CFitProblem::calcCov ( const CMatrix< C_FLOAT64 > &  fim,
CMatrix< C_FLOAT64 > &  corr,
CVector< C_FLOAT64 > &  sd,
bool  scale 
)

calculate the inverse of a matrix and normalize it. This is used for calculating the correlation Matric from the FIM, and therefore we can assume a symmetric positive definite matrix The SD of the parameters is also calculated from the diagonal of the covariance if scale is true, the cov matrix will be scaled to unity diagonal elements

References CMatrix< CType >::array(), C_FLOAT64, C_INT, dpotrf_(), dpotri_(), MCFitting, mSD, COptProblem::mWorstValue, CMatrix< CType >::numRows(), CVector< CType >::resize(), and CCopasiMessage::WARNING.

Referenced by calculateStatistics().

◆ calcEigen()

void CFitProblem::calcEigen ( const CMatrix< C_FLOAT64 > &  fim,
CMatrix< C_FLOAT64 > &  eigenvalues,
CMatrix< C_FLOAT64 > &  eigenvectors 
)

calculate the Eigenvalues and -vectors for a matrix. This is intended for the FIM, and we assume only real (and positive) eigenvalues

References CMatrix< CType >::array(), CVectorCore< CType >::array(), C_INT, dsyev_(), MCFitting, CMatrix< CType >::numRows(), CMatrix< CType >::resize(), CVector< CType >::resize(), and CCopasiMessage::WARNING.

Referenced by calculateStatistics().

◆ calcFIM()

void CFitProblem::calcFIM ( const CMatrix< C_FLOAT64 > &  jacobian,
CMatrix< C_FLOAT64 > &  fim 
)

calculate the FIM from the parameter estimation jacobian

References C_FLOAT64, CMatrix< CType >::numCols(), CMatrix< CType >::numRows(), and CMatrix< CType >::resize().

Referenced by calculateStatistics().

◆ calcPartialFIM()

void CFitProblem::calcPartialFIM ( const CMatrix< C_FLOAT64 > &  jacobian,
CMatrix< C_FLOAT64 > &  fim,
size_t  a,
size_t  b,
bool  exclude = false 
)

calculate the FIM from only a part of the parameter estimation jacobian only columns from a to b-1 are used or excluded, depending on the exclude flag

References C_FLOAT64, CMatrix< CType >::numCols(), CMatrix< CType >::numRows(), and CMatrix< CType >::resize().

◆ calculate()

bool CFitProblem::calculate ( void  )
overridevirtual

Do the calculation based on CalculateVariables and fill CalculateResults with the results.

Returns
bool continue

Reimplemented from COptProblem.

References CMathContainer::applyUpdateSequence(), CMatrix< CType >::array(), CVectorCore< CType >::array(), C_FLOAT64, CTimeSensMethod::copySensitivitiesToResultMatrix(), COptProblem::sCounter::Counter, COptProblem::sCounter::FailedCounterException, COptProblem::sCounter::FailedCounterNaN, CDataArray::getArray(), CMathContainer::getCompleteInitialState(), CExperiment::getDependentData(), CExperiment::getDependentObjectsMap(), CExperimentSet::getExperiment(), CExperimentSet::getExperimentCount(), CExperiment::getExperimentType(), CCopasiMessage::getLastMessage(), CFitItem::getLocalValue(), CCopasiTask::getMethod(), CExperiment::getNumDataRows(), CCopasiTask::getProblem(), CExperiment::getScalingMatrix(), CTimeSensProblem::getTargetsResultAnnotated(), CExperiment::getTimeData(), CExperiment::initExtendedTimeSeries(), max, COptProblem::mCalculateValue, mCompleteInitialState, COptProblem::mCounters, mExperimentConstraints, mExperimentConstraintUpdates, mExperimentDependentValues, mExperimentInitialUpdates, mExperimentValues, COptProblem::mhCounter, mJacTimeSens, COptProblem::mpConstraintItems, CCopasiProblem::mpContainer, mpExperimentSet, mpInitialStateTime, COptProblem::mpOptItems, CCopasiProblem::mProcessReport, mpSteadyState, mpTimeSens, mpTrajectory, mpUseTimeSens, mResiduals, COptProblem::mStoreResults, COptProblem::mWorstValue, CMatrix< CType >::numCols(), CSteadyStateTask::process(), CTimeSensTask::processStart(), CTrajectoryTask::processStart(), CTimeSensTask::processStep(), CTrajectoryTask::processStep(), CProcessReportLevel::progressItem(), CFitConstraint::resetConstraintViolation(), CMathContainer::setCompleteInitialState(), CTaskEnum::steadyState, CExperiment::storeExtendedTimeSeriesData(), CExperiment::sumOfSquares(), CExperiment::sumOfSquaresStore(), CTaskEnum::timeCourse, and CExperiment::updateModelWithIndependentData().

Referenced by calculateStatistics().

◆ calculateCrossValidation()

bool CFitProblem::calculateCrossValidation ( )
private

Do the calculation for the cross validation based on the solution variables and determine whether to continue parameter fitting

Returns
bool continue

References CMathContainer::applyUpdateSequence(), CMatrix< CType >::array(), CVectorCore< CType >::array(), C_FLOAT64, checkFunctionalConstraints(), COptProblem::sCounter::Counter, COptProblem::sCounter::FailedCounterException, COptProblem::sCounter::FailedCounterNaN, CMathContainer::getCompleteInitialState(), CExperimentSet::getDataPointCount(), CExperimentSet::getExperiment(), CExperimentSet::getExperimentCount(), CExperiment::getExperimentType(), CCopasiMessage::getLastMessage(), CExperiment::getNumDataRows(), CCopasiTask::getProblem(), CCrossValidationSet::getThreshold(), CExperiment::getTimeData(), CCrossValidationSet::getWeight(), CExperiment::initExtendedTimeSeries(), mCompleteInitialState, COptProblem::mCounters, mCrossValidationConstraints, mCrossValidationConstraintUpdates, mCrossValidationDependentValues, mCrossValidationInitialUpdates, mCrossValidationObjective, mCrossValidationSolutionValue, mExperimentValues, COptProblem::mhCounter, COptProblem::mpConstraintItems, CCopasiProblem::mpContainer, mpCrossValidationSet, mpExperimentSet, mpInitialStateTime, CCopasiProblem::mProcessReport, mpSteadyState, mpTimeSens, mpTrajectory, COptProblem::mSolutionValue, COptProblem::mSolutionVariables, COptProblem::mStoreResults, mThresholdCounter, COptProblem::mWorstValue, CMatrix< CType >::numCols(), CSteadyStateTask::process(), CTimeSensTask::processStart(), CTrajectoryTask::processStart(), CTimeSensTask::processStep(), CTrajectoryTask::processStep(), CProcessReportLevel::progressItem(), CFitConstraint::resetConstraintViolation(), CMathContainer::setCompleteInitialState(), CVectorCore< CType >::size(), CTaskEnum::steadyState, CExperiment::storeExtendedTimeSeriesData(), CExperiment::sumOfSquares(), CExperiment::sumOfSquaresStore(), CTaskEnum::timeCourse, and CExperiment::updateModelWithIndependentData().

Referenced by calculateStatistics(), and setSolution().

◆ calculateStatistics()

bool CFitProblem::calculateStatistics ( const C_FLOAT64 factor = 1.0e-003,
const C_FLOAT64 resolution = 1.0e-009 
)
overridevirtual

Calculate the statistics for the problem

Parameters
constC_FLOAT64 & factor (Default: 1.0e-003)
constC_FLOAT64 & resolution (Default: 1.0e-009)

Reimplemented from COptProblem.

References CMatrix< CType >::array(), CVectorCore< CType >::array(), C_FLOAT64, calcCov(), calcEigen(), calcFIM(), calculate(), calculateCrossValidation(), CExperimentSet::calculateStatistics(), CCopasiTimer::calculateValue(), CExperiment::getDependentObjectsMap(), CExperimentSet::getExperiment(), CExperimentSet::getExperimentCount(), CExperiment::getNumDataRows(), CObjectInterface::getObjectDisplayName(), CDataObject::getObjectName(), CExperimentSet::getValidValueCount(), COptProblem::mCalculateValue, MCFitting, COptProblem::mContainerVariables, mCorrelation, COptProblem::mCPUTime, mCrossValidationDependentValues, mCrossValidationRMS, mCrossValidationSD, mCrossValidationSolutionValue, mDeltaResidualDeltaParameter, mDeltaResidualDeltaParameterScaled, mFisher, mFisherEigenvalues, mFisherEigenvectors, mFisherScaled, mFisherScaledEigenvalues, mFisherScaledEigenvectors, COptProblem::mGradient, COptProblem::mHaveStatistics, mJacTimeSens, mParameterSD, mpCrossValidationSet, mpDeltaResidualDeltaParameterMatrix, mpDeltaResidualDeltaParameterScaledMatrix, mpExperimentSet, COptProblem::mpParmCalculateStatistics, mpUseTimeSens, mResiduals, mRMS, mSD, COptProblem::mSolutionValue, COptProblem::mSolutionVariables, COptProblem::mStoreResults, COptProblem::mWorstValue, CDataArray::resize(), CMatrix< CType >::resize(), CVector< CType >::resize(), CDataArray::setAnnotationString(), setResidualsRequired(), CVectorCore< CType >::size(), CCopasiParameterGroup::size(), and CCopasiMessage::WARNING.

Referenced by CFitTask::process().

◆ checkFunctionalConstraints()

bool CFitProblem::checkFunctionalConstraints ( )
overridevirtual

◆ createObjectiveFunction()

bool CFitProblem::createObjectiveFunction ( )
privatevirtual

◆ createParameterSet()

void CFitProblem::createParameterSet ( const std::string &  Name)
protected

Create a parameter set with the given name and the current model values

Utility function creating a parameter set for each experiment

References CDataVectorN< CType >::add(), C_INVALID_INDEX, CModelParameterSet::createFromModel(), CDataVectorN< CType >::getIndex(), CMathContainer::getModel(), CModel::getModelParameterSets(), CCopasiProblem::mpContainer, and UTCTimeStamp().

Referenced by createParameterSets().

◆ createParameterSets()

◆ elevateChildren()

◆ fixBuild55()

void CFitProblem::fixBuild55 ( )

Fix files written with Version 4.10.55, which wrote the square root of user defined weights for the parameter fitting task

References CExperimentSet::fixBuild55(), mpCrossValidationSet, and mpExperimentSet.

Referenced by CFitTask::fixBuild55().

◆ getCorrelations()

CDataArray & CFitProblem::getCorrelations ( ) const

Retrieve the correlations of the solution variables.

Returns
CArrayAnnotation & variableCorrelations

References mpCorrelationMatrix.

◆ getCreateParameterSets()

const bool & CFitProblem::getCreateParameterSets ( ) const
Returns
the value of the 'Create Parameter Sets' parameter that controls whether parameter sets should be created automatically.

References mpCreateParameterSets.

◆ getCrossValidationRMS()

const C_FLOAT64 & CFitProblem::getCrossValidationRMS ( ) const

Retrieve the root mean square of the cross validation solution

Returns
const C_FLOAT64 & RMS

References mCrossValidationRMS.

◆ getCrossValidationSD()

const C_FLOAT64 & CFitProblem::getCrossValidationSD ( ) const

Retrieve the standard deviation of the cross validation solution

Returns
const C_FLOAT64 & RMS

References mCrossValidationSD.

◆ getCrossValidationSet() [1/2]

CCrossValidationSet & CFitProblem::getCrossValidationSet ( )

Retrieve the cross validation set.

Returns
const CCrossValidationSet & crossValidationSet

References mpCrossValidationSet.

◆ getCrossValidationSet() [2/2]

const CCrossValidationSet & CFitProblem::getCrossValidationSet ( ) const

◆ getCrossValidationSolutionValue()

const C_FLOAT64 & CFitProblem::getCrossValidationSolutionValue ( ) const

Retrieve the result for the cross validation solution

References mCrossValidationSolutionValue.

◆ getExperimentSet() [1/2]

CExperimentSet & CFitProblem::getExperimentSet ( )

Retrieve the experiment set.

Returns
const CExperimentSet & experiementSet

References mpExperimentSet.

◆ getExperimentSet() [2/2]

◆ getFisherInformation()

CDataArray & CFitProblem::getFisherInformation ( ) const

Retrieve the Fisher Information Matrix of the solution variables.

Returns
CArrayAnnotation & fisherInformationMatrix

References mpFisherMatrix.

◆ getFisherInformationEigenvalues()

CDataArray & CFitProblem::getFisherInformationEigenvalues ( ) const

Retrieve the Eigenvalues of the Fisher Information Matrix of the solution variables.

Returns
CArrayAnnotation & fimEigenvalues

References mpFisherEigenvaluesMatrix.

◆ getFisherInformationEigenvectors()

CDataArray & CFitProblem::getFisherInformationEigenvectors ( ) const

Retrieve the Eigenvectors corresponding to the Eigenvalues of the Fisher Information Matrix of the solution variables.

Returns
CArrayAnnotation & fimEigenvectors

References mpFisherEigenvectorsMatrix.

◆ getParameterEstimationJacobian()

CDataArray & CFitProblem::getParameterEstimationJacobian ( ) const

Retrieve the Jacobian of the parameter estimation.

References mpDeltaResidualDeltaParameterMatrix.

◆ getResiduals()

◆ getRMS()

const C_FLOAT64 & CFitProblem::getRMS ( ) const

Retrieve the root mean square of the objective value.

Returns
const C_FLOAT64 & RMS

References mRMS.

◆ getScaledFisherInformation()

CDataArray & CFitProblem::getScaledFisherInformation ( ) const

Retrieve the scaled Fisher Information Matrix of the solution variables.

Returns
CArrayAnnotation & fisherInformationMatrix

References mpFisherScaledMatrix.

◆ getScaledFisherInformationEigenvalues()

CDataArray & CFitProblem::getScaledFisherInformationEigenvalues ( ) const

Retrieve the Eigenvalues of the scaled Fisher Information Matrix of the solution variables.

Returns
CArrayAnnotation & fimEigenvalues

References mpFisherScaledEigenvaluesMatrix.

◆ getScaledFisherInformationEigenvectors()

CDataArray & CFitProblem::getScaledFisherInformationEigenvectors ( ) const

Retrieve the Eigenvectors corresponding to the Eigenvalues of the scaled Fisher Information Matrix of the solution variables.

Returns
CArrayAnnotation & fimEigenvectors

References mpFisherScaledEigenvectorsMatrix.

◆ getScaledParameterEstimationJacobian()

CDataArray & CFitProblem::getScaledParameterEstimationJacobian ( ) const

Retrieve the scaled Jacobian of the parameter estimation. It is scaled by parameter values

References mpDeltaResidualDeltaParameterScaledMatrix.

◆ getStdDeviation()

const C_FLOAT64 & CFitProblem::getStdDeviation ( ) const

Retrieve the std. deviation of the objective value.

Returns
const C_FLOAT64 & stdDeviation

References mSD.

◆ getTimeSensJac() [1/2]

CMatrix< C_FLOAT64 > & CFitProblem::getTimeSensJac ( )

References mJacTimeSens.

◆ getTimeSensJac() [2/2]

◆ getUseTimeSens()

const bool & CFitProblem::getUseTimeSens ( ) const

◆ getVariableStdDeviations()

const CVector< C_FLOAT64 > & CFitProblem::getVariableStdDeviations ( ) const

Retrieve the std. deviation for each solution variable.

Returns
const CVector< C_FLOAT64 > & variableStdDeviations

References mParameterSD.

◆ initialize()

bool CFitProblem::initialize ( )
overridevirtual

Do all necessary initialization so that calls to calculate will be successful. This is called once from CCopasiTask::process()

Returns
bool success

Reimplemented from COptProblem.

References CTimeSensProblem::addParameterCN(), CTimeSensProblem::addTargetCN(), CVectorCore< CType >::array(), C_FLOAT64, C_INVALID_INDEX, CTimeSensProblem::clearParameterCNs(), CTimeSensProblem::clearTargetCNs(), CExperimentSet::compile(), CTaskFactory::copy(), CCore::Default, fatalError, CMathContainer::getCompleteInitialState(), CMathContainer::getCountFixed(), CMathContainer::getCountFixedEventTargets(), CFitItem::getCrossValidation(), CFitItem::getCrossValidationCount(), CExperimentSet::getDataPointCount(), CExperimentSet::getDependentObjects(), CExperimentSet::getExperiment(), CFitItem::getExperiment(), CExperimentSet::getExperimentCount(), CFitItem::getExperimentCount(), CFitItem::getExperiments(), CCopasiMessage::getHighestSeverity(), CExperiment::getIndependentObjects(), CMathContainer::getInitialDependencies(), CMathContainer::getInitialState(), CMathContainer::getInitialStateObjects(), CCopasiMessage::getLastMessage(), CFitItem::getLocalValue(), COptItem::getObject(), CDataObject::getObjectAncestor(), COptItem::getObjectDisplayName(), CObjectInterface::GetObjectFromCN(), CCopasiTask::getProblem(), CMathContainer::getSimulationUpToDateObjects(), CMathContainer::getStateObjects(), CMathContainer::getTransientDependencies(), CMathDependencyGraph::getUpdateSequence(), CObjectInterface::getValuePointer(), CExperimentSet::hasDataForTaskType(), COptProblem::initialize(), CTimeSensTask::initialize(), CTrajectoryTask::initialize(), CSteadyStateTask::initialize(), CCopasiParameterGroup::insert(), CExperimentSet::keyToIndex(), MCCopasiMessage, mCompleteInitialState, COptProblem::mContainerVariables, COptProblem::mContainerVariablesAlgorithm, MCOptimization, mCorrelation, mCrossValidationConstraints, mCrossValidationConstraintUpdates, mCrossValidationDependentValues, mCrossValidationInitialUpdates, mCrossValidationObjective, mCrossValidationValues, mDeltaResidualDeltaParameter, mDeltaResidualDeltaParameterScaled, mExperimentConstraints, mExperimentConstraintUpdates, mExperimentDependentValues, mExperimentInitialUpdates, mExperimentValues, mFisher, mFisherEigenvalues, mFisherEigenvectors, mFisherScaled, mFisherScaledEigenvalues, mFisherScaledEigenvectors, COptProblem::mHaveStatistics, mJacTimeSens, COptProblem::mOptItemAlgorithm, COptProblem::mpConstraintItems, CCopasiProblem::mpContainer, mpCorrelationMatrix, mpCrossValidationSet, mpDeltaResidualDeltaParameterMatrix, mpDeltaResidualDeltaParameterScaledMatrix, mpExperimentSet, mpFisherEigenvaluesMatrix, mpFisherEigenvectorsMatrix, mpFisherMatrix, mpFisherScaledEigenvaluesMatrix, mpFisherScaledEigenvectorsMatrix, mpFisherScaledMatrix, mpInitialStateTime, COptProblem::mpOptItems, mpParmSteadyStateCN, mpParmTimeCourseCN, mpParmTimeSensCN, CCopasiProblem::mProcessReport, mpSteadyState, mpTimeSens, mpTrajectory, mpUseTimeSens, COptProblem::mSolutionVariables, COptProblem::mStoreResults, mThresholdCounter, COptProblem::mWorstValue, CCopasiTask::NO_OUTPUT, pdelete, CCopasiMessage::peekLastMessage(), CDataArray::resize(), CMatrix< CType >::resize(), CVector< CType >::resize(), CDataArray::setAnnotationString(), CCopasiTask::setCallBack(), CCopasiTask::setMathContainer(), setResidualsRequired(), COptProblem::setSubtaskType(), CCopasiTask::setUpdateModel(), CVectorCore< CType >::size(), CTaskEnum::steadyState, CTaskEnum::timeCourse, CTaskEnum::timeSens, CFitItem::updateBounds(), CCore::UpdateMoieties, and CCopasiMessage::WARNING.

◆ initializeParameter()

◆ initObjects()

◆ print()

void CFitProblem::print ( std::ostream *  ostream) const
overridevirtual

This is the output method for any object. The default implementation provided with CDataObject uses the ostream operator<< of the object to print the object.To override this default behavior one needs to reimplement the virtual print function.

Parameters
std::ostream* ostream

Reimplemented from COptProblem.

◆ printResult()

◆ restore() [1/2]

bool CFitProblem::restore ( const bool &  updateModel)
overridevirtual

Do all necessary restore procedures so that the model is in the same state as before

Parameters
constbool & updateModel
Returns
bool success

Reimplemented from COptProblem.

References CExperimentSet::getExperiment(), mpExperimentSet, COptProblem::mSolutionValue, COptProblem::mWorstValue, and CCopasiParameterGroup::size().

◆ restore() [2/2]

◆ setCallBack()

bool CFitProblem::setCallBack ( CProcessReportLevel  callBack)
overridevirtual

Set the call back of the problem

Parameters
CProcessReport* pCallBack
Returns
bool success

Reimplemented from COptProblem.

References CCopasiProblem::mProcessReport, mpSteadyState, mpTimeSens, mpTrajectory, CCopasiTask::setCallBack(), and COptProblem::setCallBack().

◆ setCreateParameterSets()

void CFitProblem::setCreateParameterSets ( const bool &  create)

Sets the 'Create Parameter Sets' parameter. When set it will create new model parameter sets for each experiment after a run.

References mpCreateParameterSets.

◆ setResidualsRequired()

◆ setSolution()

bool CFitProblem::setSolution ( const C_FLOAT64 value,
const CVector< C_FLOAT64 > &  variables,
const bool &  algorithmOrder = false 
)
overridevirtual

Set the solution.

Parameters
constC_FLOAT64 & value
constCVector< C_FLOAT64 > & variables
constbool & algorithmOrder (default: false)
Returns
bool continue;

Reimplemented from COptProblem.

References CVectorCore< CType >::begin(), C_FLOAT64, calculateCrossValidation(), CVectorCore< CType >::end(), CExperimentSet::getExperimentCount(), COptProblem::mContainerVariables, mpCrossValidationSet, COptProblem::mSolutionVariables, and COptProblem::setSolution().

◆ setUseTimeSens()

void CFitProblem::setUseTimeSens ( bool  value)

References mpUseTimeSens.

◆ updateContainer()

void CFitProblem::updateContainer ( const bool &  update)
overrideprotectedvirtual

Do all necessary restore procedures for the container is in the same state as before or the new state if update is true.

Parameters
constbool & update

Reimplemented from COptProblem.

References CMatrix< CType >::array(), C_FLOAT64, CExperimentSet::getExperiment(), CExperimentSet::getExperimentCount(), CFitItem::getLocalValue(), mExperimentValues, mpExperimentSet, COptProblem::mpOptItems, and COptProblem::updateContainer().

Referenced by createParameterSets().

◆ updateInitialState()

void CFitProblem::updateInitialState ( )

Fetch a new initial state from the model.

References CMathContainer::getCompleteInitialState(), mCompleteInitialState, and CCopasiProblem::mpContainer.

Referenced by CFitTask::process().

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const CFitProblem o 
)
friend

Output stream operator

Parameters
ostream& os
constCFitProblem & A
Returns
ostream & os

Member Data Documentation

◆ mCompleteInitialState

CVector< C_FLOAT64 > CFitProblem::mCompleteInitialState
private

The initial state of the model prior to any modification

Referenced by calculate(), calculateCrossValidation(), initialize(), and updateInitialState().

◆ mCorrelation

CMatrix< C_FLOAT64 > CFitProblem::mCorrelation
private

The parameter correlation matrix

Referenced by calculateStatistics(), initialize(), initObjects(), and printResult().

◆ mCrossValidationConstraints

CMatrix< CFitConstraint * > CFitProblem::mCrossValidationConstraints
private

Matrix of constraints for each experiment.

Referenced by calculateCrossValidation(), and initialize().

◆ mCrossValidationConstraintUpdates

CVector< CCore::CUpdateSequence > CFitProblem::mCrossValidationConstraintUpdates
private

A vector of refresh methods which contains the sequence of refresh methods to update the constraint values for each cross validation.

Referenced by calculateCrossValidation(), and initialize().

◆ mCrossValidationDependentValues

CVector< C_FLOAT64 > CFitProblem::mCrossValidationDependentValues
private

The simulation values for the experiments.

Referenced by calculateCrossValidation(), calculateStatistics(), and initialize().

◆ mCrossValidationInitialUpdates

CVector< CCore::CUpdateSequence > CFitProblem::mCrossValidationInitialUpdates
private

A vector of refresh methods which contains the sequence of refresh methods to update the initial values for each cross validation.

Referenced by calculateCrossValidation(), and initialize().

◆ mCrossValidationObjective

C_FLOAT64 CFitProblem::mCrossValidationObjective
private

The objective value of the cross validation used to determine when to stop parameter estimation due to overfitting

Referenced by calculateCrossValidation(), initialize(), and initObjects().

◆ mCrossValidationRMS

C_FLOAT64 CFitProblem::mCrossValidationRMS
private

The RMS of the cross validation set.

Referenced by calculateStatistics(), getCrossValidationRMS(), and initObjects().

◆ mCrossValidationSD

C_FLOAT64 CFitProblem::mCrossValidationSD
private

The standard deviation of the cross validation set.

Referenced by calculateStatistics(), getCrossValidationSD(), and initObjects().

◆ mCrossValidationSolutionValue

C_FLOAT64 CFitProblem::mCrossValidationSolutionValue
private

The objective value of the cross validation set.

Referenced by calculateCrossValidation(), calculateStatistics(), getCrossValidationSolutionValue(), and initObjects().

◆ mCrossValidationValues

CMatrix< C_FLOAT64 * > CFitProblem::mCrossValidationValues
private

Matrix of update methods for items for each cross validation.

Referenced by initialize().

◆ mDeltaResidualDeltaParameter

CMatrix< C_FLOAT64 > CFitProblem::mDeltaResidualDeltaParameter
private

the Jacobian of tha parameter estimation, i.e. the derivatives of the residuals with respect to the parameters

Referenced by calculateStatistics(), initialize(), and initObjects().

◆ mDeltaResidualDeltaParameterScaled

CMatrix< C_FLOAT64 > CFitProblem::mDeltaResidualDeltaParameterScaled
private

the scaled Jacobian of tha parameter estimation, i.e. the derivatives of the residuals with respect to the parameters, scaled by parameter value

Referenced by calculateStatistics(), initialize(), and initObjects().

◆ mExperimentConstraints

CMatrix< CFitConstraint * > CFitProblem::mExperimentConstraints
private

Matrix of constraints for each experiment.

Referenced by calculate(), and initialize().

◆ mExperimentConstraintUpdates

CVector< CCore::CUpdateSequence > CFitProblem::mExperimentConstraintUpdates
private

A vector of refresh methods which contains the sequence of refresh methods to update the constraint values for each experiment.

Referenced by calculate(), and initialize().

◆ mExperimentDependentValues

CVector< C_FLOAT64 > CFitProblem::mExperimentDependentValues
private

The simulation values for the experiments.

Referenced by calculate(), and initialize().

◆ mExperimentInitialUpdates

CVector< CCore::CUpdateSequence > CFitProblem::mExperimentInitialUpdates
private

A vector of refresh methods which contains the sequence of refresh methods to update the initial values for each experiment.

Referenced by calculate(), createParameterSets(), initialize(), and restore().

◆ mExperimentValues

CMatrix< C_FLOAT64 * > CFitProblem::mExperimentValues
private

Pointer to the values which need to be updated for each experiment.

Referenced by calculate(), calculateCrossValidation(), createParameterSets(), initialize(), restore(), and updateContainer().

◆ mFisher

CMatrix< C_FLOAT64 > CFitProblem::mFisher
private

The Fisher information or parameter correlation matrix

Referenced by calculateStatistics(), initialize(), initObjects(), and printResult().

◆ mFisherEigenvalues

CMatrix< C_FLOAT64 > CFitProblem::mFisherEigenvalues
private

The Fisher information Matrix Eigenvalues and corresponding Eigenvectors

Referenced by calculateStatistics(), initialize(), initObjects(), and printResult().

◆ mFisherEigenvectors

CMatrix< C_FLOAT64 > CFitProblem::mFisherEigenvectors
private

◆ mFisherScaled

CMatrix< C_FLOAT64 > CFitProblem::mFisherScaled
private

The Fisher information or parameter correlation matrix scaled to parameter values

Referenced by calculateStatistics(), initialize(), initObjects(), and printResult().

◆ mFisherScaledEigenvalues

CMatrix< C_FLOAT64 > CFitProblem::mFisherScaledEigenvalues
private

The scaled Fisher information Matrix Eigenvalues and corresponding Eigenvectors

Referenced by calculateStatistics(), initialize(), initObjects(), and printResult().

◆ mFisherScaledEigenvectors

CMatrix< C_FLOAT64 > CFitProblem::mFisherScaledEigenvectors
private

◆ mJacTimeSens

CMatrix< C_FLOAT64 > CFitProblem::mJacTimeSens
private

◆ mParameterSD

CVector< C_FLOAT64 > CFitProblem::mParameterSD
private

The vector of standard deviations of the parameters

Referenced by calculateStatistics(), getVariableStdDeviations(), and printResult().

◆ mpCorrelationMatrix

CDataArray* CFitProblem::mpCorrelationMatrix
private

◆ mpCorrelationMatrixInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpCorrelationMatrixInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpCreateParameterSets

bool* CFitProblem::mpCreateParameterSets
private

A pointer to the value of the CCopasiParameter holding Create Parameter Sets

Referenced by createParameterSets(), getCreateParameterSets(), initializeParameter(), and setCreateParameterSets().

◆ mpCrossValidationSet

CCrossValidationSet* CFitProblem::mpCrossValidationSet
private

◆ mpDeltaResidualDeltaParameterInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpDeltaResidualDeltaParameterInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpDeltaResidualDeltaParameterMatrix

CDataArray* CFitProblem::mpDeltaResidualDeltaParameterMatrix
private

◆ mpDeltaResidualDeltaParameterScaledInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpDeltaResidualDeltaParameterScaledInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpDeltaResidualDeltaParameterScaledMatrix

CDataArray* CFitProblem::mpDeltaResidualDeltaParameterScaledMatrix
private

◆ mpExperimentSet

◆ mpFisherEigenvaluesMatrix

CDataArray* CFitProblem::mpFisherEigenvaluesMatrix
private

◆ mpFisherEigenvaluesMatrixInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpFisherEigenvaluesMatrixInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpFisherEigenvectorsMatrix

CDataArray* CFitProblem::mpFisherEigenvectorsMatrix
private

◆ mpFisherEigenvectorsMatrixInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpFisherEigenvectorsMatrixInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpFisherMatrix

CDataArray* CFitProblem::mpFisherMatrix
private

◆ mpFisherMatrixInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpFisherMatrixInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpFisherScaledEigenvaluesMatrix

CDataArray* CFitProblem::mpFisherScaledEigenvaluesMatrix
private

◆ mpFisherScaledEigenvaluesMatrixInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpFisherScaledEigenvaluesMatrixInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpFisherScaledEigenvectorsMatrix

CDataArray* CFitProblem::mpFisherScaledEigenvectorsMatrix
private

◆ mpFisherScaledEigenvectorsMatrixInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpFisherScaledEigenvectorsMatrixInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpFisherScaledMatrix

CDataArray* CFitProblem::mpFisherScaledMatrix
private

◆ mpFisherScaledMatrixInterface

CMatrixInterface< CMatrix< C_FLOAT64 > >* CFitProblem::mpFisherScaledMatrixInterface
private

Referenced by initObjects(), and ~CFitProblem().

◆ mpInitialStateTime

C_FLOAT64* CFitProblem::mpInitialStateTime
private

A pointer to the time of the container

Referenced by calculate(), calculateCrossValidation(), and initialize().

◆ mpParmSteadyStateCN

std::string* CFitProblem::mpParmSteadyStateCN
private

A pointer to the value of the CCopasiParameter holding the Steady-State CN

Referenced by elevateChildren(), initialize(), and initializeParameter().

◆ mpParmTimeCourseCN

std::string* CFitProblem::mpParmTimeCourseCN
private

A pointer to the value of the CCopasiParameter holding the Time Course CN

Referenced by elevateChildren(), initialize(), and initializeParameter().

◆ mpParmTimeSensCN

std::string* CFitProblem::mpParmTimeSensCN
private

◆ mpSteadyState

CSteadyStateTask* CFitProblem::mpSteadyState
private

Pointer to CSteadyStateTask. To be used in calculate() to select between trajectory and steady state method

Referenced by calculate(), calculateCrossValidation(), initialize(), restore(), and setCallBack().

◆ mpTimeSens

CTimeSensTask* CFitProblem::mpTimeSens
private

◆ mpTrajectory

CTrajectoryTask* CFitProblem::mpTrajectory
private

Pointer to CTrajectory. To be used in calculate() to select between trajectory and steady state method

Referenced by calculate(), calculateCrossValidation(), initialize(), restore(), and setCallBack().

◆ mpUseTimeSens

bool* CFitProblem::mpUseTimeSens
private

A flag indicating whether or not to use time sens task

Referenced by calculate(), calculateStatistics(), getUseTimeSens(), initialize(), initializeParameter(), and setUseTimeSens().

◆ mResiduals

CVector< C_FLOAT64 > CFitProblem::mResiduals
private

Matrix of the residuals.

Referenced by calculate(), calculateStatistics(), getResiduals(), and setResidualsRequired().

◆ mRMS

C_FLOAT64 CFitProblem::mRMS
private

The root mean square of the solution

Referenced by calculateStatistics(), getRMS(), and initObjects().

◆ mSD

C_FLOAT64 CFitProblem::mSD
private

The standard deviation of the solution

Referenced by calcCov(), calculateStatistics(), getStdDeviation(), initObjects(), and printResult().

◆ mThresholdCounter

unsigned C_INT32 CFitProblem::mThresholdCounter
private

A counter to determine whether the threshold is reached.

Referenced by calculateCrossValidation(), and initialize().


The documentation for this class was generated from the following files: