#include <AsAmplNmpcTNLP.hpp>
Public Member Functions | |
AmplNmpcTNLP (const SmartPtr< const Journalist > &jnlst, const SmartPtr< OptionsList > options, char **&argv, SmartPtr< AmplSuffixHandler > suffix_handler=NULL, bool allow_discrete=false, SmartPtr< AmplOptionsList > ampl_options_list=NULL, const char *ampl_option_string=NULL, const char *ampl_invokation_string=NULL, const char *ampl_banner_string=NULL, std::string *nl_file_content=NULL) | |
This class is the NMPC-wrapper for the ampltnlp, adapts the get bounds function and some others to our needs. | |
virtual | ~AmplNmpcTNLP () |
virtual bool | get_bounds_info (Index n, Number *x_l, Number *x_u, Index m, Number *g_l, Number *g_u) |
returns bounds of the nlp. | |
void | set_nmpc_solution (Index idx, SmartPtr< IteratesVector > nmpc_sol) |
virtual void | finalize_solution (SolverReturn status, Index n, const Number *x, const Number *z_L, const Number *z_U, Index m, const Number *g, const Number *lambda, Number obj_value, const IpoptData *ip_data, IpoptCalculatedQuantities *ip_cq) |
This method is called when the algorithm is complete so the TNLP can store/write the solution. | |
const Index * | get_index_suffix (const char *suffix_name) |
std::vector< Index > | get_index_suffix_vec (const char *suffix_name) |
const Number * | get_number_suffix (const char *suffix_name) |
std::vector< Number > | get_number_suffix_vec (const char *suffix_name) |
const Index * | get_index_suffix_constr (const char *suffix_name) |
std::vector< Index > | get_index_suffix_constr_vec (const char *suffix_name) |
const Number * | get_number_suffix_constr (const char *suffix_name) |
virtual bool | get_var_con_metadata (Index n, StringMetaDataMapType &var_string_md, IntegerMetaDataMapType &var_integer_md, NumericMetaDataMapType &var_numeric_md, Index m, StringMetaDataMapType &con_string_md, IntegerMetaDataMapType &con_integer_md, NumericMetaDataMapType &con_numeric_md) |
returns names and other meta data for the variables and constraints Overloaded from TNLP | |
Private Attributes | |
SmartPtr< const Journalist > | jnlst_ |
local copy of current lower and upper bounds - needed for parameter change | |
SmartPtr< OptionsList > | options_ |
bool | have_parameters_ |
Index * | parameter_flags_ |
Number * | parameter_values_ |
Index | n_nmpc_steps_ |
important Options | |
bool | run_nmpc_ |
bool | compute_red_hessian_ |
std::vector< SmartPtr < IteratesVector > > | nmpc_sol_ |
Definition at line 17 of file AsAmplNmpcTNLP.hpp.
Ipopt::AmplNmpcTNLP::AmplNmpcTNLP | ( | const SmartPtr< const Journalist > & | jnlst, | |
const SmartPtr< OptionsList > | options, | |||
char **& | argv, | |||
SmartPtr< AmplSuffixHandler > | suffix_handler = NULL , |
|||
bool | allow_discrete = false , |
|||
SmartPtr< AmplOptionsList > | ampl_options_list = NULL , |
|||
const char * | ampl_option_string = NULL , |
|||
const char * | ampl_invokation_string = NULL , |
|||
const char * | ampl_banner_string = NULL , |
|||
std::string * | nl_file_content = NULL | |||
) |
This class is the NMPC-wrapper for the ampltnlp, adapts the get bounds function and some others to our needs.
constructor
virtual Ipopt::AmplNmpcTNLP::~AmplNmpcTNLP | ( | ) | [virtual] |
void Ipopt::AmplNmpcTNLP::set_nmpc_solution | ( | Index | idx, | |
SmartPtr< IteratesVector > | nmpc_sol | |||
) |
virtual void Ipopt::AmplNmpcTNLP::finalize_solution | ( | SolverReturn | status, | |
Index | n, | |||
const Number * | x, | |||
const Number * | z_L, | |||
const Number * | z_U, | |||
Index | m, | |||
const Number * | g, | |||
const Number * | lambda, | |||
Number | obj_value, | |||
const IpoptData * | ip_data, | |||
IpoptCalculatedQuantities * | ip_cq | |||
) | [virtual] |
This method is called when the algorithm is complete so the TNLP can store/write the solution.
Reimplemented from Ipopt::AmplTNLP.
const Index* Ipopt::AmplNmpcTNLP::get_index_suffix | ( | const char * | suffix_name | ) |
std::vector<Index> Ipopt::AmplNmpcTNLP::get_index_suffix_vec | ( | const char * | suffix_name | ) |
const Number* Ipopt::AmplNmpcTNLP::get_number_suffix | ( | const char * | suffix_name | ) |
std::vector<Number> Ipopt::AmplNmpcTNLP::get_number_suffix_vec | ( | const char * | suffix_name | ) |
const Index* Ipopt::AmplNmpcTNLP::get_index_suffix_constr | ( | const char * | suffix_name | ) |
std::vector<Index> Ipopt::AmplNmpcTNLP::get_index_suffix_constr_vec | ( | const char * | suffix_name | ) |
const Number* Ipopt::AmplNmpcTNLP::get_number_suffix_constr | ( | const char * | suffix_name | ) |
virtual bool Ipopt::AmplNmpcTNLP::get_var_con_metadata | ( | Index | n, | |
StringMetaDataMapType & | var_string_md, | |||
IntegerMetaDataMapType & | var_integer_md, | |||
NumericMetaDataMapType & | var_numeric_md, | |||
Index | m, | |||
StringMetaDataMapType & | con_string_md, | |||
IntegerMetaDataMapType & | con_integer_md, | |||
NumericMetaDataMapType & | con_numeric_md | |||
) | [virtual] |
returns names and other meta data for the variables and constraints Overloaded from TNLP
Reimplemented from Ipopt::AmplTNLP.
SmartPtr<const Journalist> Ipopt::AmplNmpcTNLP::jnlst_ [private] |
local copy of current lower and upper bounds - needed for parameter change
Reimplemented from Ipopt::AmplTNLP.
Definition at line 79 of file AsAmplNmpcTNLP.hpp.
SmartPtr<OptionsList> Ipopt::AmplNmpcTNLP::options_ [private] |
Definition at line 80 of file AsAmplNmpcTNLP.hpp.
bool Ipopt::AmplNmpcTNLP::have_parameters_ [private] |
Definition at line 82 of file AsAmplNmpcTNLP.hpp.
Index* Ipopt::AmplNmpcTNLP::parameter_flags_ [private] |
Definition at line 84 of file AsAmplNmpcTNLP.hpp.
Number* Ipopt::AmplNmpcTNLP::parameter_values_ [private] |
Definition at line 85 of file AsAmplNmpcTNLP.hpp.
Index Ipopt::AmplNmpcTNLP::n_nmpc_steps_ [private] |
important Options
Definition at line 88 of file AsAmplNmpcTNLP.hpp.
bool Ipopt::AmplNmpcTNLP::run_nmpc_ [private] |
Definition at line 89 of file AsAmplNmpcTNLP.hpp.
bool Ipopt::AmplNmpcTNLP::compute_red_hessian_ [private] |
Definition at line 90 of file AsAmplNmpcTNLP.hpp.
std::vector< SmartPtr<IteratesVector> > Ipopt::AmplNmpcTNLP::nmpc_sol_ [private] |
Definition at line 92 of file AsAmplNmpcTNLP.hpp.