Skip to content
Snippets Groups Projects
Commit d43bf22d authored by Thomas Toulorge's avatar Thomas Toulorge
Browse files

Fixed bug in Jacobian-triggered "zero-gradient" stop

parent 8e7dd9ab
No related branches found
No related tags found
No related merge requests found
...@@ -84,11 +84,13 @@ void OptHOM::evalObjGrad(const alglib::real_1d_array &x, double &Obj, alglib::re ...@@ -84,11 +84,13 @@ void OptHOM::evalObjGrad(const alglib::real_1d_array &x, double &Obj, alglib::re
Obj = 0.; Obj = 0.;
for (int i = 0; i < gradObj.length(); i++) gradObj[i] = 0.; for (int i = 0; i < gradObj.length(); i++) gradObj[i] = 0.;
if ((minJac > barrier_min) && (maxJac < barrier_max)) addJacObjGrad(Obj, gradObj);
addDistObjGrad(lambda, lambda2, Obj, gradObj);
if ((minJac > barrier_min) && (maxJac < barrier_max)) {
printf("INFO: reached Jacobian requirements, setting null gradient\n"); printf("INFO: reached Jacobian requirements, setting null gradient\n");
else { Obj = 0.;
addJacObjGrad(Obj, gradObj); for (int i = 0; i < gradObj.length(); i++) gradObj[i] = 0.;
addDistObjGrad(lambda, lambda2, Obj, gradObj);
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment