From d309236e18f88b0b504e1d67b31111c142d0ee6e Mon Sep 17 00:00:00 2001
From: "E. Joshua Rigler" <erigler@usgs.gov>
Date: Thu, 13 Mar 2025 14:17:53 -0600
Subject: [PATCH] Persist Absolute.valid flags if passed to calculate()

---
 geomagio/residual/Calculation.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/geomagio/residual/Calculation.py b/geomagio/residual/Calculation.py
index 84b3051f..6c415f0b 100644
--- a/geomagio/residual/Calculation.py
+++ b/geomagio/residual/Calculation.py
@@ -129,6 +129,12 @@ def calculate(reading: Reading, adjust_reference: bool = True) -> Reading:
         vertical_component=vertical_component,
     )
 
+    # just persist Absolute.valid if passed to calculate
+    if reading.absolutes:
+        absoluteD.valid = reading.absolutes[0].valid
+        absoluteH.valid = reading.absolutes[1].valid
+        absoluteZ.valid = reading.absolutes[2].valid
+
     # create new reading object
     calculated = Reading(
         absolutes=[absoluteD, absoluteH, absoluteZ],
-- 
GitLab