From 87c1faa56f8a35d33ae042b5d2612cf522f31c51 Mon Sep 17 00:00:00 2001 From: Laura Sandoval Date: Thu, 10 Sep 2026 11:02:40 -0600 Subject: [PATCH] add mopra coverage --- imap_processing/ialirt/generate_coverage.py | 12 +++++++++++ .../ialirt/unit/test_generate_coverage.py | 20 ++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/imap_processing/ialirt/generate_coverage.py b/imap_processing/ialirt/generate_coverage.py index 99bbc699d9..4a957488ee 100644 --- a/imap_processing/ialirt/generate_coverage.py +++ b/imap_processing/ialirt/generate_coverage.py @@ -1,6 +1,7 @@ """Coverage time for each station.""" import logging +from datetime import time as dt_time import numpy as np @@ -159,6 +160,17 @@ def generate_coverage( # noqa: PLR0912 time_range[outage_mask], format_str="ISOC" ) + # Mopra: fixed daily allocation (20:45-00:30 UTC), no geometry needed. + # Split into two same-day windows to avoid the midnight rollover. + mopra_evening = StationProperties(0, 0, 0, 0, dt_time(20, 45), dt_time(23, 59, 59)) + mopra_morning = StationProperties(0, 0, 0, 0, dt_time(0, 0), dt_time(0, 30)) + mopra_mask = create_schedule_mask(mopra_evening, time_range) | create_schedule_mask( + mopra_morning, time_range + ) + total_visible_mask |= mopra_mask + coverage_dict["Mopra"] = et_to_utc(time_range[mopra_mask], format_str="ISOC") + outage_dict["Mopra"] = np.array([], dtype="