From a7791e18965e356f952483d09c419df420b01866 Mon Sep 17 00:00:00 2001 From: Bernard Knueven Date: Tue, 18 Jun 2024 22:13:35 -0600 Subject: [PATCH] always return a scaling factor --- .../contrib/pynumero/interfaces/pyomo_nlp.py | 22 ++++++------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/pyomo/contrib/pynumero/interfaces/pyomo_nlp.py b/pyomo/contrib/pynumero/interfaces/pyomo_nlp.py index a793419efc0..8759329389d 100644 --- a/pyomo/contrib/pynumero/interfaces/pyomo_nlp.py +++ b/pyomo/contrib/pynumero/interfaces/pyomo_nlp.py @@ -299,32 +299,24 @@ def get_inequality_constraint_indices(self, constraints): # overloaded from NLP def get_obj_scaling(self): obj = self.get_pyomo_objective() - val = SuffixFinder('scaling_factor').find(obj) + val = SuffixFinder('scaling_factor', 1.0).find(obj) return val # overloaded from NLP def get_primals_scaling(self): - scaling_suffix_finder = SuffixFinder('scaling_factor') + scaling_suffix_finder = SuffixFinder('scaling_factor', 1.0) primals_scaling = np.ones(self.n_primals()) - ret = None for i, v in enumerate(self.get_pyomo_variables()): - val = scaling_suffix_finder.find(v) - if val is not None: - primals_scaling[i] = val - ret = primals_scaling - return ret + primals_scaling[i] = scaling_suffix_finder.find(v) + return primals_scaling # overloaded from NLP def get_constraints_scaling(self): - scaling_suffix_finder = SuffixFinder('scaling_factor') + scaling_suffix_finder = SuffixFinder('scaling_factor', 1.0) constraints_scaling = np.ones(self.n_constraints()) - ret = None for i, c in enumerate(self.get_pyomo_constraints()): - val = scaling_suffix_finder.find(c) - if val is not None: - constraints_scaling[i] = val - ret = constraints_scaling - return ret + constraints_scaling[i] = scaling_suffix_finder.find(c) + return constraints_scaling def extract_subvector_grad_objective(self, pyomo_variables): """Compute the gradient of the objective and return the entries