short minute; /* Minute 0-59 (2 byte int) */
short second; /* Second 0-59 (2 byte int) */
char flight_num[8]; /* Flight number (8 ASCII) for airborne raar or IOP number
- for ground based radars. */
+ for ground based radars. */
char facility_name[8]; /* Generation facility. (8 ASCII) */
short gen_year; /* Generation year YYYY. (2 byte int) */
short gen_month; /* Generation month 1-12. (2 byte int) */
float horizontal_beam_width; /* [deg] */
float vertical_beam_width; /* [deg] */
short radar_type; /* 0--Ground
- 1--Airborne fore
- 2--Airborne aft
- 3--Airborne tail
- 4--Airborne lower fuselage
- 5--Shipborne
- */
+ 1--Airborne fore
+ 2--Airborne aft
+ 3--Airborne tail
+ 4--Airborne lower fuselage
+ 5--Shipborne
+ */
short scan_mode; /* 0--Calibration
- 1--PPI (Constant elevation)
- 2--Coplane
- 3--RHI (Constant azimuth)
- 4--Vertical pointing
- 5--Target (Stationary, not vertical pointing)
- 6--Manual
- 7--Idle (out of control)
- 8--Surveillance
- 9--Vertical sweep (rotation axis parallels the fuselage)
- */
+ 1--PPI (Constant elevation)
+ 2--Coplane
+ 3--RHI (Constant azimuth)
+ 4--Vertical pointing
+ 5--Target (Stationary, not vertical pointing)
+ 6--Manual
+ 7--Idle (out of control)
+ 8--Surveillance
+ 9--Vertical sweep (rotation axis parallels the fuselage)
+ */
float scan_rate; /* Nominal scan rate. [deg/sec] */
float start_angle; /* Nominal start angle. [deg] */
float stop_angle; /* Nominal stop angle. [deg] */
short nparam_desc; /* Total number of parameter descriptors for this radar. (2 byte int) */
short ndesc; /* Total number of descriptors for this radar. (2 byte int) */
short compress_code; /* Data compression format code. (2 byte int):
- 0--no compression
- 1--data compression (compression algorithm described
- in the ASCII file athe the begining of the file.
- */
+ 0--no compression
+ 1--data compression (compression algorithm described
+ in the ASCII file athe the begining of the file.
+ */
short compress_algo; /* Data reduction algorithm:
- 0--No data reduction.
- 1--Data recorded between two rotation angles.
- 2--Data recorded between two concentic angles.
- 3--Data recorded between two altitudes.
- 4-N--Other types of data reduction.
- */
+ 0--No data reduction.
+ 1--Data recorded between two rotation angles.
+ 2--Data recorded between two concentic angles.
+ 3--Data recorded between two altitudes.
+ 4-N--Other types of data reduction.
+ */
float data_reduction_param1; /* Data reduction specific parameter #1
- 1--Smallest positive angle [deg].
- 2--Inner circle diameter [km].
- 3--Minimum altitude [km].
- 4-N--Will be defined if other types created.
- */
+ 1--Smallest positive angle [deg].
+ 2--Inner circle diameter [km].
+ 3--Minimum altitude [km].
+ 4-N--Will be defined if other types created.
+ */
float data_reduction_param2; /* Data reduction specific parameter #2
- 1--Largest positive angle [deg].
- 2--Outer circle diameter [km].
- 3--Maximum altitude [km].
- 4-N--Will be defined if other types created.
- */
+ 1--Largest positive angle [deg].
+ 2--Outer circle diameter [km].
+ 3--Maximum altitude [km].
+ 4-N--Will be defined if other types created.
+ */
float longitude; /* Radar longitude [deg]. If airborne, airport longitude. */
float latitude; /* Radar latitude [deg]. If airborne, airport latitude. */
float altitude; /* Radar altitude of mean sea level (msl) [km].
- If airborne, airport altitude. */
+ If airborne, airport altitude. */
float unambiguous_velocity; /* Effective unambiguous velocity [m/s]. */
float unambiguous_range; /* Effective unambiguous range [km]. */
short nfreq; /* Number of freqencies transmitted (2 byte int). */
short npulse_periods; /* Number of different inter-pulse periods (IPP's) transmitted.
- (2 byte int). */
+ (2 byte int). */
float freq[5]; /* Frequency 1..5 [GHz] (float) */
float period[5]; /* Interpulse Period (IPP) 1..5 [ms] (float) */
} Radar_desc;
char description[40]; /* Description of the parameter. */
char units[8]; /* Units (8 ASCII) */
short ipp; /* Inter-pulse periods.
- Bit 0 set to 1 indicates IPP#1 is used in this parameter.
- Similiarly for bits 1,2,3 and 4 and IPP's 2,3,4 and 5.
- */
+ Bit 0 set to 1 indicates IPP#1 is used in this parameter.
+ Similiarly for bits 1,2,3 and 4 and IPP's 2,3,4 and 5.
+ */
short xmit_freq; /* Transmittd frequencies.
- Bit 0 set to 1 indicates Frequency#1 is used in this parameter.
- Similiarly for bits 1,2,3 and 4 and Frequencies 2,3,4 and 5.
- */
+ Bit 0 set to 1 indicates Frequency#1 is used in this parameter.
+ Similiarly for bits 1,2,3 and 4 and Frequencies 2,3,4 and 5.
+ */
float rcvr_bandwidth;/* [MHz] */
short pulse_width; /* [m] */
short polarization; /* 0--Horizontal
- 1--Vertical
- 2--Circular, Right handed
- 3--Elliptical
- 4--Circular, Left handed
- 5--Dual polarization
- */
+ 1--Vertical
+ 2--Circular, Right handed
+ 3--Elliptical
+ 4--Circular, Left handed
+ 5--Dual polarization
+ */
short nsamp_in_dwell_time; /* Number of samples in dwell time. */
short parameter_type; /* 1--8 bit integer
- 2--16 bit integer
- 3--32 bit integer
- 4--floating point (32 bit IEEE)
- */
+ 2--16 bit integer
+ 3--32 bit integer
+ 4--floating point (32 bit IEEE)
+ */
char threshold_field[8];
float threshold_value; /* Units depend on the threshold field. */
float scale_factor; /* Scale factor. */
- float offset_factor; /* meteorological val = (recorded val - offset factor / scale factor */
+ float offset_factor; /* meteorological val = (recorded val - offset factor) / scale factor */
int missing_data_flag; /* Deleted or missing data flag. 256for bytes, -999 for all others. */
} Parameter_desc;
float stop_angle; /* True stop angle [deg]. */
float fixed_angle; /* Fixed angle [deg]. */
int filter_flag; /* Filter flag:
- 0--No filtering in use.
- 1--ON (Algorithm described in ASCII file at beginning of the file.)
- */
+ 0--No filtering in use.
+ 1--ON (Algorithm described in ASCII file at beginning of the file.)
+ */
} Sweep_info;
typedef struct {
short msec; /* Millisecond. */
float azimuth; /* [deg] */
float elevation; /* [deg] */
- float peak_power;/* [kw] */
- float scan_rate; /* Peak transmitted power [deg/sec]. */
+ float peak_power;/* Peak transmitted power [kw] */
+ float scan_rate; /* [deg/sec]. */
int status; /* Ray status:
- 0--Normal
- 1--Transition (antenna repositioning)
- 2--Bad
- 3--Questionable
- */
+ 0--Normal
+ 1--Transition (antenna repositioning)
+ 2--Bad
+ 3--Questionable
+ */
} Ray_info;
typedef struct { /* Especially for moving radars. */
float latitude; /* Radar latitude [deg]. */
float altitude; /* Radar pressure altitude (msl) [km]. */
float height; /* Radar above ground altitude (agl) [km]. */
- float ew_speed; /* Platform ground speed (E->W) [m/s]. */
- float ns_speed; /* Platform ground speed (N->S) [m/s]. */
+ float ew_speed; /* Platform ground speed (E (positive) or W) [m/s]. */
+ float ns_speed; /* Platform ground speed (N (positive) or S) [m/s]. */
float v_speed; /* Platform vertical velocity [m/s]. */
float heading; /* Platform heading [deg]. */
float roll; /* Platform roll [deg]. */
float drift; /* Platform drift [deg]. */
float rotation; /* Platform rotation angle [deg]. */
float tilt; /* Platform tilt [deg]. */
- float ew_wind_speed; /* Horizontal wind speed at radar (East->West) [m/s]. */
- float ns_wind_speed; /* Horizontal wind speed at radar (North->South) [m/s]. */
- float v_wind_speed; /* Vertical wind speed at radar (East->West) [m/s]. */
+ float ew_wind_speed; /* Horizontal wind speed at radar (toward East positive) [m/s]. */
+ float ns_wind_speed; /* Horizontal wind speed at radar (toward North positive) [m/s]. */
+ float v_wind_speed; /* Vertical wind speed at radar (up is positive) [m/s]. */
float heading_rate; /* Heading change rate [deg/sec]. */
float pitch_rate; /* Pitch change rate [deg/sec]. */
} Platform_info;
Platform_info *platform_info;
int nparam;
int *data_len; /* 0..nparam-1
- * Length of *parameter_data[i] in words.
- * Words can be 2 or 4 bytes.
- */
+ * Length of *parameter_data[i] in bytes.
+ * This is length of data portion.
+ */
int *word_size; /* 0..nparam-1
- * Size of each word in *parameter_data[i].
- */
+ * Size of each word in *parameter_data[i].
+ */
Parameter_data **parameter_data; /* 0..nparam-1 */
} Data_ray;