diff --git a/common/src/aaredaqlib/diffraction_geometry.py b/common/src/aaredaqlib/diffraction_geometry.py index 3a1f1219..850b7fac 100644 --- a/common/src/aaredaqlib/diffraction_geometry.py +++ b/common/src/aaredaqlib/diffraction_geometry.py @@ -42,6 +42,8 @@ class DiffractionGeometry(BaseModel): def calc_dtz_mm(self, exp_resolution_angstrom: float) -> float: if exp_resolution_angstrom <= 0: raise ValueError("Resolution must be positive") - - theta = math.asin(self.wavelength_angstrom / (2 * exp_resolution_angstrom)) + x = self.wavelength_angstrom / (2 * exp_resolution_angstrom) + if x >= 1.0 or x <= -1.0: + return 0.0 + theta = math.asin(x) return self.detector_radius_mm / math.tan(theta) \ No newline at end of file