This class adapts the TNLP interface so it looks like an NLP interface. More...
#include <IpTNLPAdapter.hpp>
Public Types | |
enum | FixedVariableTreatmentEnum { MAKE_PARAMETER = 0 , MAKE_PARAMETER_NODUAL , MAKE_CONSTRAINT , RELAX_BOUNDS } |
Enum for treatment of fixed variables option. More... | |
enum | DerivativeTestEnum { NO_TEST = 0 , FIRST_ORDER_TEST , SECOND_ORDER_TEST , ONLY_SECOND_ORDER_TEST } |
Enum for specifying which derivative test is to be performed. More... | |
enum | JacobianApproxEnum { JAC_EXACT = 0 , JAC_FINDIFF_VALUES } |
Enum for specifying technique for computing Jacobian. More... | |
enum | GradientApproxEnum { OBJGRAD_EXACT = 0 , OBJGRAD_FINDIFF_VALUES } |
Enum for specifying technique for computing objective Gradient. More... | |
Static Public Member Functions | |
static void | RegisterOptions (SmartPtr< RegisteredOptions > roptions) |
Private Member Functions | |
Default Compiler Generated Methods | |
(Hidden to avoid implicit creation/calling). These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called. | |
TNLPAdapter (const TNLPAdapter &) | |
Copy Constructor. | |
void | operator= (const TNLPAdapter &) |
Default Assignment Operator. | |
Methods to update the values in the local copies of vectors | |
bool | update_local_x (const Vector &x) |
bool | update_local_lambda (const Vector &y_c, const Vector &y_d) |
Internal routines for evaluating g and jac_g. | |
Values stored since they are used in both c and d routines. | |
bool | internal_eval_g (bool new_x) |
bool | internal_eval_jac_g (bool new_x) |
Internal methods for dealing with finite difference approximation | |
void | initialize_findiff_jac (const Index *iRow, const Index *jCol) |
Initialize sparsity structure for finite difference Jacobian. | |
Private Attributes | |
TNLP::IndexStyleEnum | index_style_ |
Numbering style of variables and constraints. | |
Algorithmic parameters | |
Number | nlp_lower_bound_inf_ |
Value for a lower bound that denotes -infinity. | |
Number | nlp_upper_bound_inf_ |
Value for a upper bound that denotes infinity. | |
FixedVariableTreatmentEnum | fixed_variable_treatment_ |
Flag indicating how fixed variables should be handled. | |
Number | bound_relax_factor_ |
Determines relaxation of fixing bound for RELAX_BOUNDS. | |
DerivativeTestEnum | derivative_test_ |
Maximal slack for one-sidedly bounded variables. | |
Number | derivative_test_perturbation_ |
Size of the perturbation for the derivative test. | |
Number | derivative_test_tol_ |
Relative threshold for marking deviation from finite difference test. | |
bool | derivative_test_print_all_ |
Flag indicating if all test values should be printed, or only those violating the threshold. | |
Index | derivative_test_first_index_ |
Index of first quantity to be checked. | |
bool | warm_start_same_structure_ |
Flag indicating whether the TNLP with identical structure has already been solved before. | |
HessianApproximationType | hessian_approximation_ |
Flag indicating what Hessian information is to be used. | |
Index | num_linear_variables_ |
Number of linear variables. | |
JacobianApproxEnum | jacobian_approximation_ |
Flag indicating how Jacobian is computed. | |
GradientApproxEnum | gradient_approximation_ |
Flag indicating how objective Gradient is computed. | |
Number | findiff_perturbation_ |
Size of the perturbation for the derivative approximation. | |
Number | point_perturbation_radius_ |
Maximal perturbation of the initial point. | |
bool | dependency_detection_with_rhs_ |
Flag indicating if rhs should be considered during dependency detection. | |
Number | tol_ |
Overall convergence tolerance. | |
Problem Size Data | |
Index | n_full_x_ |
full dimension of x (fixed + non-fixed) | |
Index | n_full_g_ |
full dimension of g (c + d) | |
Index | nz_jac_c_ |
non-zeros of the jacobian of c | |
Index | nz_jac_c_no_extra_ |
non-zeros of the jacobian of c without added constraints for fixed variables. | |
Index | nz_jac_d_ |
non-zeros of the jacobian of d | |
Index | nz_full_jac_g_ |
number of non-zeros in full-size Jacobian of g | |
Index | nz_full_h_ |
number of non-zeros in full-size Hessian | |
Index | nz_h_ |
number of non-zeros in the non-fixed-size Hessian | |
Index | n_x_fixed_ |
Number of fixed variables. | |
Local copy of spaces (for warm start) | |
SmartPtr< const VectorSpace > | x_space_ |
SmartPtr< const VectorSpace > | c_space_ |
SmartPtr< const VectorSpace > | d_space_ |
SmartPtr< const VectorSpace > | x_l_space_ |
SmartPtr< const MatrixSpace > | px_l_space_ |
SmartPtr< const VectorSpace > | x_u_space_ |
SmartPtr< const MatrixSpace > | px_u_space_ |
SmartPtr< const VectorSpace > | d_l_space_ |
SmartPtr< const MatrixSpace > | pd_l_space_ |
SmartPtr< const VectorSpace > | d_u_space_ |
SmartPtr< const MatrixSpace > | pd_u_space_ |
SmartPtr< const MatrixSpace > | Jac_c_space_ |
SmartPtr< const MatrixSpace > | Jac_d_space_ |
SmartPtr< const SymMatrixSpace > | Hess_lagrangian_space_ |
Local Copy of the Data | |
Number * | full_x_ |
Number * | full_lambda_ |
copy of the full x vector (fixed & non-fixed) | |
Number * | full_g_ |
copy of lambda (yc & yd) | |
Number * | jac_g_ |
copy of g (c & d) | |
Number * | c_rhs_ |
the values for the full jacobian of g | |
Tags for deciding when to update internal copies of vectors | |
the rhs values of c | |
TaggedObject::Tag | x_tag_for_iterates_ |
TaggedObject::Tag | y_c_tag_for_iterates_ |
TaggedObject::Tag | y_d_tag_for_iterates_ |
TaggedObject::Tag | x_tag_for_g_ |
TaggedObject::Tag | x_tag_for_jac_g_ |
Internal Permutation Spaces and matrices | |
SmartPtr< ExpansionMatrix > | P_x_full_x_ |
Expansion from fixed x (ipopt) to full x. | |
SmartPtr< ExpansionMatrixSpace > | P_x_full_x_space_ |
SmartPtr< ExpansionMatrix > | P_x_x_L_ |
Expansion from fixed x_L (ipopt) to full x. | |
SmartPtr< ExpansionMatrixSpace > | P_x_x_L_space_ |
SmartPtr< ExpansionMatrix > | P_x_x_U_ |
Expansion from fixed x_U (ipopt) to full x. | |
SmartPtr< ExpansionMatrixSpace > | P_x_x_U_space_ |
SmartPtr< ExpansionMatrixSpace > | P_c_g_space_ |
Expansion from c only (ipopt) to full ampl c. | |
SmartPtr< ExpansionMatrix > | P_c_g_ |
SmartPtr< ExpansionMatrixSpace > | P_d_g_space_ |
Expansion from d only (ipopt) to full ampl d. | |
SmartPtr< ExpansionMatrix > | P_d_g_ |
Index * | jac_idx_map_ |
Index * | h_idx_map_ |
Index * | x_fixed_map_ |
Position of fixed variables. | |
std::vector< Index > | jac_fixed_idx_map_ |
Index mapping of Jacobian w.r.t. | |
std::vector< Index > | jac_fixed_iRow_ |
std::vector< Index > | jac_fixed_jCol_ |
Data for finite difference approximations of derivatives | |
Index | findiff_jac_nnz_ |
Number of unique nonzeros in constraint Jacobian. | |
Index * | findiff_jac_ia_ |
Start position for nonzero indices in ja for each column of Jacobian. | |
Index * | findiff_jac_ja_ |
Ordered by columns, for each column the row indices in Jacobian. | |
Index * | findiff_jac_postriplet_ |
Position of entry in original triplet matrix. | |
Number * | findiff_x_l_ |
Copy of the lower bounds. | |
Number * | findiff_x_u_ |
Copy of the upper bounds. | |
Method implementing the detection of linearly dependent equality constraints | |
SmartPtr< TNLP > | tnlp_ |
Pointer to the TNLP class (class specific to Number* vectors and triplet matrices) | |
SmartPtr< const Journalist > | jnlst_ |
Journalist. | |
SmartPtr< TDependencyDetector > | dependency_detector_ |
Object that can be used to detect linearly dependent rows in the equality constraint Jacobian. | |
bool | DetermineDependentConstraints (Index n_x_var, const Index *x_not_fixed_map, const Number *x_l, const Number *x_u, const Number *g_l, const Number *g_u, Index n_c, const Index *c_map, std::list< Index > &c_deps) |
This class adapts the TNLP interface so it looks like an NLP interface.
This is an Adapter class (Design Patterns) that converts a TNLP to an NLP. This allows users to write to the "more convenient" TNLP interface.
Given a TNLP
\begin{eqnarray*} \mathrm{min} && f(x), \\ \mathrm{s.t.} && g_L \leq g(x) \leq g_U, &\qquad \lambda\\ && x_L \leq x \leq x_U, &\qquad z_L, z_U \end{eqnarray*}
let \(E = \{i : g_{L,i} = g_{U,i}\}\) and \(I = \{i : g_{L,i} \neq g_{U,i}\}\) be the indices of equality and inequality constraints, respectively. The dual variables for the constraints are \(\lambda\). The dual variables for the variable bounds are \(z_L\) and \(z_U\).
A TNLPAdapter represents the problem
\begin{eqnarray*} \mathrm{min} && f(x), \\ \mathrm{s.t.} && c(x) = 0, &\qquad y_c\\ && d_L \leq d(x) \leq d_U, &\qquad y_d \\ && x_L \leq x \leq x_U, &\qquad z_L, z_U \end{eqnarray*}
where \(c(x) = g_E(x) - g_{L,E}\), i.e., corresponding to equality constraints of TNLP, and \(d(x) = g_I(x)\), \(d_L = g_{L,I}\), \(d_U = g_{U,I}\), i.e., corresponding to inequality constraints of TNLP.
The dual variables for the constraints are \(y_c\) and \(y_d\). The dual variables for the bounds on slack and original variables are \(s_L\), \(s_U\), \(z_L\), \(z_U\).
Internally, Ipopt reformulates \(d_L \leq d(x) \leq d_U\) as
\begin{eqnarray*} && d(x) - s = 0 &\qquad y_d\\ && d_L \leq s \leq d_U &\qquad v_L, v_U \\ \end{eqnarray*}
If fixed variables are present ( \(x_{L,i} = x_{U,i}\)) in the TNLP and fixed_variable_treatment is set to make_parameter, then these variables are not made visible to Ipopt internally. If fixed_variable_treatment is set to make_constraint, then their bounds relaxed and equality constraints \(x_i - x_{L,i} = 0\) are added to the end of \(c(x) = 0\).
Definition at line 65 of file IpTNLPAdapter.hpp.
Enum for treatment of fixed variables option.
Enumerator | |
---|---|
MAKE_PARAMETER | |
MAKE_PARAMETER_NODUAL |
|
MAKE_CONSTRAINT | |
RELAX_BOUNDS |
Definition at line 240 of file IpTNLPAdapter.hpp.
Enum for specifying which derivative test is to be performed.
Enumerator | |
---|---|
NO_TEST | |
FIRST_ORDER_TEST | |
SECOND_ORDER_TEST | |
ONLY_SECOND_ORDER_TEST |
Definition at line 249 of file IpTNLPAdapter.hpp.
Enum for specifying technique for computing Jacobian.
Enumerator | |
---|---|
JAC_EXACT | |
JAC_FINDIFF_VALUES |
Definition at line 258 of file IpTNLPAdapter.hpp.
Enum for specifying technique for computing objective Gradient.
Enumerator | |
---|---|
OBJGRAD_EXACT | |
OBJGRAD_FINDIFF_VALUES |
Definition at line 265 of file IpTNLPAdapter.hpp.
Ipopt::TNLPAdapter::TNLPAdapter | ( | const SmartPtr< TNLP > | tnlp, |
const SmartPtr< const Journalist > | jnlst = NULL |
||
) |
Default constructor.
|
virtual |
Default destructor.
|
private |
Copy Constructor.
Ipopt::TNLPAdapter::DECLARE_STD_EXCEPTION | ( | INVALID_TNLP | ) |
Ipopt::TNLPAdapter::DECLARE_STD_EXCEPTION | ( | ERROR_IN_TNLP_DERIVATIVE_TEST | ) |
|
virtual |
Overload if you want the chance to process options or parameters that may be specific to the NLP.
Reimplemented from Ipopt::NLP.
|
virtual |
|
virtual |
Method for obtaining the bounds information.
Implements Ipopt::NLP.
|
virtual |
Method for obtaining the starting point for all the iterates.
Implements Ipopt::NLP.
|
virtual |
Method for obtaining an entire iterate as a warmstart point.
The incoming IteratesVector has to be filled.
Reimplemented from Ipopt::NLP.
Implements Ipopt::NLP.
Implements Ipopt::NLP.
Implements Ipopt::NLP.
Implements Ipopt::NLP.
Implements Ipopt::NLP.
Implements Ipopt::NLP.
|
virtual |
Implements Ipopt::NLP.
|
virtual |
Routines to get the scaling parameters.
These do not need to be overloaded unless the options are set for user scaling.
Reimplemented from Ipopt::NLP.
|
virtual |
This method is called at the very end of the optimization.
It provides the final iterate to the user, so that it can be stored as the solution. The status flag indicates the outcome of the optimization, where SolverReturn is defined in IpAlgTypes.hpp.
Reimplemented from Ipopt::NLP.
|
virtual |
This method is called once per iteration, after the iteration summary output has been printed.
It provides the current information to the user to do with it anything she wants. It also allows the user to ask for a premature termination of the optimization by returning false, in which case Ipopt will terminate with a corresponding return status. The basic information provided in the argument list has the quantities values printed in the iteration summary line. If more information is required, a user can obtain it from the IpData and IpCalculatedQuantities objects. However, note that the provided quantities are all for the problem that Ipopt sees, i.e., the quantities might be scaled, fixed variables might be sorted out, etc. The status indicates things like whether the algorithm is in the restoration phase... In the restoration phase, the dual variables are probably not not changing.
Reimplemented from Ipopt::NLP.
|
virtual |
Method returning information on quasi-Newton approximation.
Reimplemented from Ipopt::NLP.
bool Ipopt::TNLPAdapter::CheckDerivatives | ( | DerivativeTestEnum | deriv_test, |
Index | deriv_test_start_index | ||
) |
Method for performing the derivative test.
|
static |
Accessor method for the underlying TNLP.
Definition at line 282 of file IpTNLPAdapter.hpp.
Sort the primal variables, and add the fixed values in x_orig.
x | internal values for primal variables x |
x_orig | vector to fill with values from x |
usefixedvals | whether to use stored variable fixings for fixed variables (true), or zero (false) |
void Ipopt::TNLPAdapter::ResortG | ( | const Vector & | c, |
const Vector & | d, | ||
Number * | g_orig, | ||
bool | correctrhs = false |
||
) |
Sort constraint values.
To Ipopt, the equality constraints are presented with right hand side zero. Specifying correctrhs=true corrects for the original right hand side.
c | internal activity for equality constraints |
d | internal activity for inequality constraints |
g_orig | vector to fill with values from c and d |
correctrhs | whether to add unscaled rhs-values for constraints that internally correspond to c(x)=0 |
void Ipopt::TNLPAdapter::ResortBounds | ( | const Vector & | x_L, |
Number * | x_L_orig, | ||
const Vector & | x_U, | ||
Number * | x_U_orig | ||
) |
Provides values for lower and upper bounds on variables for given Ipopt-internal vectors.
Similar to ResortX, but does so for two arrays and does not set any values for fixed variables.
x_L | internal values for lower bounds on x |
x_L_orig | vector to fill with values from x_L |
x_U | internal values for upper bounds on x |
x_U_orig | vector to fill with values from x_U |
|
inline |
Provides values for lower and upper bounds on variables for given Ipopt-internal vectors.
Similar to ResortX, but does so for two arrays and does not set any values for fixed variables.
x_L | internal values for lower bounds on x |
x_L_orig | vector to fill with values from x_L |
x_U | internal values for upper bounds on x |
x_U_orig | vector to fill with values from x_U |
clearorig | whether to initialize complete x_L_orig and x_U_orig to 0.0 before setting values for non-fixed variables - ignored |
Definition at line 331 of file IpTNLPAdapter.hpp.
bool Ipopt::TNLPAdapter::ResortBoundMultipliers | ( | const Vector & | x, |
const Vector & | y_c, | ||
const Vector & | y_d, | ||
const Vector & | z_L, | ||
Number * | z_L_orig, | ||
const Vector & | z_U, | ||
Number * | z_U_orig | ||
) |
Provides values for dual multipliers on lower and upper bounds on variables for given Ipopt-internal vectors.
Similar to ResortBounds, but also provides dual values for fixed variables if fixed_variable_treatment is set to make_constraint or make_parameter.
x | internal values for primal variables x |
y_c | internal values for equality constraint multipliers |
y_d | internal values for inequality constraint multipliers |
z_L | internal values for lower bound multipliers |
z_L_orig | vector to fill with values from z_L |
z_U | internal values for upper bound multipliers |
z_U_orig | vector to fill with values from z_U |
Get number of variables and number of constraints in TNLP.
n | storage for full dimension of x (fixed + non-fixed) |
m | storage for full dimension of g (c + d) |
Definition at line 368 of file IpTNLPAdapter.hpp.
|
inline |
Get number and indices of fixed variables.
n_x_fixed | storage for number of fixed variables in TNLP |
x_fixed_map | storage for pointer to array that holds indices of fixed variables (has length n_fixed_x, can be NULL if n_fixed_x=0) |
fixed_variable_treatment | treatment for fixed variables as used by TNLP |
Definition at line 380 of file IpTNLPAdapter.hpp.
|
inline |
Get mappings between TNLP indices and Ipopt internal indices for variables and constraints.
See the various ResortXyz functions on usage.
P_x_full_x | map from TNLP variable indices to Ipopt internal indices, filtered variables get mapped to -1 |
P_x_x_L | map from indices on lower bounds on x to Ipopt internal indices for x |
P_x_x_U | map from indices on upper bounds on x to Ipopt internal indices for x |
P_c_g | map from indices on equality constraints (c(x)=0) into TNLP constraint indices (g_l <= g(x) <= g_u) |
P_d_g | map from indices on inequality constraints (d(x)-s=0) into TNLP constraint indices (g_l <= g(x) <= g_u) |
Definition at line 398 of file IpTNLPAdapter.hpp.
Get right-hand-sides that are added into c(x)
Definition at line 416 of file IpTNLPAdapter.hpp.
|
private |
Default Assignment Operator.
|
private |
Initialize sparsity structure for finite difference Jacobian.
Pointer to the TNLP class (class specific to Number* vectors and triplet matrices)
Definition at line 458 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 461 of file IpTNLPAdapter.hpp.
|
private |
Object that can be used to detect linearly dependent rows in the equality constraint Jacobian.
Definition at line 464 of file IpTNLPAdapter.hpp.
|
private |
Value for a lower bound that denotes -infinity.
Definition at line 469 of file IpTNLPAdapter.hpp.
|
private |
Value for a upper bound that denotes infinity.
Definition at line 471 of file IpTNLPAdapter.hpp.
|
private |
Flag indicating how fixed variables should be handled.
Definition at line 473 of file IpTNLPAdapter.hpp.
|
private |
Determines relaxation of fixing bound for RELAX_BOUNDS.
Definition at line 475 of file IpTNLPAdapter.hpp.
|
private |
Maximal slack for one-sidedly bounded variables.
If a variable has only one bound, say a lower bound xL, then an upper bound xL + max_onesided_bound_slack_. If this value is zero, no upper bound is added. Whether and which derivative test should be performed at starting point
Definition at line 482 of file IpTNLPAdapter.hpp.
|
private |
Size of the perturbation for the derivative test.
Definition at line 484 of file IpTNLPAdapter.hpp.
|
private |
Relative threshold for marking deviation from finite difference test.
Definition at line 486 of file IpTNLPAdapter.hpp.
|
private |
Flag indicating if all test values should be printed, or only those violating the threshold.
Definition at line 488 of file IpTNLPAdapter.hpp.
|
private |
Index of first quantity to be checked.
Definition at line 490 of file IpTNLPAdapter.hpp.
|
private |
Flag indicating whether the TNLP with identical structure has already been solved before.
Definition at line 492 of file IpTNLPAdapter.hpp.
|
private |
Flag indicating what Hessian information is to be used.
Definition at line 494 of file IpTNLPAdapter.hpp.
|
private |
Number of linear variables.
Definition at line 496 of file IpTNLPAdapter.hpp.
|
private |
Flag indicating how Jacobian is computed.
Definition at line 498 of file IpTNLPAdapter.hpp.
|
private |
Flag indicating how objective Gradient is computed.
Definition at line 500 of file IpTNLPAdapter.hpp.
|
private |
Size of the perturbation for the derivative approximation.
Definition at line 502 of file IpTNLPAdapter.hpp.
|
private |
Maximal perturbation of the initial point.
Definition at line 504 of file IpTNLPAdapter.hpp.
|
private |
Flag indicating if rhs should be considered during dependency detection.
Definition at line 506 of file IpTNLPAdapter.hpp.
|
private |
Overall convergence tolerance.
Definition at line 509 of file IpTNLPAdapter.hpp.
|
private |
full dimension of x (fixed + non-fixed)
Definition at line 515 of file IpTNLPAdapter.hpp.
|
private |
full dimension of g (c + d)
Definition at line 517 of file IpTNLPAdapter.hpp.
|
private |
non-zeros of the jacobian of c
Definition at line 519 of file IpTNLPAdapter.hpp.
|
private |
non-zeros of the jacobian of c without added constraints for fixed variables.
Definition at line 521 of file IpTNLPAdapter.hpp.
|
private |
non-zeros of the jacobian of d
Definition at line 523 of file IpTNLPAdapter.hpp.
|
private |
number of non-zeros in full-size Jacobian of g
Definition at line 525 of file IpTNLPAdapter.hpp.
|
private |
number of non-zeros in full-size Hessian
Definition at line 527 of file IpTNLPAdapter.hpp.
|
private |
number of non-zeros in the non-fixed-size Hessian
Definition at line 529 of file IpTNLPAdapter.hpp.
|
private |
Number of fixed variables.
Definition at line 531 of file IpTNLPAdapter.hpp.
|
private |
Numbering style of variables and constraints.
Definition at line 535 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 539 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 540 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 541 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 542 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 543 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 544 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 545 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 546 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 547 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 548 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 549 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 550 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 551 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 552 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 557 of file IpTNLPAdapter.hpp.
|
private |
copy of the full x vector (fixed & non-fixed)
Definition at line 558 of file IpTNLPAdapter.hpp.
|
private |
copy of lambda (yc & yd)
Definition at line 559 of file IpTNLPAdapter.hpp.
|
private |
copy of g (c & d)
Definition at line 560 of file IpTNLPAdapter.hpp.
|
private |
the values for the full jacobian of g
Definition at line 561 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 566 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 567 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 568 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 569 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 570 of file IpTNLPAdapter.hpp.
|
private |
Expansion from fixed x (ipopt) to full x.
Definition at line 598 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 599 of file IpTNLPAdapter.hpp.
|
private |
Expansion from fixed x_L (ipopt) to full x.
Definition at line 602 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 603 of file IpTNLPAdapter.hpp.
|
private |
Expansion from fixed x_U (ipopt) to full x.
Definition at line 606 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 607 of file IpTNLPAdapter.hpp.
|
private |
Expansion from c only (ipopt) to full ampl c.
Definition at line 610 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 611 of file IpTNLPAdapter.hpp.
|
private |
Expansion from d only (ipopt) to full ampl d.
Definition at line 614 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 615 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 617 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 618 of file IpTNLPAdapter.hpp.
|
private |
Position of fixed variables.
This is required for a warm start
Definition at line 621 of file IpTNLPAdapter.hpp.
|
private |
|
private |
Definition at line 625 of file IpTNLPAdapter.hpp.
|
private |
Definition at line 626 of file IpTNLPAdapter.hpp.
|
private |
Number of unique nonzeros in constraint Jacobian.
Definition at line 632 of file IpTNLPAdapter.hpp.
|
private |
Start position for nonzero indices in ja for each column of Jacobian.
Definition at line 634 of file IpTNLPAdapter.hpp.
|
private |
Ordered by columns, for each column the row indices in Jacobian.
Definition at line 636 of file IpTNLPAdapter.hpp.
|
private |
Position of entry in original triplet matrix.
Definition at line 638 of file IpTNLPAdapter.hpp.
|
private |
Copy of the lower bounds.
Definition at line 640 of file IpTNLPAdapter.hpp.
|
private |
Copy of the upper bounds.
Definition at line 642 of file IpTNLPAdapter.hpp.