SCI_MF1_AX version 0

SCI_MF1_AX

root type

binary record
idfield namedefinition
0mph
ascii record "MPH"size: 1247
1sph
ascii record "Auxiliary_Data_SPH"size: 98
2dsd
ascii array[dim_0]
dim_0: $num_dsd
ascii record "DSD"size: 280
3m_factor_mm
binary array[1]
M factor file
binary record
idfield namedefinition
0n_refr_index
binary int32size: 4
number of (complex) refractiv indexes
1n_layer
binary int32size: 4
number of contamination layers
2n_surfaces
binary int32size: 4
number of surfaces with contamination
3n_retard
binary int32size: 4
number of retarder parameters
4n_M1_det
binary int32size: 4
number of OBM M1 mfactor for sci. det.
5n_M1_pmd
binary int32size: 4
number of OBM M1 mfactor for PMD
6n_add_param
binary int32size: 4
number of add parameters
7wavel
binary array[8192]size: 32768
wavelength grid of the science channel det.
binary floatsize: 4
8refr_index
binary array[2, dim_1, 8192]
Sequence: 8192 * real (MIR_LAYER2), 8192 * IMG (MIR_LAYER2), 8192 * real (MIR_LAYER1), 8192 * IMG (MIR_LAYER1), 8192 * real (MIR_ALU), 8192 * IMG (MIR_ALU)

dim_1: int(../n_refr_index)
binary floatsize: 4
9d_contam
binary array[dim_0, dim_1]
Sequence (d2 only with n_layer=2): d1[6] : SC_ESM_MIR, SC_ASM_MIR, SC_ESM_DIF, SC_ASM_DIF, SC_EXTRA_MIR, SC_WLS_MIR; d2[6] : SC_ESM_MIR, SC_ASM_MIR, SC_ESM_DIF, SC_ASM_DIF, SC_EXTRA_MIR, SC_WLS_MIR. With n_layer=2, d1 is the AlO layer on the mirror/diffuser (always 4.1)

dim_0: int(../n_layer)

dim_1: int(../n_surfaces)
binary floatsize: 4
10par_retard
binary array[dim_0]
retarder parameter

dim_0: int(../n_retard)
binary floatsize: 4
11M1_sci
binary array[dim_0, 8192]
M1 science channel

dim_0: int(../n_M1_det)
binary floatsize: 4
12M1_pmd
binary array[dim_0, 7]
M1 pmd channel

dim_0: int(../n_M1_pmd)
binary floatsize: 4
13add_param
binary array[dim_0]
additional parameters

dim_0: int(../n_add_param)
binary floatsize: 4

available: $ds_available[0] != 0

bit offset: $ds_offset[0]

detection rule

This product definition is applicable if a product matches the following rule:

bytes(/,0,8) == "PRODUCT=" and
bytes(/,9,10) == "SCI_MF1_AX"

product variables

namesizeinitialisation
num_dsd$num_dsd = int(/mph/num_dsd)
num_ds$num_ds = 1
ds_to_dsd_index[$num_ds]$ds_to_dsd_index[0] = index(/dsd, str(./ds_name) == "M_FACTOR_SCANNER_MODEL      ")
ds_available[$num_ds]for i = 0 to $num_ds - 1 do
$ds_available[i] = if($ds_to_dsd_index[i] != -1 and !(bytes(/dsd[$ds_to_dsd_index[i]]/filename,8) == "NOT USED"), 1, 0)
ds_offset[$num_ds]for i = 0 to $num_ds - 1 do
$ds_offset[i] = 8 * int(/dsd[$ds_to_dsd_index[i]]/ds_offset)
ds_size[$num_ds]for i = 0 to $num_ds - 1 do
$ds_size[i] = 8 * int(/dsd[$ds_to_dsd_index[i]]/ds_size)