9 #ifndef __BONCURVATUREESTIMATOR_HPP__
10 #define __BONCURVATUREESTIMATOR_HPP__
11 #error "Not supported currently"
13 #include "IpOptionsList.hpp"
14 #include "IpCompoundSymMatrix.hpp"
15 #include "IpCompoundVector.hpp"
20 class TSymLinearSolver;
25 using namespace Ipopt;
37 SmartPtr<Journalist> jnlst,
38 SmartPtr<OptionsList> options,
56 bool ComputeNullSpaceCurvature(
199 bool PrepareNewMatrixStructure(
204 std::vector<int>& active_x,
205 std::vector<int>& active_g,
210 SmartPtr<CompoundSymMatrixSpace>& comp_proj_matrix_space,
211 SmartPtr<CompoundVectorSpace>& comp_vec_space);
213 bool PrepareNewMatrixValues(
214 const Index* x_free_map,
215 const Index* g_fixed_map,
216 SmartPtr<CompoundSymMatrixSpace>& comp_proj_matrix_space,
217 SmartPtr<CompoundSymMatrix>& comp_proj_matrix,
218 SmartPtr<TSymLinearSolver>& tsymlinearsolver);
223 Number* sol_x, Number* sol_g,
224 const Index* x_free_map,
225 const Index* g_fixed_map,
226 SmartPtr<CompoundVectorSpace>& comp_vec_space,
227 SmartPtr<CompoundSymMatrix>& comp_proj_matrix,
228 SmartPtr<TSymLinearSolver>& tsymlinearsolver);
230 bool Compute_dTHLagd(
231 const Number* d,
const Number* x,
bool new_x,
const Number* lambda,
232 bool new_lambda, Number& dTHLagd);
Index eq_ng_fixed_
Number of active constraints.
Index * eq_x_free_map_
Map for pointing from the original x space to the one without fixed variables.
std::string prefix_
prefix to be used when parsion the options for the linear solver
SmartPtr< CompoundSymMatrix > eq_comp_proj_matrix_
Compound Matrix storing the current projection matrix.
SmartPtr< CompoundSymMatrixSpace > eq_comp_proj_matrix_space_
Compound Matrix space for storing the linear system for the projection.
SmartPtr< TSymLinearSolver > all_tsymlinearsolver_
Strategy object for solving the projection matrix for all active constraints.
SmartPtr< TSymLinearSolver > eq_tsymlinearsolver_
Strategy object for solving the projection matrix for equality constraints only.
SmartPtr< Journalist > jnlst_
prefix to be used when parsion the options for the linear solver
SmartPtr< CompoundVectorSpace > eq_comp_vec_space_
Compound Vector space for storing right hand side and solution for the projection system...
SmartPtr< CompoundSymMatrix > all_comp_proj_matrix_
Compound Matrix storing the current projection matrix.
Index * all_x_free_map_
Map for pointing from the original x space to the one without fixed variables.
Index all_ng_fixed_
Number of active constraints.
std::vector< int > active_x_
Storing the activities.
SmartPtr< CompoundVectorSpace > all_comp_vec_space_
Compound Vector space for storing right hand side and solution for the projection system...
Number * eq_projected_d_
Space for storing the direction projected into the equality constraints only.
Index all_nx_free_
Number of free x variables.
Index * all_g_fixed_map_
Map for pointing from the original constraint space to the one with only active constraints.
SmartPtr< CompoundSymMatrixSpace > all_comp_proj_matrix_space_
Compound Matrix space for storing the linear system for the projection.
std::vector< int > active_g_
Storing the activities.
SmartPtr< OptionsList > options_
prefix to be used when parsion the options for the linear solver
Index * eq_g_fixed_map_
Map for pointing from the original constraint space to the one with only active constraints.
Number * lambda_
Space for most recent computed least-square multipliers.
Index eq_nx_free_
Number of free x variables.