YOU ARE USING THE TEST INSTANCE

SUSI - data structure description

Overview

The SUSI data are provided in single *.fits data cubes.
The most relevant keywords are listed in the table below:

Key Value Type Description
DATE_OBS Date Time UTC Acquisition Time

In a future release, also WCS header fields will be provided.

Slit Jaw Imager (SJ)

The spectrographic data are provided as one FITS file per slit position. We currently only provide restored slit-jaw images with squared pixels and a accumulation of 288 frames (= 6 seconds) and 50 % overlap in the temporal dimension, creating a cadence of roughly 3 seconds. The individual file names include a number that allows identifying their position in the sequence.

Spectro-polarimeter (SP)

The spectrographic data are provided in cubes with one HDU extension per (accumulated) slit position. Each extension has the ordering [NAXIS3=STOKES, NAXIS2=sLit-axis, NAXIS1=wavelength-axis], e.g. (4, 1510, 1851) in python. Each HDU extension has its own header.

In addition to the general header keywords above, the most relevant header keywords for SP data are:

Key Value Type Description
XSCALE float (arcsec) horizontal plate scale
MIN_WL_NM float Wavelength at pixel MIN_WL_PX
MIN_WL_PX int Starting position of calibrated WL
MAX_WL_NM float Wavelength at pixel MAX_WL_PX
MAX_WL_PX int End position of calibrated WL
SPATIAL_BIN tuple Applied binning in (y,x)
TEMPORAL_BIN int No. of averaged frames (min: 12 = 1 mod. cycle)
Processing Pipeline string Name and version of the processing pipeline
Processing Time Date Time UTC Processing Time
CUBE_START Date Time UTC Acquisition start time
CUBE_STOP Date Time UTC Acquisition end time

Data Access Examples

Interactive Tool

A simple ad-hoc data accessing tool to show interactive python plots of the SP data cubes can be found in our gitlab (checkout the susi_version branch). The tool allows to click on spectral positions, to inspect the corresponding assembled Stokes images at this wavelength and on the Stokes images to inspect the corresponding profiles in the selected spatial pixel.

Minimal Example

Below we show a minimalistic python script to assemble traditional 4D cubes from the provided SP data and extract the linear wavelength axis in Angstrom:


from astropy.io import fits
import numpy as np

cube = []
wl = None
with fits.open("/path/to/SUSI_CUBE.fits") as hdul:
    hdr = hdul[0].header
    wl0 = int(hdr["MIN_WL_PX"])
    wl1 = int(hdr["MAX_WL_PX"])
    wl0n = float(hdr["MIN_WL_NM"]) * 10 # Convert to Angstrom
    wl1n = float(hdr["MAX_WL_NM"]) * 10 # Convert to Angstrom
    # Create wavelength axis
    wl = np.linspace(wl0n, wl1n, wl1-wl0)
    # Assemble slit positions to cube
    for hdu in hdul:
        cube.append(hdu.data[:,:,wl0:wl1])

# Transpose cube to a more common ordering
cube = np.array(cube)
print("Loaded cube shape [Y,S,X,WL]:", cube.shape)
cube = np.transpose(cube, (0, 2, 1, 3))
print("4D cube shape [Y,X,S,WL]:", cube.shape)
        
Provided with by the MPS/Sunrise-III Team. – Privacy PolicyImprint