From b3b31b7b050f627d6c6b25835d0cf3b22b88b9ec Mon Sep 17 00:00:00 2001 From: Simon Kuberski Date: Wed, 17 Nov 2021 18:28:23 +0100 Subject: [PATCH] Simplified loop in derived_observable --- pyerrors/obs.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/pyerrors/obs.py b/pyerrors/obs.py index 0633025a..74fd9043 100644 --- a/pyerrors/obs.py +++ b/pyerrors/obs.py @@ -1101,18 +1101,16 @@ def derived_observable(func, data, **kwargs): new_samples = [] new_means = [] new_idl = [] - filtered_deltas = {} - filtered_idl_d = {} for name in new_names: if is_merged[name]: - filtered_deltas[name], filtered_idl_d[name] = _filter_zeroes(new_deltas[name], new_idl_d[name]) + filtered_deltas, filtered_idl_d = _filter_zeroes(new_deltas[name], new_idl_d[name]) else: - filtered_deltas[name] = new_deltas[name] - filtered_idl_d[name] = new_idl_d[name] - for name in new_names: - new_samples.append(filtered_deltas[name]) + filtered_deltas = new_deltas[name] + filtered_idl_d = new_idl_d[name] + + new_samples.append(filtered_deltas) + new_idl.append(filtered_idl_d) new_means.append(new_r_values[name][i_val]) - new_idl.append(filtered_idl_d[name]) final_result[i_val] = Obs(new_samples, new_names, means=new_means, idl=new_idl) final_result[i_val]._value = new_val final_result[i_val].is_merged = is_merged