From a8779a0415aa064ad2f110d8b0c12ea9d4fa4df2 Mon Sep 17 00:00:00 2001 From: Maciej Bartkowiak Date: Tue, 4 Feb 2025 13:40:34 +0000 Subject: [PATCH] Adapt tests to the new weight scheme --- MDANSE/Src/MDANSE/Mathematics/Signal.py | 3 ++- .../Tests/UnitTests/Analysis/test_dynamics.py | 4 ++-- .../UnitTests/Analysis/test_mock_dynamics.py | 11 +++++------ .../short_trajectory_after_changes.mdt | Bin 250829 -> 202229 bytes 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/MDANSE/Src/MDANSE/Mathematics/Signal.py b/MDANSE/Src/MDANSE/Mathematics/Signal.py index 937a99d764..6202e3f32c 100644 --- a/MDANSE/Src/MDANSE/Mathematics/Signal.py +++ b/MDANSE/Src/MDANSE/Mathematics/Signal.py @@ -144,8 +144,9 @@ def normalisation_factor(x, axis=0): s[axis] = slice(0, 1, 1) s = tuple(s) + scaling_factor = x.scaling_factor - return 1 / x[s] + return 1 / (scaling_factor * x[s]) def differentiate(a, dt=1.0, order=1): diff --git a/MDANSE/Tests/UnitTests/Analysis/test_dynamics.py b/MDANSE/Tests/UnitTests/Analysis/test_dynamics.py index ce34a4f93c..c7fa481c14 100644 --- a/MDANSE/Tests/UnitTests/Analysis/test_dynamics.py +++ b/MDANSE/Tests/UnitTests/Analysis/test_dynamics.py @@ -69,7 +69,7 @@ def test_vacf(interp_order, normalise): with h5py.File(temp_name + ".mda") as actual, h5py.File(result_file) as desired: for key in ["vacf_Cu", "vacf_S", "vacf_Sb", "vacf_total"]: np.testing.assert_array_almost_equal( - actual[f"/{key}"] * actual[f"/{key}"].attrs[f"/{key}"], + actual[f"/{key}"] * actual[f"/{key}"].attrs["scaling_factor"], desired[f"/{key}"], ) @@ -105,7 +105,7 @@ def test_pps(): "pps_total", ]: np.testing.assert_array_almost_equal( - actual[f"/{key}"] * actual[f"/{key}"].attrs[f"/{key}"], + actual[f"/{key}"] * actual[f"/{key}"].attrs["scaling_factor"], desired[f"/{key}"], ) diff --git a/MDANSE/Tests/UnitTests/Analysis/test_mock_dynamics.py b/MDANSE/Tests/UnitTests/Analysis/test_mock_dynamics.py index 410b054f69..04a9ae7db4 100644 --- a/MDANSE/Tests/UnitTests/Analysis/test_mock_dynamics.py +++ b/MDANSE/Tests/UnitTests/Analysis/test_mock_dynamics.py @@ -51,12 +51,11 @@ def test_vacf(interp_order, normalise): result_file = os.path.join(result_dir, fname) with h5py.File(temp_name + ".mda") as actual, h5py.File(result_file) as desired: - np.testing.assert_array_almost_equal(actual["/vacf_H"], desired["/vacf_H"]) - np.testing.assert_array_almost_equal(actual["/vacf_O"], desired["/vacf_O"]) - np.testing.assert_array_almost_equal(actual["/vacf_Si"], desired["/vacf_Si"]) - np.testing.assert_array_almost_equal( - actual["/vacf_total"], desired["/vacf_total"] - ) + for key in ["vacf_H", "vacf_O", "vacf_Si", "vacf_total"]: + np.testing.assert_array_almost_equal( + actual[f"/{key}"] * actual[f"/{key}"].attrs["scaling_factor"], + desired[f"/{key}"], + ) os.remove(temp_name + ".mda") assert path.exists(temp_name + ".log") diff --git a/MDANSE/Tests/UnitTests/Converted/short_trajectory_after_changes.mdt b/MDANSE/Tests/UnitTests/Converted/short_trajectory_after_changes.mdt index 88fd0e5046f1648298245348a8027ed83f798653..bbb3ad454d5519c386b6dd74338985dcc355ee44 100644 GIT binary patch delta 65120 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 MBR^zLHqC$hBbF@F00000