10 #ifndef __MITTELMANNBNDRYCNTRLNEUM_HPP__
11 #define __MITTELMANNBNDRYCNTRLNEUM_HPP__
19 #include "configall_system.h"
28 # error "don't have header file for math"
38 # error "don't have header file for stdio"
42 using namespace Ipopt;
70 virtual bool get_starting_point(
Index n,
bool init_x,
Number*
x,
72 Index m,
bool init_lambda,
105 bool& use_x_scaling,
Index n,
107 bool& use_g_scaling,
Index m,
142 virtual bool d_cont_dydy_alwayszero()
const =0;
153 virtual bool b_cont_dydy_alwayszero()
const =0;
209 return (N_+2)*(N_+2) + j-1;
215 return (N_+2)*(N_+2) + N_ + j-1;
221 return (N_+2)*(N_+2) + 2*N_ + j-1;
227 return (N_+2)*(N_+2) + 3*N_ + j-1;
255 printf(
"N has to be at least 1.");
263 Number u_init = (ub_u+lb_u)/2.;
265 SetBaseParameters(N, alpha, lb_y, ub_y, lb_u, ub_u, u_init);
272 return 2. - 2.*(x1*(x1-1.) + x2*(x2-1.));
342 printf(
"N has to be at least 1.");
350 Number u_init = (ub_u+lb_u)/2.;
352 SetBaseParameters(N, alpha, lb_y, ub_y, lb_u, ub_u, u_init);
359 return 2. - 2.*(x1*(x1-1.) + x2*(x2-1.));
429 printf(
"N has to be at least 1.");
437 Number u_init = (ub_u+lb_u)/2.;
439 SetBaseParameters(N, alpha, lb_y, ub_y, lb_u, ub_u, u_init);
446 return 2. - 2.*(x1*(x1-1.) + x2*(x2-1.));
516 printf(
"N has to be at least 1.");
524 Number u_init = (ub_u+lb_u)/2.;
526 SetBaseParameters(N, alpha, lb_y, ub_y, lb_u, ub_u, u_init);
533 return 2. - 2.*(x1*(x1-1.) + x2*(x2-1.));