Ipopt  3.12.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
Ipopt::SensAlgorithm Class Reference

#include <SensAlgorithm.hpp>

+ Inheritance diagram for Ipopt::SensAlgorithm:

Public Member Functions

 SensAlgorithm (std::vector< SmartPtr< SchurDriver > > &driver_vec, SmartPtr< SensitivityStepCalculator > sens_step_calc, SmartPtr< Measurement > measurement, Index n_sens_steps)
 This is the interface for the actual controller. More...
 
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)
 
- 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. 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 ()
 Default Destructor. More...
 
- 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

NumberDirectionalD_X_
 array place holders to store the vector of sensitivities More...
 
NumberDirectionalD_L_
 
NumberDirectionalD_Z_U_
 
NumberDirectionalD_Z_L_
 
NumberSensitivityM_X_
 array place holders for the sensitivity matrix More...
 
NumberSensitivityM_L_
 
NumberSensitivityM_Z_U_
 
NumberSensitivityM_Z_L_
 

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< Measurementmeasurement_
 
Index n_sens_steps_
 

Additional Inherited Members

- Protected Member Functions inherited from Ipopt::AlgorithmStrategyObject
const JournalistJnlst () const
 
IpoptNLPIpNLP () const
 
IpoptDataIpData () const
 
IpoptCalculatedQuantitiesIpCq () const
 
bool HaveIpData () const
 

Detailed Description

Definition at line 19 of file SensAlgorithm.hpp.

Constructor & Destructor Documentation

Ipopt::SensAlgorithm::SensAlgorithm ( std::vector< SmartPtr< SchurDriver > > &  driver_vec,
SmartPtr< SensitivityStepCalculator sens_step_calc,
SmartPtr< Measurement measurement,
Index  n_sens_steps 
)

This is the interface for the actual controller.

It handles Data input to the controller (measurement) and returns controls

virtual Ipopt::SensAlgorithm::~SensAlgorithm ( )
virtual

Member Function Documentation

virtual bool Ipopt::SensAlgorithm::InitializeImpl ( const OptionsList options,
const std::string &  prefix 
)
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  )
Index Ipopt::SensAlgorithm::nl ( void  )
inline

accessor methods to get access to variable sizes

Definition at line 44 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::nx ( void  )
inline

Definition at line 45 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::nzl ( void  )
inline

Definition at line 46 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::nzu ( void  )
inline

Definition at line 47 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::ns ( void  )
inline

Definition at line 48 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::np ( void  )
inline

Definition at line 49 of file SensAlgorithm.hpp.

void Ipopt::SensAlgorithm::GetDirectionalDerivatives ( void  )
private

method to extract sensitivity vectors

void Ipopt::SensAlgorithm::GetSensitivityMatrix ( Index  col)
private

method to extract sensitivity matrix

void Ipopt::SensAlgorithm::UnScaleIteratesVector ( SmartPtr< IteratesVector > *  V)
private

private method used to uncale perturbed solution and sensitivities

Member Data Documentation

Number* Ipopt::SensAlgorithm::DirectionalD_X_

array place holders to store the vector of sensitivities

Definition at line 52 of file SensAlgorithm.hpp.

Number* Ipopt::SensAlgorithm::DirectionalD_L_

Definition at line 53 of file SensAlgorithm.hpp.

Number* Ipopt::SensAlgorithm::DirectionalD_Z_U_

Definition at line 54 of file SensAlgorithm.hpp.

Number* Ipopt::SensAlgorithm::DirectionalD_Z_L_

Definition at line 55 of file SensAlgorithm.hpp.

Number* Ipopt::SensAlgorithm::SensitivityM_X_

array place holders for the sensitivity matrix

Definition at line 58 of file SensAlgorithm.hpp.

Number* Ipopt::SensAlgorithm::SensitivityM_L_

Definition at line 59 of file SensAlgorithm.hpp.

Number* Ipopt::SensAlgorithm::SensitivityM_Z_U_

Definition at line 60 of file SensAlgorithm.hpp.

Number* Ipopt::SensAlgorithm::SensitivityM_Z_L_

Definition at line 61 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::nl_
private

Definition at line 65 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::nx_
private

Definition at line 66 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::nzl_
private

Definition at line 67 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::nzu_
private

Definition at line 68 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::nceq_
private

Definition at line 69 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::ncineq_
private

Definition at line 70 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::ns_
private

Definition at line 71 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::np_
private

Definition at line 72 of file SensAlgorithm.hpp.

std::vector< SmartPtr<SchurDriver> > Ipopt::SensAlgorithm::driver_vec_
private

Definition at line 74 of file SensAlgorithm.hpp.

SmartPtr<SensitivityStepCalculator> Ipopt::SensAlgorithm::sens_step_calc_
private

Definition at line 75 of file SensAlgorithm.hpp.

SmartPtr<Measurement> Ipopt::SensAlgorithm::measurement_
private

Definition at line 76 of file SensAlgorithm.hpp.

Index Ipopt::SensAlgorithm::n_sens_steps_
private

Definition at line 77 of file SensAlgorithm.hpp.


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