From aa90ba931d94caabe326dc99da946d68ff573096 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ku=C4=8Dera?= Date: Thu, 5 Sep 2024 16:19:58 +0200 Subject: [PATCH] Fix per_ptjet fit --- machine_learning_hep/analysis/analyzer_jets.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/machine_learning_hep/analysis/analyzer_jets.py b/machine_learning_hep/analysis/analyzer_jets.py index a61906c4a8..00f4ec84a1 100644 --- a/machine_learning_hep/analysis/analyzer_jets.py +++ b/machine_learning_hep/analysis/analyzer_jets.py @@ -471,9 +471,8 @@ def fit(self): continue roows = self.roows.get(ipt) if iptjet is None else self.roows_ptjet.get((iptjet, ipt)) if roows is None and level != self.fit_levels[0]: - self.logger.warning('missing previous fit result, skipping %s iptjet %s ipt %d', - level, iptjet, ipt) - continue + self.logger.critical('missing previous fit result, cannot fit %s iptjet %s ipt %d', + level, iptjet, ipt) for par in fitcfg.get('fix_params', []): if var := roows.var(par): var.setConstant(True) @@ -494,11 +493,16 @@ def fit(self): # TODO: save snapshot per level # roo_ws.saveSnapshot(level, None) if iptjet is not None: + self.logger.debug("Setting roows_ptjet for %s iptjet %s ipt %d", level, iptjet, ipt) self.roows_ptjet[(iptjet, ipt)] = roo_ws self.roo_ws_ptjet[level][iptjet][ipt] = roo_ws else: + self.logger.debug("Setting roows for %s iptjet %s ipt %d", level, iptjet, ipt) self.roows[ipt] = roo_ws self.roo_ws[level][ipt] = roo_ws + for jptjet in range(get_nbins(h, 1)): + self.roows_ptjet[(jptjet, ipt)] = roo_ws.Clone() + self.roo_ws_ptjet[level][jptjet][ipt] = roo_ws.Clone() # TODO: take parameter names from DB if level in ('data', 'mc'): varname_mean = fitcfg.get('var_mean', 'mean')