ContentsIndexHome
PreviousUpNext
IAimmsMathProgramNonLinearEvaluator::EvaluateHessian Method

Evaluate the Hessian.

virtual _LONG_T EvaluateHessian(
    double point[], 
    double weights[], 
    int nhess, 
    double value[], 
    double obj_weight
) = 0;
Parameters 
Description 
double point[] 
Double-valued array containing the point of evaluation. The length of the array should match the total number of columns. 
double weights[] 
Double-valued array of weights on the individual rows. 
int nhess 
The number of Hessian elements. 
double value[] 
Double-valued array of length nhess with the coefficient values of the Hessian elements on output. The individual elements will be defined in the same order as they are returned by the GetHessianSparsityPattern method. 
double obj_weight 
The Lagrangian coefficient (weight) of the objective row. This value is only used by AIMMS in case the solver can handle objective row reduction. 

The EvaluateHessian method returns the number of domain (evaluation) errors that occurred while calculating the Hessian of the Lagrangian.

The EvaluateHessian method is used to let AIMMS evaluate the Hessian of the Lagrangian. This method should be used only for nonlinear models.

  1. The Lagrangian is defined as the sum over all nonlinear rows of the function value of the row multiplied by its weight as given by weights. The function values will be retrieved by using the EvaluateRow method.
  2. The number of Hessian elements, nhess, is passed to the solver by the DoSolve method using the parameter IntegerMathProgramInfo::IPARAM_HESSIAN_ELEM.
  3. The obj_weight argument will only be used by AIMMS if the capability flag SolverCapability::CAPAB_OBJ_ROW_REDUC is set in the GetInitialInfo method, which specifies that the solver can handle objective row reduction.
  4. The total number of columns in the model is equal to the value of IntegerMathProgramInfo::IPARAM_COLS, as passed to the DoSolve method.

Copyright © 1993–2016 by AIMMS B.V. All rights reserved.