From 6286c3d782e3481375de0d5bb3d591057ebd792b Mon Sep 17 00:00:00 2001 From: Alexis Montoison Date: Thu, 12 May 2022 19:42:04 -0400 Subject: [PATCH] Optimize hessian_structure function for quadratic constraints --- src/moi_nlp_model.jl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/moi_nlp_model.jl b/src/moi_nlp_model.jl index 40cfc02..eea3e57 100644 --- a/src/moi_nlp_model.jl +++ b/src/moi_nlp_model.jl @@ -334,10 +334,10 @@ function NLPModels.hess_structure!( end end if nlp.quadcon.nquad > 0 - quad_nnzh = nlp.quadcon.nnzh - hrows, hcols = hessian_structure(nlp.quadcon.set) - rows[(1 + nlp.obj.nnzh):(nlp.obj.nnzh + quad_nnzh)] .= hrows - cols[(1 + nlp.obj.nnzh):(nlp.obj.nnzh + quad_nnzh)] .= hcols + for (index, tuple) in enumerate(nlp.quadcon.set) + rows[nlp.obj.nnzh + index] = tuple[1] + cols[nlp.obj.nnzh + index] = tuple[2] + end end if (nlp.obj.type == "NONLINEAR") || (nlp.meta.nnln > nlp.quadcon.nquad) hesslag_struct = MOI.hessian_lagrangian_structure(nlp.eval)