binary record | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
This product definition is applicable if a product matches the following rule:
bytes(/,0,8) == "PRODUCT=" and bytes(/,9,10) == "SCI_NL__1P" and bytes(/,95,23) == "PO-RS-MDA-GS-2009 3-C " or bytes(/,0,8) == "PRODUCT=" and bytes(/,9,10) == "SCI_NL__1P" and bytes(/,95,23) == "PO-RS-MDA-GS2009_06_3C " or bytes(/,0,8) == "PRODUCT=" and bytes(/,9,10) == "SCI_NL__1P" and bytes(/,95,23) == "PO-RS-MDA-GS2009_15_3F " or bytes(/,0,8) == "PRODUCT=" and bytes(/,9,10) == "SCI_NL__1P" and bytes(/,95,23) == "PO-RS-MDA-GS-2009_15_3H" or bytes(/,0,8) == "PRODUCT=" and bytes(/,9,10) == "SCI_NL__1P" and bytes(/,95,23) == "PO-RS-MDA-GS-2009_15_3J" |
name | size | initialisation |
---|---|---|
num_dsd | $num_dsd = int(/mph/num_dsd) | |
num_ds | $num_ds = 30 | |
ds_to_dsd_index | [$num_ds] | $ds_to_dsd_index[0] = index(/dsd, str(./ds_name) == "SUMMARY_QUALITY "); $ds_to_dsd_index[1] = index(/dsd, str(./ds_name) == "GEOLOCATION "); $ds_to_dsd_index[2] = index(/dsd, str(./ds_name) == "INSTRUMENT_PARAMS "); $ds_to_dsd_index[3] = index(/dsd, str(./ds_name) == "LEAKAGE_CONSTANT "); $ds_to_dsd_index[4] = index(/dsd, str(./ds_name) == "LEAKAGE_VARIABLE "); $ds_to_dsd_index[5] = index(/dsd, str(./ds_name) == "PPG_ETALON "); $ds_to_dsd_index[6] = index(/dsd, str(./ds_name) == "SPECTRAL_BASE "); $ds_to_dsd_index[7] = index(/dsd, str(./ds_name) == "SPECTRAL_CALIBRATION "); $ds_to_dsd_index[8] = index(/dsd, str(./ds_name) == "SUN_REFERENCE "); $ds_to_dsd_index[9] = index(/dsd, str(./ds_name) == "POL_SENS_NADIR "); $ds_to_dsd_index[10] = index(/dsd, str(./ds_name) == "POL_SENS_LIMB "); $ds_to_dsd_index[11] = index(/dsd, str(./ds_name) == "POL_SENS_OCC "); $ds_to_dsd_index[12] = index(/dsd, str(./ds_name) == "RAD_SENS_NADIR "); $ds_to_dsd_index[13] = index(/dsd, str(./ds_name) == "RAD_SENS_LIMB "); $ds_to_dsd_index[14] = index(/dsd, str(./ds_name) == "RAD_SENS_OCC "); $ds_to_dsd_index[15] = index(/dsd, str(./ds_name) == "ERRORS_ON_KEY_DATA "); $ds_to_dsd_index[16] = index(/dsd, str(./ds_name) == "SLIT_FUNCTION "); $ds_to_dsd_index[17] = index(/dsd, str(./ds_name) == "SMALL_AP_SLIT_FUNCTION "); $ds_to_dsd_index[18] = index(/dsd, str(./ds_name) == "STATES "); $ds_to_dsd_index[19] = index(/dsd, str(./ds_name) == "PMD_PACKETS "); $ds_to_dsd_index[20] = index(/dsd, str(./ds_name) == "AUXILIARY_PACKETS "); $ds_to_dsd_index[21] = index(/dsd, str(./ds_name) == "NEW_LEAKAGE "); $ds_to_dsd_index[22] = index(/dsd, str(./ds_name) == "DARK_AVERAGE "); $ds_to_dsd_index[23] = index(/dsd, str(./ds_name) == "NEW_PPG_ETALON "); $ds_to_dsd_index[24] = index(/dsd, str(./ds_name) == "NEW_SPECTRAL_CALIBRATION "); $ds_to_dsd_index[25] = index(/dsd, str(./ds_name) == "NEW_SUN_REFERENCE "); $ds_to_dsd_index[26] = index(/dsd, str(./ds_name) == "NADIR "); $ds_to_dsd_index[27] = index(/dsd, str(./ds_name) == "LIMB "); $ds_to_dsd_index[28] = index(/dsd, str(./ds_name) == "OCCULTATION "); $ds_to_dsd_index[29] = index(/dsd, str(./ds_name) == "MONITORING ") |
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) |
num_dsr | [$num_ds] | for i = 0 to $num_ds - 1 do $num_dsr[i] = int(/dsd[$ds_to_dsd_index[i]]/num_dsr) |
states_nadir_cum_num_dsr | [$num_dsr[18]] | for i = 0 to $num_dsr[18] - 1 do $states_nadir_cum_num_dsr[i] = if(i > 0, $states_nadir_cum_num_dsr[i - 1], 0) + if(int(/states[i]/mds_type) == 1, int(/states[i]/num_dsr), 0) |
nadir_states_index | [$num_dsr[26]] | for i = 0 to $num_dsr[26] - 1 do $nadir_states_index[i] = index($states_nadir_cum_num_dsr, $states_nadir_cum_num_dsr > i) |
states_limb_cum_num_dsr | [$num_dsr[18]] | for i = 0 to $num_dsr[18] - 1 do $states_limb_cum_num_dsr[i] = if(i > 0, $states_limb_cum_num_dsr[i - 1], 0) + if(int(/states[i]/mds_type) == 2, int(/states[i]/num_dsr), 0) |
limb_states_index | [$num_dsr[27]] | for i = 0 to $num_dsr[27] - 1 do $limb_states_index[i] = index($states_limb_cum_num_dsr, $states_limb_cum_num_dsr > i) |
states_occ_cum_num_dsr | [$num_dsr[18]] | for i = 0 to $num_dsr[18] - 1 do $states_occ_cum_num_dsr[i] = if(i > 0, $states_occ_cum_num_dsr[i - 1], 0) + if(int(/states[i]/mds_type) == 3, int(/states[i]/num_dsr), 0) |
occ_states_index | [$num_dsr[28]] | for i = 0 to $num_dsr[28] - 1 do $occ_states_index[i] = index($states_occ_cum_num_dsr, $states_occ_cum_num_dsr > i) |
states_mon_cum_num_dsr | [$num_dsr[18]] | for i = 0 to $num_dsr[18] - 1 do $states_mon_cum_num_dsr[i] = if(i > 0, $states_mon_cum_num_dsr[i - 1], 0) + if(int(/states[i]/mds_type) == 4, int(/states[i]/num_dsr), 0) |
mon_states_index | [$num_dsr[29]] | for i = 0 to $num_dsr[29] - 1 do $mon_states_index[i] = index($states_mon_cum_num_dsr, $states_mon_cum_num_dsr > i) |