CppAD: A C++ Algorithmic Differentiation Package
20130102
|
cppad_ipopt::cppad_ipopt_nlp::cppad_ipopt_nlp | ( | size_t | n, |
size_t | m, | ||
const NumberVector & | x_i, | ||
const NumberVector & | x_l, | ||
const NumberVector & | x_u, | ||
const NumberVector & | g_l, | ||
const NumberVector & | g_u, | ||
cppad_ipopt_fg_info * | fg_info, | ||
cppad_ipopt_solution * | solution | ||
) |
only constructor for cppad_ipopot_nlp
Constructor for the Nonlinear Programming Problem.
n | dimension of the domain space for f(x) and g(x). |
m | dimension of the range space for g(x) |
x_i | initial value of x during the optimization procedure (size n). |
x_l | lower limit for x (size n). |
x_u | upper limit for x (size n). |
g_l | lower limit for g(x) (size m). |
g_u | upper limit for g(x) (size m). |
fg_info | pointer to base class version of derived class object used to get information about the user's representation for f(x) and g(x). (The object pointed to must not be deleted before this cppad_ipopt_nlp object). |
solution | pointer to object where final results are stored. (The object pointed to must not be deleted before this cppad_ipopt_nlp object). |
const
or effectively const
; i.e., they are set by the constructor and should not be changed: n_, m_, x_i_, x_l_, x_u_, g_l_, g_u_, K_, L_, p_, q_, retape_, pattern_jac_r_, pattern_hes_r_, index_jac_g_, index_hes_fg_, nnz_jac_g_, iRow_jac_g_, jCol_jac_g_, nnz_h_lag_, iRow_h_lag_, jCol_h_lag_,
fg_info->set_n(n)
and fg_info->set_m(m)
are used to set the values of n
and m
in fg_info
.tape_ok_
has size K_
. It is initialized as true for indices k
such that retape[k]
is false.r_fun_
has size K_
. It is initilaize with the default ADFun
constructor. Then, for indices k
such that retape[k]
is false, the operation sequence corresponding to r_fun_[k]
.I_
has size equal to the maximum of p[k]
w.r.t k
.J_
has size equal to the maximum of q[k]
w.r.t k
.NEBUG
is not defined, certain of the assumptions about the function calls of the form fg_info->index(k, ell, I, J)
Definition at line 110 of file cppad_ipopt_nlp.cpp.