ASA_IMP_1P version 0

ASA_IMP_1P_v0

This definition is based on version 4/B of product specification PO-RS-MDA-GS-2009 Vol8

root type

binary record
idfield namedefinition
0mph
ascii record "MPH"size: 1247
1sph
ascii record "SPH_IM"size: 1059
2dsd
ascii array[dim_0]
dim_0: $num_dsd
ascii record "DSD"size: 280
3mds1_sq_ads
binary array[dim_0]
SQ ADSRs

dim_0: $num_dsr[0]
binary record "ADSR_IM_SQ"size: 170
4main_processing_params_ads
binary array[dim_0]
Main Processing parameters

dim_0: $num_dsr[1]
binary record "ADSR_IM_Main_Processing_Parameters_v0"size: 2009
5dop_centroid_coeffs_ads
binary array[dim_0]
Doppler Centroid Parameters

dim_0: $num_dsr[2]
binary record "ADSR_IM_Doppler_Centroid_Coefficients"size: 55
6sr_gr_ads
binary array[dim_0]
Slant Range to Ground Range conversion parameters

dim_0: $num_dsr[3]
binary record "ADSR_IM_SRGR_Conversion"size: 55
7chirp_params_ads
binary array[dim_0]
chirp parameters

dim_0: $num_dsr[4]
binary record "ADSR_IM_Chirp_Parameters"size: 1483
8antenna_elev_pattern_ads
binary array[dim_0]
Antenna Elevation patterns(s)

dim_0: $num_dsr[5]
binary record "ADSR_IM_Antenna_Elevation_Pattern"size: 162
9geolocation_grid_ads
binary array[dim_0]
Geolocation Grid ADSRs

dim_0: $num_dsr[6]
binary record "ADSR_IM_Geolocation_Grid"size: 521
10mds1
binary array[dim_0]
Measurement Data Set 1.

dim_0: $num_dsr[7]
binary record "MDSR_IM"

detection rule

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

bytes(/,0,8) == "PRODUCT=" and
bytes(/,9,10) == "ASA_IMP_1P" and
bytes(/,95,23) == "PO-RS-MDA-GS-2009_4/B  "

product variables

namesizeinitialisation
num_samples_per_line$num_samples_per_line = int(/sph/line_length)
num_dsd$num_dsd = int(/mph/num_dsd)
num_ds$num_ds = 8
ds_to_dsd_index[$num_ds]$ds_to_dsd_index[0] = index(/dsd, str(./ds_name) == "MDS1 SQ ADS                 ");
$ds_to_dsd_index[1] = index(/dsd, str(./ds_name) == "MAIN PROCESSING PARAMS ADS  ");
$ds_to_dsd_index[2] = index(/dsd, str(./ds_name) == "DOP CENTROID COEFFS ADS     ");
$ds_to_dsd_index[3] = index(/dsd, str(./ds_name) == "SR GR ADS                   ");
$ds_to_dsd_index[4] = index(/dsd, str(./ds_name) == "CHIRP PARAMS ADS            ");
$ds_to_dsd_index[5] = index(/dsd, str(./ds_name) == "MDS1 ANTENNA ELEV PATT ADS  ");
$ds_to_dsd_index[6] = index(/dsd, str(./ds_name) == "GEOLOCATION GRID ADS        ");
$ds_to_dsd_index[7] = index(/dsd, str(./ds_name) == "MDS1                        ")
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] = if($ds_available[i] == 1, 8 * int(/dsd[$ds_to_dsd_index[i]]/ds_offset), 0)
num_dsr[$num_ds]for i = 0 to $num_ds - 1 do
$num_dsr[i] = if($ds_available[i] == 1, int(/dsd[$ds_to_dsd_index[i]]/num_dsr), 0)