CppAD: A C++ Algorithmic Differentiation Package  20171217
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
template<class Dvector, class ADvector, class FG_eval>
virtual bool CppAD::ipopt::solve_callback< Dvector, ADvector, FG_eval >::eval_h ( Index  n,
const Number x,
bool  new_x,
Number  obj_factor,
Index  m,
const Number lambda,
bool  new_lambda,
Index  nele_hess,
Index iRow,
Index jCol,
Number values 
)
inlinevirtual

Evaluate the Hessian of the Lagragian.

The Hessian of the Lagragian

The Hessian of the Lagragian is defined as

\[ H(x, \sigma, \lambda ) = \sigma \nabla^2 f(x) + \sum_{i=0}^{m-1} \lambda_i \nabla^2 g(x)_i \]

Parameters
[in]nis the dimension of the argument space for g(x); i.e., must be equal nx_.
xif values is not NULL, x is a vector of size nx_ containing the point at which to evaluate the Hessian of the Lagragian.
[in]new_xis false if the previous call to any one of the Evaluation Methods used the same value for x.
[in]obj_factorthe value $ \sigma $ multiplying the Hessian of f(x) in the expression for The Hessian of the Lagragian.
[in]mis the dimension of the range space for g(x); i.e., must be equal to ng_.
[in]lambdaif values is not NULL, lambda is a vector of size ng_ specifing the value of $ \lambda $ in the expression for The Hessian of the Lagragian.
[in]new_lambdais true if the previous call to eval_h had the same value for lambda and false otherwise. (Not currently used.)
[in]nele_hessis the number of possibly non-zero elements in the Hessian of the Lagragian; i.e., must be equal to nx_*(nx_+1)/2.
iRowif values is not NULL, iRow is not defined. if values is NULL, iRow is a vector with size nele_hess. The input value of its elements does not matter. On output, For k = 0 , ... , nele_hess-1, iRow[k] is the base zero row index for the k-th possibly non-zero entry in the Hessian fo the Lagragian.
jColif values is not NULL, jCol is not defined. if values is NULL, jCol is a vector with size nele_hess. The input value of its elements does not matter. On output, For k = 0 , ... , nele_hess-1, jCol[k] is the base zero column index for the k-th possibly non-zero entry in the Hessian of the Lagragian.
valuesif values is not NULL, it is a vector with size nele_hess. The input value of its elements does not matter. On output, For k = 0 , ... , nele_hess-1, values[k] is the value for the k-th possibly non-zero entry in the Hessian of the Lagragian.
Returns
The return value is always true; see Evaluation Methods.

Definition at line 960 of file solve_callback.hpp.