private DoubleMatrix1D calculateNewtonStep ( DoubleMatrix2D hessX , DoubleMatrix1D gradX ) throws Exception { final KKTSolver kktSolver = new BasicKKTSolver ( ) ; if ( isCheckKKTSolutionAccuracy ( ) ) { kktSolver . setCheckKKTSolutionAccuracy ( isCheckKKTSolutionAccuracy ( ) ) ; kktSolver . setToleranceKKT ( getToleranceKKT ( ) ) ; } kktSolver . setHMatrix ( hessX ) ; kktSolver . setGVector ( gradX ) ; DoubleMatrix1D [ ] sol = kktSolver . solve ( ) ; DoubleMatrix1D step = sol [ 0 ] ; return step ; }
Hess . step = - Grad