The values in the DKIST008 and DKIST009 headers for VISP data are technically correct but do not contain the information we need. This PR rewrites those header keys in observe frames only to contain correct values by analysing how often a frame with the same modstate and raster step is found.
To accomplish this, we:
get all of the headers from observe frames as FitsAccess objects
sort them into individual map scans by assuming that all of scan N completes before scan (N + 1) begins
rewrite the total number of maps and the current map number into the files on disk in scratch
This comes with the benefit of not changing anything in the raw data in the object store, and not changing how any of the calibration tasks operate. There is also a new workflow that contains this task.
The values in the
DKIST008
andDKIST009
headers for VISP data are technically correct but do not contain the information we need. This PR rewrites those header keys in observe frames only to contain correct values by analysing how often a frame with the same modstate and raster step is found.To accomplish this, we:
get all of the headers from
observe
frames asFitsAccess
objectssort them into individual map scans by assuming that all of scan N completes before scan (N + 1) begins
rewrite the total number of maps and the current map number into the files on disk in scratch
This comes with the benefit of not changing anything in the raw data in the object store, and not changing how any of the calibration tasks operate. There is also a new workflow that contains this task.