From a6571e456591b7fb6d36495ee5ccaf2fea2c9250 Mon Sep 17 00:00:00 2001 From: Alastair Crabtree Date: Thu, 30 Apr 2026 19:17:10 +0100 Subject: [PATCH 1/4] Change MAX_FINE_TIME to a constant value See https://github.com/IMAP-Science-Operations-Center/imap_processing/issues/2464 --- imap_processing/mag/constants.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/imap_processing/mag/constants.py b/imap_processing/mag/constants.py index 8def1f80cd..bdfc2c454b 100644 --- a/imap_processing/mag/constants.py +++ b/imap_processing/mag/constants.py @@ -127,7 +127,7 @@ class ModeFlags(Enum): 165580141, ] -MAX_FINE_TIME = np.iinfo(np.uint16).max # maximum 16 bit unsigned int +MAX_FINE_TIME = 65536 # maximum 16 bit unsigned int AXIS_COUNT = 3 RANGE_BIT_WIDTH = 2 MAX_COMPRESSED_VECTOR_BITS = 60 From d97bf23e4d75c5b214c2d8335e2a2e6f28cacbd2 Mon Sep 17 00:00:00 2001 From: Alastair Crabtree Date: Thu, 30 Apr 2026 19:20:13 +0100 Subject: [PATCH 2/4] Refactor time conversion to use to_seconds method See https://github.com/IMAP-Science-Operations-Center/imap_processing/issues/2464 --- imap_processing/mag/l1a/mag_l1a_data.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/imap_processing/mag/l1a/mag_l1a_data.py b/imap_processing/mag/l1a/mag_l1a_data.py index ca360490fc..4bc02428af 100644 --- a/imap_processing/mag/l1a/mag_l1a_data.py +++ b/imap_processing/mag/l1a/mag_l1a_data.py @@ -90,9 +90,7 @@ def to_j2000ns(self) -> np.int64: j2000ns : numpy.int64 Time in nanoseconds since J2000 epoch. """ - coarse_j2000ns = np.int64(met_to_ttj2000ns(self.coarse_time)) - fine_ns = np.int64(self.fine_time / MAX_FINE_TIME * 1e9) - return coarse_j2000ns + fine_ns + return np.int64(met_to_ttj2000ns(self.to_seconds())) @dataclass From 18520a552e19276a3d1312e980443f325086f6a2 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 30 Apr 2026 18:24:57 +0000 Subject: [PATCH 3/4] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- imap_processing/mag/constants.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/imap_processing/mag/constants.py b/imap_processing/mag/constants.py index bdfc2c454b..84b78e63cf 100644 --- a/imap_processing/mag/constants.py +++ b/imap_processing/mag/constants.py @@ -2,8 +2,6 @@ from enum import Enum -import numpy as np - class DataMode(Enum): """ From 4480c146cd87c4e8c41df5994fdd6c3e7069c06d Mon Sep 17 00:00:00 2001 From: Alastair Crabtree Date: Thu, 30 Apr 2026 19:27:52 +0100 Subject: [PATCH 4/4] Fix assertion in test_mag_l1a.py for time tuple --- imap_processing/tests/mag/test_mag_l1a.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/imap_processing/tests/mag/test_mag_l1a.py b/imap_processing/tests/mag/test_mag_l1a.py index 5f35b961d8..1c961ed3ce 100644 --- a/imap_processing/tests/mag/test_mag_l1a.py +++ b/imap_processing/tests/mag/test_mag_l1a.py @@ -790,7 +790,7 @@ def test_time_tuple(): test_add = example_time_tuple + (1000 / MAX_FINE_TIME) - assert test_add == TimeTuple(439067319, 83) + assert test_add == TimeTuple(439067319, 82) def test_calculate_vector_time():