Skip to content

Commit e0c03e5

Browse files
committed
fix: small divide by zero errors
1 parent 1d46eca commit e0c03e5

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

glassure/transform.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -214,5 +214,6 @@ def calculate_gr(fr_pattern: Pattern, atomic_density: float) -> Pattern:
214214
:return: g(r) pattern
215215
"""
216216
r, f_r = fr_pattern.data
217-
g_r = 1 + f_r / (4.0 * np.pi * r * atomic_density)
217+
r_safe = np.where(r == 0, 1e-10, r)
218+
g_r = 1 + f_r / (4.0 * np.pi * r_safe * atomic_density)
218219
return Pattern(r, g_r)

tests/test_fitting.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ def setUp(self):
1414

1515
def test_i_q_peak(self):
1616
q = np.linspace(0, 10, 1001)
17+
q[0] = 1e-10
1718
peak = i_q_peak(q, 4, 1.6, 0.1, self.composition, 'Si', 'O')
1819
self.assertEqual(len(peak), len(q))
1920

0 commit comments

Comments
 (0)