From e73a99409caee1018f786bc1dd7c4f8756099b0f Mon Sep 17 00:00:00 2001 From: Fabian Joswig Date: Mon, 18 Oct 2021 10:00:15 +0100 Subject: [PATCH] speed up for derived_observable when applied to 1d observables --- pyerrors/pyerrors.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pyerrors/pyerrors.py b/pyerrors/pyerrors.py index 2e14d2e0..e1a5f7d9 100644 --- a/pyerrors/pyerrors.py +++ b/pyerrors/pyerrors.py @@ -758,8 +758,10 @@ def derived_observable(func, data, **kwargs): else: if new_shape[name] != tmp: raise Exception('Shapes of ensemble', name, 'do not match.') - - values = np.vectorize(lambda x: x.value)(data) + if data.ndim == 1: + values = np.array([o.value for o in data]) + else: + values = np.vectorize(lambda x: x.value)(data) new_values = func(values, **kwargs)