COPASI API
4.16.103
|
#include <COptMethod.h>
Public Member Functions | |
COptMethod (const COptMethod &src, const CCopasiContainer *pParent=NULL) | |
virtual bool | initialize () |
bool | isBounded (void) |
virtual bool | isValidProblem (const CCopasiProblem *pProblem) |
virtual bool | optimise () |
void | setProblem (COptProblem *problem) |
virtual | ~COptMethod () |
![]() | |
CCopasiMethod (const CCopasiMethod &src, const CCopasiContainer *pParent=NULL) | |
const CCopasiMethod::SubType & | getSubType () const |
const CCopasiTask::Type & | getType () const |
virtual void | load (CReadConfig &configBuffer, CReadConfig::Mode mode=CReadConfig::SEARCH) |
virtual void | print (std::ostream *ostream) const |
virtual void | printResult (std::ostream *ostream) const |
virtual bool | setCallBack (CProcessReport *pCallBack) |
virtual | ~CCopasiMethod () |
![]() | |
bool | addGroup (const std::string &name) |
bool | addParameter (const CCopasiParameter ¶meter) |
bool | addParameter (const std::string &name, const CCopasiParameter::Type type) |
template<class CType > | |
bool | addParameter (const std::string &name, const CCopasiParameter::Type type, const CType &value) |
void | addParameter (CCopasiParameter *pParameter) |
CCopasiParameterGroup * | assertGroup (const std::string &name) |
template<class CType > | |
CCopasiParameter * | assertParameter (const std::string &name, const CCopasiParameter::Type type, const CType &defaultValue) |
index_iterator | beginIndex () const |
name_iterator | beginName () const |
CCopasiParameterGroup (const CCopasiParameterGroup &src, const CCopasiContainer *pParent=NULL) | |
CCopasiParameterGroup (const std::string &name, const CCopasiContainer *pParent=NULL, const std::string &objectType="ParameterGroup") | |
void | clear () |
virtual bool | elevateChildren () |
index_iterator | endIndex () const |
name_iterator | endName () const |
CCopasiParameterGroup * | getGroup (const std::string &name) |
const CCopasiParameterGroup * | getGroup (const std::string &name) const |
CCopasiParameterGroup * | getGroup (const size_t &index) |
const CCopasiParameterGroup * | getGroup (const size_t &index) const |
size_t | getIndex (const std::string &name) const |
std::string | getKey (const std::string &name) const |
std::string | getKey (const size_t &index) const |
virtual const std::string & | getName (const size_t &index) const |
virtual const CObjectInterface * | getObject (const CCopasiObjectName &cn) const |
CCopasiParameter * | getParameter (const std::string &name) |
const CCopasiParameter * | getParameter (const std::string &name) const |
CCopasiParameter * | getParameter (const size_t &index) |
const CCopasiParameter * | getParameter (const size_t &index) const |
CCopasiParameter::Type | getType (const std::string &name) const |
CCopasiParameter::Type | getType (const size_t &index) const |
std::string | getUniqueParameterName (const CCopasiParameter *pParameter) const |
const CCopasiParameter::Value & | getValue (const std::string &name) const |
const CCopasiParameter::Value & | getValue (const size_t &index) const |
CCopasiParameter::Value & | getValue (const std::string &name) |
CCopasiParameter::Value & | getValue (const size_t &index) |
CCopasiParameterGroup & | operator= (const CCopasiParameterGroup &rhs) |
bool | removeParameter (const std::string &name) |
bool | removeParameter (const size_t &index) |
template<class CType > | |
bool | setValue (const std::string &name, const CType &value) |
template<class CType > | |
bool | setValue (const size_t &index, const CType &value) |
size_t | size () const |
bool | swap (const size_t &iFrom, const size_t &iTo) |
bool | swap (index_iterator &from, index_iterator &to) |
virtual | ~CCopasiParameterGroup () |
![]() | |
CCopasiParameter (const CCopasiParameter &src, const CCopasiContainer *pParent=NULL) | |
CCopasiParameter (const std::string &name, const Type &type, const void *pValue=NULL, const CCopasiContainer *pParent=NULL, const std::string &objectType="Parameter") | |
virtual CCopasiObjectName | getCN () const |
virtual const std::string & | getKey () const |
virtual std::string | getObjectDisplayName (bool regular=true, bool richtext=false) const |
const CCopasiParameter::Type & | getType () const |
const Value & | getValue () const |
Value & | getValue () |
virtual void * | getValuePointer () const |
CCopasiObject * | getValueReference () const |
bool | isValidValue (const C_FLOAT64 &value) const |
bool | isValidValue (const C_INT32 &value) const |
bool | isValidValue (const unsigned C_INT32 &value) const |
bool | isValidValue (const bool &value) const |
bool | isValidValue (const std::string &value) const |
bool | isValidValue (const CCopasiObjectName &value) const |
bool | isValidValue (const std::vector< CCopasiParameter * > &value) const |
CCopasiParameter & | operator= (const CCopasiParameter &rhs) |
template<class CType > | |
bool | setValue (const CType &value) |
bool | setValue (const std::vector< CCopasiParameter * > &value) |
virtual | ~CCopasiParameter () |
![]() | |
virtual bool | add (CCopasiObject *pObject, const bool &adopt=true) |
CCopasiContainer (const std::string &name, const CCopasiContainer *pParent=NULL, const std::string &type="CN", const unsigned C_INT32 &flag=CCopasiObject::Container) | |
CCopasiContainer (const CCopasiContainer &src, const CCopasiContainer *pParent=NULL) | |
virtual std::string | getChildObjectUnits (const CCopasiObject *pObject) const |
virtual const objectMap & | getObjects () const |
virtual std::string | getUnits () const |
virtual const CCopasiObject * | getValueObject () const |
virtual bool | remove (CCopasiObject *pObject) |
virtual | ~CCopasiContainer () |
![]() | |
void | addDirectDependency (const CCopasiObject *pObject) |
CCopasiObject (const CCopasiObject &src, const CCopasiContainer *pParent=NULL) | |
void | clearDirectDependencies () |
void | clearRefresh () |
bool | dependsOn (DataObjectSet candidates, const DataObjectSet &context=DataObjectSet()) const |
void | getAllDependencies (DataObjectSet &dependencies, const DataObjectSet &context) const |
virtual const DataObjectSet & | getDirectDependencies (const DataObjectSet &context=DataObjectSet()) const |
CCopasiContainer * | getObjectAncestor (const std::string &type) const |
CCopasiDataModel * | getObjectDataModel () |
const CCopasiDataModel * | getObjectDataModel () const |
const std::string & | getObjectName () const |
CCopasiContainer * | getObjectParent () const |
const std::string & | getObjectType () const |
virtual const CObjectInterface::ObjectSet & | getPrerequisites () const |
virtual Refresh * | getRefresh () const |
UpdateMethod * | getUpdateMethod () const |
bool | hasCircularDependencies (DataObjectSet &candidates, DataObjectSet &verified, const DataObjectSet &context) const |
bool | hasUpdateMethod () const |
bool | isArray () const |
bool | isContainer () const |
bool | isDataModel () const |
bool | isMatrix () const |
bool | isNameVector () const |
bool | isNonUniqueName () const |
virtual bool | isPrerequisiteForContext (const CObjectInterface *pObject, const CMath::SimulationContextFlag &context, const CObjectInterface::ObjectSet &changedObjects) const |
bool | isReference () const |
bool | isRoot () const |
bool | isSeparator () const |
bool | isStaticString () const |
bool | isValueBool () const |
bool | isValueDbl () const |
bool | isValueInt () const |
bool | isValueInt64 () const |
bool | isValueString () const |
bool | isVector () const |
virtual bool | mustBeDeleted (const DataObjectSet &deletedObjects) const |
void | removeDirectDependency (const CCopasiObject *pObject) |
void | setDirectDependencies (const DataObjectSet &directDependencies) |
bool | setObjectName (const std::string &name) |
virtual bool | setObjectParent (const CCopasiContainer *pParent) |
void | setObjectValue (const C_FLOAT64 &value) |
void | setObjectValue (const C_INT32 &value) |
void | setObjectValue (const bool &value) |
template<class CType > | |
void | setRefresh (CType *pType, void(CType::*method)(void)) |
template<class CType > | |
void | setUpdateMethod (CType *pType, void(CType::*method)(const C_FLOAT64 &)) |
template<class CType > | |
void | setUpdateMethod (CType *pType, void(CType::*method)(const C_INT32 &)) |
template<class CType > | |
void | setUpdateMethod (CType *pType, void(CType::*method)(const bool &)) |
virtual | ~CCopasiObject () |
![]() | |
CObjectInterface () | |
virtual | ~CObjectInterface () |
Static Public Member Functions | |
static COptMethod * | createMethod (CCopasiMethod::SubType subType=CCopasiMethod::RandomSearch) |
![]() | |
static std::vector< Refresh * > | buildUpdateSequence (const DataObjectSet &objects, const DataObjectSet &uptoDateObjects, const DataObjectSet &context=DataObjectSet()) |
static void | setRenameHandler (CRenameHandler *rh) |
Protected Member Functions | |
virtual bool | cleanup () |
COptMethod (const CCopasiTask::Type &taskType, const SubType &subType, const CCopasiContainer *pParent=NULL) | |
![]() | |
CCopasiMethod (const CCopasiTask::Type &taskType, const SubType &subType, const CCopasiContainer *pParent=NULL) | |
![]() | |
CCopasiParameterGroup () | |
![]() | |
template<class CType > | |
CCopasiObject * | addMatrixReference (const std::string &name, CType &reference, const unsigned C_INT32 &flag=0) |
template<class CType > | |
CCopasiObject * | addObjectReference (const std::string &name, CType &reference, const unsigned C_INT32 &flag=0) |
template<class CType > | |
CCopasiObject * | addVectorReference (const std::string &name, CType &reference, const unsigned C_INT32 &flag=0) |
void | initObjects () |
![]() | |
CCopasiObject () | |
CCopasiObject (const std::string &name, const CCopasiContainer *pParent=NULL, const std::string &type="CN", const unsigned C_INT32 &flag=0) | |
Protected Attributes | |
const bool | mBounds |
const std::vector< COptItem * > * | mpOptContraints |
const std::vector< COptItem * > * | mpOptItem |
COptProblem * | mpOptProblem |
COptTask * | mpParentTask |
const std::vector < UpdateMethod * > * | mpSetCalculateVariable |
![]() | |
CProcessReport * | mpCallBack |
![]() | |
std::string | mKey |
CCopasiObject * | mpValueReference |
size_t | mSize |
Value | mValue |
![]() | |
objectMap | mObjects |
Private Member Functions | |
COptMethod () | |
Definition at line 46 of file COptMethod.h.
|
private |
Default constructor.
Definition at line 133 of file COptMethod.cpp.
References CONSTRUCTOR_TRACE.
|
protected |
Specific constructor
const | CCopasiTask::Type & type |
const | CCopasiMethod::SubType & subType |
const | CCopasiContainer * pParent (default: NULL) |
Definition at line 143 of file COptMethod.cpp.
References CONSTRUCTOR_TRACE.
COptMethod::COptMethod | ( | const COptMethod & | src, |
const CCopasiContainer * | pParent = NULL |
||
) |
Copy constructor
const | COptMethod & src |
const | CCopasiContainer * pParent (default: NULL) |
Definition at line 155 of file COptMethod.cpp.
References CONSTRUCTOR_TRACE.
|
virtual |
|
protectedvirtual |
Cleanup arrays and pointers.
Reimplemented in COptMethodSS, COptMethodPraxis, COptMethodTruncatedNewton, COptMethodCoranaWalk, COptMethodLevenbergMarquardt, COptMethodNelderMead, COptMethodSA, COptMethodGASR, COptMethodHookeJeeves, COptMethodGA, COptMethodPS, COptMethodSRES, COptMethodDE, COptMethodSteepestDescent, and COptMethodEP.
Definition at line 215 of file COptMethod.cpp.
Referenced by COptMethodStatistics::initialize(), CRandomSearch::initialize(), COptMethodStatistics::~COptMethodStatistics(), and CRandomSearch::~CRandomSearch().
|
static |
Create a optimization method. Note: the returned object has to be released after use with delete
COptMethod class This class describes the interface to all optimization methods. The various method like RandomSearch or GA have to be derived from this class.
Created for COPASI by Stefan Hoops 2002
Definition at line 50 of file COptMethod.cpp.
References CCopasiMethod::CoranaWalk, CCopasiMethod::DifferentialEvolution, CCopasiMethod::EvolutionaryProgram, CCopasiMethod::GeneticAlgorithm, CCopasiMethod::GeneticAlgorithmSR, CCopasiMethod::HookeJeeves, CCopasiMethod::LevenbergMarquardt, CCopasiMethod::NelderMead, CCopasiMethod::ParticleSwarm, CCopasiMethod::Praxis, CCopasiMethod::RandomSearch, CCopasiMethod::ScatterSearch, CCopasiMethod::SimulatedAnnealing, CCopasiMethod::SRES, CCopasiMethod::Statistics, CCopasiMethod::SteepestDescent, and CCopasiMethod::TruncatedNewton.
Referenced by COptTask::COptTask(), CFitMethod::createMethod(), CQOptimizationWidget::createMethod(), COptTask::createMethod(), COptMethodSS::initialize(), and TestOptimization().
|
virtual |
Initialize arrays and pointer.
Reimplemented in COptMethodSS, COptMethodPraxis, COptMethodTruncatedNewton, COptMethodCoranaWalk, COptMethodLevenbergMarquardt, COptMethodNelderMead, COptMethodSA, COptMethodGASR, COptMethodHookeJeeves, COptMethodGA, COptMethodPS, CFitMethod, COptMethodSRES, COptMethodDE, COptMethodStatistics, CRandomSearch, COptMethodSteepestDescent, and COptMethodEP.
Definition at line 189 of file COptMethod.cpp.
References COptProblem::getCalculateVariableUpdateMethods(), COptProblem::getConstraintList(), CCopasiObject::getObjectParent(), COptProblem::getOptItemList(), mpOptContraints, mpOptItem, mpOptProblem, mpParentTask, and mpSetCalculateVariable.
Referenced by COptMethodEP::initialize(), COptMethodSteepestDescent::initialize(), CRandomSearch::initialize(), COptMethodStatistics::initialize(), COptMethodDE::initialize(), COptMethodSRES::initialize(), COptMethodGA::initialize(), COptMethodPS::initialize(), CFitMethod::initialize(), COptMethodGASR::initialize(), COptMethodHookeJeeves::initialize(), COptMethodLevenbergMarquardt::initialize(), COptMethodSA::initialize(), COptMethodCoranaWalk::initialize(), COptMethodNelderMead::initialize(), COptMethodTruncatedNewton::initialize(), COptMethodPraxis::initialize(), and COptMethodSS::initialize().
bool COptMethod::isBounded | ( | void | ) |
Returns True if this method is capable of handling adjustable parameter boundary constraints, False otherwise
Definition at line 178 of file COptMethod.cpp.
References mBounds.
|
virtual |
Check if the method is suitable for this problem
Reimplemented from CCopasiMethod.
Reimplemented in CFitMethod.
Definition at line 219 of file COptMethod.cpp.
References CCopasiMessage::EXCEPTION, and CCopasiMethod::isValidProblem().
Referenced by CFitMethod::isValidProblem().
|
virtual |
Execute the optimization algorithm calling simulation routine when needed. It is noted that this procedure can give feedback of its progress by the callback function set with SetCallback. @ return success;
Reimplemented in COptMethodHGASA, COptMethodEP2, CRandomSearch, COptMethodEP, COptMethodSteepestDescent, COptMethodStatistics, COptMethodPraxis, COptMethodTruncatedNewton, COptMethodCoranaWalk, COptMethodLevenbergMarquardt, COptMethodNelderMead, COptMethodSA, COptMethodGASR, COptMethodHookeJeeves, COptMethodGA, COptMethodPS, COptMethodSRES, COptMethodSS, CRandomSearchMaster, and COptMethodDE.
Definition at line 184 of file COptMethod.cpp.
Referenced by COptMethodSS::localmin(), CFitTask::process(), COptTask::process(), and TestOptimization().
void COptMethod::setProblem | ( | COptProblem * | problem | ) |
Set the problem to be optmised
COptProblem * | problem |
Definition at line 170 of file COptMethod.cpp.
References mpOptProblem.
Referenced by COptTask::initialize(), COptMethodSS::initialize(), and TestOptimization().
|
protected |
Definition at line 60 of file COptMethod.h.
Referenced by isBounded().
|
protected |
A vector of pointers to the functional constraints
Definition at line 75 of file COptMethod.h.
Referenced by initialize(), COptMethodSRES::phi(), and COptMethodGASR::phi().
|
protected |
A vector of pointers to the optimization parameter
Definition at line 70 of file COptMethod.h.
Referenced by COptMethodPS::create(), COptMethodSteepestDescent::gradient(), COptMethodEP::initialize(), COptMethodSteepestDescent::initialize(), COptMethodStatistics::initialize(), CRandomSearch::initialize(), COptMethodDE::initialize(), COptMethodSRES::initialize(), COptMethodGA::initialize(), COptMethodPS::initialize(), COptMethodHookeJeeves::initialize(), COptMethodGASR::initialize(), COptMethodSA::initialize(), COptMethodLevenbergMarquardt::initialize(), COptMethodNelderMead::initialize(), COptMethodCoranaWalk::initialize(), COptMethodPraxis::initialize(), COptMethodTruncatedNewton::initialize(), COptMethodSS::initialize(), initialize(), COptMethodPS::move(), COptMethodPS::optimise(), COptMethodSteepestDescent::optimise(), COptMethodSRES::phi(), and COptMethodGASR::phi().
|
protected |
Definition at line 56 of file COptMethod.h.
Referenced by COptMethodPS::create(), COptMethodEP::evaluate(), COptMethodStatistics::evaluate(), COptMethodSteepestDescent::evaluate(), CRandomSearch::evaluate(), COptMethodDE::evaluate(), COptMethodSRES::evaluate(), COptMethodPS::evaluate(), COptMethodGA::evaluate(), COptMethodHookeJeeves::evaluate(), COptMethodLevenbergMarquardt::evaluate(), COptMethodCoranaWalk::evaluate(), COptMethodNelderMead::evaluate(), COptMethodGASR::evaluate(), COptMethodSA::evaluate(), COptMethodSS::evaluate(), COptMethodPraxis::evaluate(), COptMethodTruncatedNewton::evaluate(), COptMethodPraxis::evaluateFunction(), COptMethodLevenbergMarquardt::hessian(), COptMethodLevenbergMarquardt::initialize(), COptMethodSS::initialize(), initialize(), COptMethodSS::localmin(), COptMethodPS::move(), COptMethodDE::optimise(), COptMethodSRES::optimise(), COptMethodSS::optimise(), COptMethodGA::optimise(), COptMethodPS::optimise(), COptMethodGASR::optimise(), COptMethodHookeJeeves::optimise(), COptMethodNelderMead::optimise(), COptMethodLevenbergMarquardt::optimise(), COptMethodCoranaWalk::optimise(), COptMethodSA::optimise(), COptMethodTruncatedNewton::optimise(), COptMethodPraxis::optimise(), COptMethodStatistics::optimise(), COptMethodSteepestDescent::optimise(), COptMethodEP::optimise(), CRandomSearch::optimise(), COptMethodEP2::optimise(), setProblem(), and COptMethodTruncatedNewton::sFun().
|
protected |
Definition at line 58 of file COptMethod.h.
Referenced by COptMethodPS::create(), COptMethodPraxis::evaluateFunction(), initialize(), COptMethodPS::move(), COptMethodDE::optimise(), COptMethodSRES::optimise(), COptMethodSS::optimise(), COptMethodGA::optimise(), COptMethodPS::optimise(), COptMethodGASR::optimise(), COptMethodHookeJeeves::optimise(), COptMethodLevenbergMarquardt::optimise(), COptMethodNelderMead::optimise(), COptMethodCoranaWalk::optimise(), COptMethodSA::optimise(), COptMethodPraxis::optimise(), COptMethodTruncatedNewton::optimise(), COptMethodStatistics::optimise(), COptMethodSteepestDescent::optimise(), COptMethodEP::optimise(), CRandomSearch::optimise(), and COptMethodTruncatedNewton::sFun().
|
protected |
A vector of pointers to the update methods for the optimization parameters
Definition at line 65 of file COptMethod.h.
Referenced by COptMethodHookeJeeves::bestNearby(), COptMethodPS::create(), COptMethodSteepestDescent::descentLine(), COptMethodPraxis::evaluateFunction(), initialize(), COptMethodPS::move(), COptMethodPS::optimise(), COptMethodGASR::optimise(), COptMethodNelderMead::optimise(), COptMethodCoranaWalk::optimise(), COptMethodLevenbergMarquardt::optimise(), COptMethodSA::optimise(), and COptMethodTruncatedNewton::sFun().