This is the interface for the actual controller. More...
#include <SensAlgorithm.hpp>
Public Member Functions | |
SensAlgorithm (std::vector< SmartPtr< SchurDriver > > &driver_vec, SmartPtr< SensitivityStepCalculator > sens_step_calc, SmartPtr< Measurement > measurement, Index n_sens_steps) | |
virtual | ~SensAlgorithm () |
virtual bool | InitializeImpl (const OptionsList &options, const std::string &prefix) |
Implementation of the initialization method that has to be overloaded by for each derived class. | |
SensAlgorithmExitStatus | Run () |
Main loop: Wait for new measurement, Get new step, maybe deal with bounds, see to it that everything happens in the required timeframe. | |
SensAlgorithmExitStatus | ComputeSensitivityMatrix (void) |
Index | nl (void) |
accessor methods to get access to variable sizes | |
Index | nx (void) |
Index | nzl (void) |
Index | nzu (void) |
Index | ns (void) |
Index | np (void) |
Public Member Functions inherited from Ipopt::AlgorithmStrategyObject | |
bool | Initialize (const Journalist &jnlst, IpoptNLP &ip_nlp, IpoptData &ip_data, IpoptCalculatedQuantities &ip_cq, const OptionsList &options, const std::string &prefix) |
This method is called every time the algorithm starts again - it is used to reset any internal state. | |
bool | ReducedInitialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix) |
Reduced version of the Initialize method, which does not require special Ipopt information. | |
AlgorithmStrategyObject () | |
Default Constructor. | |
virtual | ~AlgorithmStrategyObject () |
Destructor. | |
Public Member Functions inherited from Ipopt::ReferencedObject | |
ReferencedObject () | |
virtual | ~ReferencedObject () |
Index | ReferenceCount () const |
void | AddRef (const Referencer *referencer) const |
void | ReleaseRef (const Referencer *referencer) const |
Public Attributes | |
Number * | DirectionalD_X_ |
array place holders to store the vector of sensitivities | |
Number * | DirectionalD_L_ |
Number * | DirectionalD_Z_L_ |
Number * | DirectionalD_Z_U_ |
Number * | SensitivityM_X_ |
array place holders for the sensitivity matrix | |
Number * | SensitivityM_L_ |
Number * | SensitivityM_Z_L_ |
Number * | SensitivityM_Z_U_ |
Private Member Functions | |
void | GetDirectionalDerivatives (void) |
method to extract sensitivity vectors | |
void | GetSensitivityMatrix (Index col) |
method to extract sensitivity matrix | |
void | UnScaleIteratesVector (SmartPtr< IteratesVector > *V) |
private method used to uncale perturbed solution and sensitivities | |
Private Attributes | |
Index | nl_ |
Index | nx_ |
Index | nzl_ |
Index | nzu_ |
Index | nceq_ |
Index | ncineq_ |
Index | ns_ |
Index | np_ |
std::vector< SmartPtr< SchurDriver > > | driver_vec_ |
SmartPtr< SensitivityStepCalculator > | sens_step_calc_ |
SmartPtr< Measurement > | measurement_ |
Index | n_sens_steps_ |
Additional Inherited Members | |
Protected Member Functions inherited from Ipopt::AlgorithmStrategyObject | |
const Journalist & | Jnlst () const |
IpoptNLP & | IpNLP () const |
IpoptData & | IpData () const |
IpoptCalculatedQuantities & | IpCq () const |
bool | HaveIpData () const |
This is the interface for the actual controller.
It handles Data input to the controller (measurement) and returns controls.
Definition at line 23 of file SensAlgorithm.hpp.
Ipopt::SensAlgorithm::SensAlgorithm | ( | std::vector< SmartPtr< SchurDriver > > & | driver_vec, |
SmartPtr< SensitivityStepCalculator > | sens_step_calc, | ||
SmartPtr< Measurement > | measurement, | ||
Index | n_sens_steps | ||
) |
|
virtual |
|
virtual |
Implementation of the initialization method that has to be overloaded by for each derived class.
Implements Ipopt::AlgorithmStrategyObject.
SensAlgorithmExitStatus Ipopt::SensAlgorithm::Run | ( | ) |
Main loop: Wait for new measurement, Get new step, maybe deal with bounds, see to it that everything happens in the required timeframe.
SensAlgorithmExitStatus Ipopt::SensAlgorithm::ComputeSensitivityMatrix | ( | void | ) |
accessor methods to get access to variable sizes
Definition at line 47 of file SensAlgorithm.hpp.
Definition at line 51 of file SensAlgorithm.hpp.
Definition at line 55 of file SensAlgorithm.hpp.
Definition at line 59 of file SensAlgorithm.hpp.
Definition at line 63 of file SensAlgorithm.hpp.
Definition at line 67 of file SensAlgorithm.hpp.
method to extract sensitivity vectors
method to extract sensitivity matrix
|
private |
private method used to uncale perturbed solution and sensitivities
Number* Ipopt::SensAlgorithm::DirectionalD_X_ |
array place holders to store the vector of sensitivities
Definition at line 73 of file SensAlgorithm.hpp.
Number* Ipopt::SensAlgorithm::DirectionalD_L_ |
Definition at line 74 of file SensAlgorithm.hpp.
Number* Ipopt::SensAlgorithm::DirectionalD_Z_L_ |
Definition at line 75 of file SensAlgorithm.hpp.
Number* Ipopt::SensAlgorithm::DirectionalD_Z_U_ |
Definition at line 76 of file SensAlgorithm.hpp.
Number* Ipopt::SensAlgorithm::SensitivityM_X_ |
array place holders for the sensitivity matrix
Definition at line 79 of file SensAlgorithm.hpp.
Number* Ipopt::SensAlgorithm::SensitivityM_L_ |
Definition at line 80 of file SensAlgorithm.hpp.
Number* Ipopt::SensAlgorithm::SensitivityM_Z_L_ |
Definition at line 81 of file SensAlgorithm.hpp.
Number* Ipopt::SensAlgorithm::SensitivityM_Z_U_ |
Definition at line 82 of file SensAlgorithm.hpp.
|
private |
Definition at line 85 of file SensAlgorithm.hpp.
|
private |
Definition at line 86 of file SensAlgorithm.hpp.
|
private |
Definition at line 87 of file SensAlgorithm.hpp.
|
private |
Definition at line 88 of file SensAlgorithm.hpp.
|
private |
Definition at line 89 of file SensAlgorithm.hpp.
|
private |
Definition at line 90 of file SensAlgorithm.hpp.
|
private |
Definition at line 91 of file SensAlgorithm.hpp.
|
private |
Definition at line 92 of file SensAlgorithm.hpp.
|
private |
Definition at line 94 of file SensAlgorithm.hpp.
|
private |
Definition at line 95 of file SensAlgorithm.hpp.
|
private |
Definition at line 96 of file SensAlgorithm.hpp.
|
private |
Definition at line 97 of file SensAlgorithm.hpp.