reweighting test added, bug in reweighting propagation fixed

This commit is contained in:
Fabian Joswig 2021-10-29 16:42:01 +01:00
parent eef464ec26
commit a569209d51
2 changed files with 11 additions and 2 deletions

View file

@ -943,8 +943,8 @@ def derived_observable(func, data, **kwargs):
n_obs = len(raveled_data)
new_names = sorted(set([y for x in [o.names for o in raveled_data] for y in x]))
is_merged = len(list(filter(lambda o: o.is_merged is True, raveled_data))) > 1
reweighted = len(list(filter(lambda o: o.reweighted is True, raveled_data))) > 1
is_merged = len(list(filter(lambda o: o.is_merged is True, raveled_data))) > 0
reweighted = len(list(filter(lambda o: o.reweighted is True, raveled_data))) > 0
new_idl_d = {}
for name in new_names:
idl = []

View file

@ -276,6 +276,15 @@ def test_cobs():
assert (other / my_cobs * my_cobs - other).is_zero()
def test_reweighting():
my_obs = pe.Obs([np.random.rand(1000)], ['t'])
assert not my_obs.reweighted
r_obs = pe.reweight(my_obs, [my_obs])
assert r_obs[0].reweighted
r_obs2 = r_obs[0] * my_obs
assert r_obs2.reweighted
def test_irregular_error_propagation():
obs_list = [pe.Obs([np.random.rand(100)], ['t']),
pe.Obs([np.random.rand(50)], ['t'], idl=[range(1, 100, 2)]),