Remove old header content

This commit is contained in:
2025-08-08 16:44:14 +02:00
parent f4effac343
commit 8a8359fed0
2 changed files with 10 additions and 4 deletions

View File

@@ -144,8 +144,13 @@ def save_Stokes(
Only returned if return_hdul is True.
"""
# Create new WCS object given the modified images
wcs = WCS(header_stokes).deepcopy()
new_wcs = WCS(header_stokes).celestial.deepcopy()
header = remove_stokes_axis_from_header(header_stokes).copy() if header_stokes["NAXIS"] > 2 else header_stokes.copy()
header = wcs.to_header().copy()
header["NAXIS"] = header_stokes["NAXIS"]
for i in range(wcs.wcs.naxis):
header["NAXIS%d" % (i + 1)] = header_stokes["NAXIS%d" % (i + 1)]
header = remove_stokes_axis_from_header(header).copy() if header_stokes["NAXIS"] > 2 else header
if data_mask.shape != (1, 1):
vertex = clean_ROI(data_mask)
@@ -155,8 +160,8 @@ def save_Stokes(
for key, val in list(new_wcs.to_header().items()) + [("NAXIS", 2), ("NAXIS1", new_wcs.array_shape[1]), ("NAXIS2", new_wcs.array_shape[0])]:
header[key] = val
header["TELESCOP"] = (header_stokes["TELESCOP"] if "TELESCOP" in list(header_stokes.keys()) else "HST", "telescope used to acquire data")
header["INSTRUME"] = (header_stokes["INSTRUME"] if "INSTRUME" in list(header_stokes.keys()) else "FOC", "identifier for instrument used to acuire data")
header["TELESCOP"] = (header_stokes["TELESCOP"] if "TELESCOP" in list(header_stokes.keys()) else "HST", "Telescope used to acquire data")
header["INSTRUME"] = (header_stokes["INSTRUME"] if "INSTRUME" in list(header_stokes.keys()) else "FOC", "identifier for instrument used to acquire data")
header["PHOTPLAM"] = (header_stokes["PHOTPLAM"], "Pivot Wavelength")
header["PHOTBW"] = (header_stokes["PHOTBW"], "RMS Bandwidth of the Filter and Detector")
header["PHOTFLAM"] = (header_stokes["PHOTFLAM"], "Inverse Sensitivity in DN/sec/cm**2/Angst")

View File

@@ -303,7 +303,8 @@ def remove_stokes_axis_from_header(header):
wcs = WCS(header).deepcopy()
new_wcs = WCS(header).celestial.deepcopy()
new_head = header.copy()
del new_head["NAXIS%d" % (new_wcs.wcs.naxis + 1)]
if "NAXIS%d" % (new_wcs.wcs.naxis + 1) in new_head.keys():
del new_head["NAXIS%d" % (new_wcs.wcs.naxis + 1)]
new_head["NAXIS"] = new_wcs.wcs.naxis
for i, k in enumerate(new_wcs.array_shape[::-1]):
new_head["NAXIS%d" % (i + 1)] = k