Skip to content

Commit 7b70b11

Browse files
committed
test: solve recovers expected parameters
1 parent 2e50d3b commit 7b70b11

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

tests/estia/calibration_test.py

+23
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import numpy as np
2+
import pytest
23
import scipp as sc
4+
from scipp.testing import assert_allclose
5+
6+
from ess.estia.calibration import solve_for_calibration_parameters
37

48

59
def generate_valid_calibration_parameters():
@@ -44,3 +48,22 @@ def intensity_from_parameters(I0, Pp, Pa, Ap, Aa, Rpp, Rpa, Rap, Raa):
4448
+ Raa * (1 - Aa) * (1 - Pa)
4549
),
4650
)
51+
52+
53+
@pytest.mark.parametrize("seed", range(10))
54+
def test_calibration_solve_recovers_input(seed):
55+
np.random.seed(seed)
56+
I0, Pp, Pa, Ap, Aa, Rspp, Rsaa = generate_valid_calibration_parameters()
57+
Io = intensity_from_parameters(
58+
I0, Pp, Pa, Ap, Aa, sc.scalar(1), sc.scalar(0), sc.scalar(0), sc.scalar(1)
59+
)
60+
Is = intensity_from_parameters(
61+
I0, Pp, Pa, Ap, Aa, Rspp, sc.scalar(0), sc.scalar(0), Rsaa
62+
)
63+
tuple(
64+
map(
65+
assert_allclose,
66+
solve_for_calibration_parameters(Io, Is),
67+
(I0, Pp, Pa, Ap, Aa, Rspp, Rsaa),
68+
)
69+
)

0 commit comments

Comments
 (0)