Skip to content

Commit 1ea4140

Browse files
committed
Fix test to account for CFY and add more comments
1 parent d6f81c2 commit 1ea4140

File tree

1 file changed

+21
-8
lines changed

1 file changed

+21
-8
lines changed

tests/unit/test_concentrations.py

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ def test_evaluate_conc():
2222
dt = np.diff([0, 1, 2])
2323

2424
# N(dt) = (F*y/lam) * (1 - exp(-lam*dt))
25+
name = 'Fission and decay'
2526
lam = np.log(2) / 10
2627
lam_p = np.log(2) / 10
2728
new_conc, new_p_conc = conc._evaluate_conc(
@@ -31,9 +32,10 @@ def test_evaluate_conc():
3132
)
3233
assert new_p_conc == 0
3334
expected = (1.0 / lam) * (1 - np.exp(-lam * 1))
34-
assert np.isclose(new_conc, expected)
35+
assert np.isclose(new_conc, expected), f"{name}"
3536

3637
# N(dt) = N0 * exp(-lam*dt)
38+
name = 'Pure decay'
3739
N0 = 5.0
3840
lam = np.log(2) / 10
3941
new_conc, new_p_conc = conc._evaluate_conc(
@@ -42,9 +44,10 @@ def test_evaluate_conc():
4244
y_p=0.0, y=1.0
4345
)
4446
expected = N0 * np.exp(-lam * 1)
45-
assert np.isclose(new_conc, expected)
47+
assert np.isclose(new_conc, expected), f"{name}"
4648

4749
# N(dt) = N0*exp(-l*dt) + (lp*Np0/(l-lp)) * (exp(-lp*dt) - exp(-l*dt))
50+
name = 'Pure decay with parent'
4851
lam_p = np.log(2) / 30
4952
lam = np.log(2) / 10
5053
Np0, Nc0 = 10.0, 0.0
@@ -57,10 +60,11 @@ def test_evaluate_conc():
5760
expected_c = (Nc0 * np.exp(-lam * 1)
5861
+ (lam_p * Np0 / (lam - lam_p))
5962
* (np.exp(-lam_p * 1) - np.exp(-lam * 1)))
60-
assert np.isclose(new_p_conc, expected_p), 'Parent incorrect'
61-
assert np.isclose(new_conc, expected_c), 'Daughter incorrect'
63+
assert np.isclose(new_p_conc, expected_p), f'{name} Parent incorrect'
64+
assert np.isclose(new_conc, expected_c), f'{name} Daughter incorrect'
6265

6366
# Same but equal half-lives
67+
name = 'Pure decay with parent (same hl)'
6468
lam_p = lam = np.log(2) / 10
6569
Np0, Nc0 = 10.0, 0.0
6670
new_conc, new_p_conc = conc._evaluate_conc(
@@ -70,10 +74,11 @@ def test_evaluate_conc():
7074
)
7175
expected_p = Np0 * np.exp(-lam_p * 1)
7276
expected_c = lam_p * Np0 * 1 * np.exp(-lam * 1)
73-
assert np.isclose(new_p_conc, expected_p), 'Parent incorrect'
74-
assert np.isclose(new_conc, expected_c), 'Daughter incorrect'
77+
assert np.isclose(new_p_conc, expected_p), f'{name} Parent incorrect'
78+
assert np.isclose(new_conc, expected_c), f'{name} Daughter incorrect'
7579

7680
# N(dt) = N0 + F*y*dt
81+
name = 'Fission no decay'
7782
lam = 0.0
7883
lam_p = np.log(2) / 10
7984
new_conc, new_p_conc = conc._evaluate_conc(
@@ -82,7 +87,7 @@ def test_evaluate_conc():
8287
y_p=0.0, y=3.0
8388
)
8489
expected = 2.0 * 3.0 * 1
85-
assert np.isclose(new_conc, expected)
90+
assert np.isclose(new_conc, expected), f'{name}'
8691

8792
# Pulse irradiation
8893
lam = np.log(2) / 10
@@ -121,6 +126,7 @@ def test_evaluate_conc():
121126
def test_evaluate_conc():
122127
input_path = './tests/unit/input/input.json'
123128
conc = Concentrations(input_path)
129+
conc.conc_method = 'IFY'
124130
times = [0, 1, 2]
125131
dt = np.diff(times)
126132
cur_conc = 0
@@ -136,4 +142,11 @@ def test_evaluate_conc():
136142
new_conc, new_p_conc = conc._evaluate_conc(cur_conc, cur_p_conc, lam_p, lam, ti, dt, fission_rates, concs, p_concs, y_p, y)
137143
assert new_p_conc == 0
138144
new_conc_expected = 1/lam * (1 - np.exp(-lam * 1))
139-
assert new_conc == new_conc_expected
145+
assert new_conc == new_conc_expected, "Concentrations don't match"
146+
147+
conc.conc_method = 'CFY'
148+
new_conc, new_p_conc = conc._evaluate_conc(cur_conc, cur_p_conc, lam_p, lam, ti, dt, fission_rates, concs, p_concs, y_p, y)
149+
assert new_p_conc == y_p / lam_p
150+
new_conc_expected = (y_p + y) / lam
151+
assert new_conc == new_conc_expected, "Concentrations don't match"
152+

0 commit comments

Comments
 (0)