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. More... | |
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. More... | |
SensAlgorithmExitStatus | ComputeSensitivityMatrix (void) |
Index | nl (void) |
accessor methods to get access to variable sizes More... | |
Index | nx (void) |
Index | nzl (void) |
Index | nzu (void) |
Index | ns (void) |
Index | np (void) |
![]() | |
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. More... | |
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. More... | |
AlgorithmStrategyObject () | |
Default Constructor. More... | |
virtual | ~AlgorithmStrategyObject () |
Destructor. More... | |
![]() | |
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 More... | |
Number * | DirectionalD_L_ |
Number * | DirectionalD_Z_L_ |
Number * | DirectionalD_Z_U_ |
Number * | SensitivityM_X_ |
array place holders for the sensitivity matrix More... | |
Number * | SensitivityM_L_ |
Number * | SensitivityM_Z_L_ |
Number * | SensitivityM_Z_U_ |
Private Member Functions | |
void | GetDirectionalDerivatives (void) |
method to extract sensitivity vectors More... | |
void | GetSensitivityMatrix (Index col) |
method to extract sensitivity matrix More... | |
void | UnScaleIteratesVector (SmartPtr< IteratesVector > *V) |
private method used to uncale perturbed solution and sensitivities More... | |
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 | |
![]() | |
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 | ) |
|
inline |
accessor methods to get access to variable sizes
Definition at line 47 of file SensAlgorithm.hpp.
|
inline |
Definition at line 51 of file SensAlgorithm.hpp.
|
inline |
Definition at line 55 of file SensAlgorithm.hpp.
|
inline |
Definition at line 59 of file SensAlgorithm.hpp.
|
inline |
Definition at line 63 of file SensAlgorithm.hpp.
|
inline |
Definition at line 67 of file SensAlgorithm.hpp.
|
private |
method to extract sensitivity vectors
|
private |
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.