Diana
0.8.3
|
#include <DianaParameterFittingTask.hpp>
Public Member Functions | |
ParameterFittingTask (ICapeNumericSolver *_solver, ICapeNumericContinuousModel *_model, const Common::NLPData::CapeMeasuredData *_expdata, const Common::Parameter::CapeArrayParameterSpec &_fixedSoughtParams, const Common::Parameter::CapeArrayParameterSpec &_stateSoughtParams) throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) | |
ParameterFittingTask (ICapeNumericSolver *_solver, ICapeNumericContinuousModel *_model, const Common::NLPData::CapeMeasuredData *_expdata, const Common::Parameter::CapeArrayParameterSpec &_fixedSoughtParams) throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) | |
ParameterFittingTask (IDianaMain *_dianaMain, CapeString _solverName, ICapeNumericContinuousModel *_model, const Common::NLPData::CapeMeasuredData *_expdata, const Common::Parameter::CapeArrayParameterSpec &_fixedSoughtParams, const Common::Parameter::CapeArrayParameterSpec &_stateSoughtParams) throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) | |
ParameterFittingTask (IDianaMain *_dianaMain, CapeString _solverName, ICapeNumericContinuousModel *_model, const Common::NLPData::CapeMeasuredData *_expdata, const Common::Parameter::CapeArrayParameterSpec &_fixedSoughtParams) throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) | |
virtual | ~ParameterFittingTask () |
virtual eCapeNLPTaskType | Type () const |
virtual CapeDouble | CalcObjFunction () throw (Common::Error::ECapeUnknown, Common::Error::ECapeSolvingError) |
virtual CapeLong | GetFixedSoughtParamsCount () |
virtual CapeLong | GetStateSoughtParamsCount () |
virtual const Common::Types::CapeString & | GetComponentName () const throw (Common::Error::ECapeUnknown) |
virtual const Common::Types::CapeString & | GetComponentDescription () const throw (Common::Error::ECapeUnknown) |
Numeric::Solvers::NLPTasks::ICapeNLPTask * | GetSensitivityTask () throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) |
Private Member Functions | |
void | ExtractParams (const Numeric::Solvers::NLPTasks::Parameters::ICapeOptimizationPoint &_parVals) throw (Common::Error::ECapeUnknown) |
Common::Types::CapeBoolean | IsInFittingTimeInterval (Common::Types::CapeDouble dblVal) const |
void | InitTask (const Common::Parameter::CapeArrayParameterSpec *_fixedSoughtParams, const Common::Parameter::CapeArrayParameterSpec *_stateSoughtParams) throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) |
virtual void | InitTask (IDianaMain *_dianaMain, CapeString _solverName, ICapeNumericContinuousModel *_model, const Common::Parameter::CapeArrayParameterSpec *_fixedSoughtParams, const Common::Parameter::CapeArrayParameterSpec *_stateSoughtParams) throw (Common::Error::ECapeUnknown) |
virtual void | InitTask (IDianaMain *_dianaMain, CapeString _solverName, ICapeNumericContinuousModel *_model, const CapeArrayString *_fixedSoughtParams, const CapeArrayString *_stateSoughtParams) throw (Common::Error::ECapeUnknown) |
virtual void | InitTask (IDianaMain *_dianaMain, CapeString _solverName, ICapeNumericContinuousModel *_model, const CapeArrayLong *_fixedSoughtParams, const CapeArrayLong *_stateSoughtParams) throw (Common::Error::ECapeUnknown) |
virtual void | Initialize () throw (Common::Error::ECapeUnknown, Common::Error::ECapeFailedInitialisation, Common::Error::ECapeOutOfResources, Common::Error::ECapeLicenceError, Common::Error::ECapeBadInvOrder) |
Private Attributes | |
Common::Types::CapeString | strName |
Component name. | |
Common::Types::CapeString | strDescription |
Component description. | |
CapeLong | cntStateSoughtParams |
Count of state variables among sought parameters. |
Class for parameter fitting task definition.
ParameterFittingTask | ( | ICapeNumericSolver * | _solver, |
ICapeNumericContinuousModel * | _model, | ||
const Common::NLPData::CapeMeasuredData * | _expdata, | ||
const Common::Parameter::CapeArrayParameterSpec & | _fixedSoughtParams, | ||
const Common::Parameter::CapeArrayParameterSpec & | _stateSoughtParams | ||
) | throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) |
Constructor of parameter fitting task class based on one experiment using external solver.
_solver | - solver used for integrating trajectory & calculating sensitivities |
_model | - considered model (this model must contain DianaSensESO with preseted estimated parameters & fitted) |
_expdata | - set of experimental state variables values in measured time points |
_fixedSoughtParams | - fixed variables as sought parameters collection with names, bounds and precision for estimated parameters |
_stateSoughtParams | - state variables init values as sought parameters collection with names, bounds and precision for estimated parameters |
ParameterFittingTask | ( | ICapeNumericSolver * | _solver, |
ICapeNumericContinuousModel * | _model, | ||
const Common::NLPData::CapeMeasuredData * | _expdata, | ||
const Common::Parameter::CapeArrayParameterSpec & | _fixedSoughtParams | ||
) | throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) |
Constructor of parameter fitting task class based on one experiment using external solver.
_solver | - solver used for integrating trajectory & calculating sensitivities |
_model | - considered model (this model must contain DianaSensESO with preseted estimated parameters & fitted) |
_expdata | - set of experimental state variables values in measured time points |
_fixedSoughtParams | - fixed variables as sought parameters collection with names, bounds and precision for estimated parameters |
ParameterFittingTask | ( | IDianaMain * | _dianaMain, |
CapeString | _solverName, | ||
ICapeNumericContinuousModel * | _model, | ||
const Common::NLPData::CapeMeasuredData * | _expdata, | ||
const Common::Parameter::CapeArrayParameterSpec & | _fixedSoughtParams, | ||
const Common::Parameter::CapeArrayParameterSpec & | _stateSoughtParams | ||
) | throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) |
Constructor of parameter fitting task class based on one experiment using solver with name specified and CapeNLPSoughtParameters.
_dianaMain | - pointer to DianaMain which is used to create solver |
_solverName | - name of the solver used for integrating |
_model | - considered model |
_expdata | - set of experimental state variables values in measured time points |
_fixedSoughtParams | - fixed variables as sought parameters collection with names, bounds and precision for estimated parameters |
_stateSoughtParams | - state variables init values as sought parameters collection with names, bounds and precision for estimated parameters |
ParameterFittingTask | ( | IDianaMain * | _dianaMain, |
CapeString | _solverName, | ||
ICapeNumericContinuousModel * | _model, | ||
const Common::NLPData::CapeMeasuredData * | _expdata, | ||
const Common::Parameter::CapeArrayParameterSpec & | _fixedSoughtParams | ||
) | throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) |
Constructor of parameter fitting task class based on one experiment using solver with name specified and CapeNLPSoughtParameters.
_dianaMain | - pointer to DianaMain which is used to create solver |
_solverName | - name of the solver used for integrating |
_model | - considered model |
_expdata | - set of experimental state variables values in measured time points |
_fixedSoughtParams | - fixed variables as sought parameters collection with names, bounds and precision for estimated parameters |
virtual ~ParameterFittingTask | ( | ) | [virtual] |
Destructor of BasicNLPTask class.
virtual CapeDouble CalcObjFunction | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeSolvingError) [virtual] |
Calculates and returns objective function value for optimization task.
Implements ICapeNLPTask.
void ExtractParams | ( | const Numeric::Solvers::NLPTasks::Parameters::ICapeOptimizationPoint & | _parVals | ) | throw (Common::Error::ECapeUnknown) [private, virtual] |
Extracts parameters from set of parameters for setting intial values of state variables and estimated parameters.
_parVals | set of parameters for task |
Reimplemented from DianaDynamicNLPTask.
virtual const Common::Types::CapeString& GetComponentDescription | ( | ) | const throw (Common::Error::ECapeUnknown) [virtual] |
gets the description of the component.
Implements ICapeIdentification.
virtual const Common::Types::CapeString& GetComponentName | ( | ) | const throw (Common::Error::ECapeUnknown) [virtual] |
gets the name of the component.
Implements ICapeIdentification.
virtual CapeLong GetFixedSoughtParamsCount | ( | ) | [inline, virtual] |
Gets number of fixed variables among sought parameters.
Implements DianaParameterFittingTask.
References ParameterFittingTask::cntStateSoughtParams, DianaCollection::Count(), and DianaNLPTask::soughtParams.
Numeric::Solvers::NLPTasks::ICapeNLPTask* GetSensitivityTask | ( | ) | throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) [virtual] |
Returns created and initialized SensParameterFittingTask based on current instance.
Implements IDianaSensitivityTaskCreator.
virtual CapeLong GetStateSoughtParamsCount | ( | ) | [inline, virtual] |
Gets number of state variables among sought parameters.
Implements DianaParameterFittingTask.
References ParameterFittingTask::cntStateSoughtParams.
virtual void Initialize | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeFailedInitialisation, Common::Error::ECapeOutOfResources, Common::Error::ECapeLicenceError, Common::Error::ECapeBadInvOrder) [private, virtual] |
The environment will order the component to get initialized through this method. Any initialisation that could fail must be placed here. Initialize is guaranteed to be the first method called by the client (except low level methods such as class constructors or initialization persistence methods). Initialize has to be called once when the component is instantiated in a particular flowsheet. When the initialization fails, before signalling an error, the component must free all the resources that were allocated before the failure occurred. When the environment receives this error, it may not use the component anymore. The method terminate of the current interface must not either be called. Hence, the environment may only release the component through the middleware native mechanisms.
Reimplemented from DianaNLPTask.
void InitTask | ( | const Common::Parameter::CapeArrayParameterSpec * | _fixedSoughtParams, |
const Common::Parameter::CapeArrayParameterSpec * | _stateSoughtParams | ||
) | throw (Common::Error::ECapeInvalidArgument, Common::Error::ECapeUnknown) [private] |
Init task
virtual void InitTask | ( | IDianaMain * | _dianaMain, |
CapeString | _solverName, | ||
ICapeNumericContinuousModel * | _model, | ||
const Common::Parameter::CapeArrayParameterSpec * | _fixedSoughtParams, | ||
const Common::Parameter::CapeArrayParameterSpec * | _stateSoughtParams | ||
) | throw (Common::Error::ECapeUnknown) [inline, private, virtual] |
Creates sensitivity model and solver for given set of estimated parameters' indices.
virtual void InitTask | ( | IDianaMain * | _dianaMain, |
CapeString | _solverName, | ||
ICapeNumericContinuousModel * | _model, | ||
const CapeArrayString * | _fixedSoughtParams, | ||
const CapeArrayString * | _stateSoughtParams | ||
) | throw (Common::Error::ECapeUnknown) [inline, private, virtual] |
Creates sensitivity model and solver for given set of estimated parameters' names.
virtual void InitTask | ( | IDianaMain * | _dianaMain, |
CapeString | _solverName, | ||
ICapeNumericContinuousModel * | _model, | ||
const CapeArrayLong * | _fixedSoughtParams, | ||
const CapeArrayLong * | _stateSoughtParams | ||
) | throw (Common::Error::ECapeUnknown) [inline, private, virtual] |
Creates sensitivity model and solver for given set of estimated parameters' indices.
Common::Types::CapeBoolean IsInFittingTimeInterval | ( | Common::Types::CapeDouble | dblVal | ) | const [inline, private] |
Returns true if given value is in fitting time interval
Reimplemented from DianaParameterFittingTask.
References DianaParameterFittingTask::dblEndTime, and DianaParameterFittingTask::dblStartTime.
virtual eCapeNLPTaskType Type | ( | ) | const [inline, virtual] |
Returns type of solver that can be used for solvin this task
Implements ICapeNLPTask.
References Numeric::Solvers::NLPTasks::CAPE_NULLRANGE.