Sentinel-1 TOPS mode SLC data consist of a set of bursts
(nominally 10) in a single SLC. Since there are 3 Swaths in
Interferometric Wide mode (IW), there are 3 SLC images saved as
TIFF format images in each image data set. These have names like
s1a-iw1-slc-vv-20140809t165546-20140809t165611-001866-001c20-004.tiff.
The data are short complex (16 bit real, 16 imaginary), but are
converted to float complex (32-bit real, 32-bit imaginary) after
scaling by the program par_S1_TOPS.c The output of par_S1_SLC are
a binary float complex image, the SLC parameter file and a Burst
parameter file called the TOPS_par.
The top level of the TOPS par as the following data elements
typedef struct
{
/* Sentinel-1 TOPS SLC image parameters */
int
nburst;
/* number of SLC bursts in parameter file */
int
lpb;
/* lines per SLC burst */
double az_steering_rate; /*
azimuth steering rate of the antenna in Sentinel-1 IW and EW TOPS
modes (deg/s) */
BURST
burst[MAX_BURST]; /* TOPS SLC
burst metadata */
} TOPS_PAR;
This is stored in a keyword: value format . For each burst in the SLC there is a BURST data structure, containing the following data elements:
typedef
struct{
/* Sentinel-1 TOPS SLC burst metadata structure */
char
burst_date[32];
/* burst start, date format: YYYY MM DD hh mm ss.ttt UTC */
double
burst_t0;
/* zero-doppler time of SLC burst start (seconds of day) */
char
sensing_date[32]; /*
burst sensing date in form: YYYY MM DD hh mm ss.ttt UTC */
double
sensing_t0;
/* time of burst sensing start (seconds of day)*/
long long burst_boffset; /*
start of burst offset (bytes) relative to start of the burst SLC
file */
char
doppler_date[32]; /*
Doppler polynomial datetime in form: YYYY MM DD hh mm ss.ttt UTC
*/
double
doppler_t0;
/* azimuth time of Doppler polynomial (seconds of day) */
double
doppler_srdelay; /* Doppler
polynomial reference time (slant range delay seconds) */
double
doppler_poly[5]; /* Doppler
centroid estimated from data, expressed as the following
polynomial (assuming 5 coefficients):
Doppler Centroid = d0 + d1(tSR-t0) + d2(tSR-t0)^2 + d3(tSR-t0)^3
+ d4(tSR-t0)^4, where tSR = 2 way slant range time. */
char
afmrate_date[32]; /*
azimuth FM rate datetime in form: YYYY MM DD hh mm ss.ttt UTC
*/
double
afmrate_t0;
/* time of azimuth FM rate (seconds of day) */
double
afmrate_srdelay; /* azimuth
FM polynomial reference time (slant range delay seconds) */
double afmrate_poly[3];
int
fvsamp;
/* offset to first valid range sample */
int
lvsamp;
/* offset to last valid range sample */
int
fvline;
/* offset to first valid line */
int
lvline;
/* offset last valid line
*/
BURST_WIN
burst_win;
/* burst window parameters
*/
} BURST;
Hence if there are 10 bursts in the SLC, the TOPS_par will contain 10 BURST annotation blocks. Each BURST Annotation Block contains a BURST_WIN data structure that gives the boundaries of the burst are used for multilooking the data. The burst window is calculated from the number of range and azimuth looks as well as the annotation where there is valid data in the SLC burst and to avoid gaps:
typedef struct {
double win_r0, win_r2;/* starting and ending slant slant
range of the window in the mosaic */
double win_t0, win_t2;/* starting and ending azimuth time
of the burst in the mosaic */
int ir0,
nrs; /* pixel
offset in range, and number of slant range pixels that can be
used in the mosaic */
int iaz0, naz;
/* line offset for the burst, number of azimuth lines that can be
used in the mosaic */
} BURST_WIN;
Below is an example of the TOPS_par data format including 2 of the 9 Burst Annotation blocks in the TOPS_par for interferometric swath 1 (iw1).
Note that the burst keywords are numbered to differentiate
them with the TOPS_par. Date and time data are given in
ISO8601 format.
Gamma Interferometric SAR Processor (ISP) - TOPS IW and
EW Mode SLC Parameter File
number_of_bursts: 9
lines_per_burst: 1629
az_steering_rate: -1.590368784 (deg/s)
burst_date_1:
2014-08-09T16:55:46.535387
burst_start_time_1: 60946.535387
s
sensing_date_1:
2014-08-09T16:55:47.857373
sensing_start_time_1: 60947.857373 s
burst_boffset_1: 0
doppler_date_1:
2014-08-09T16:55:47.908126
doppler_time_1:
60947.908126 s
doppler_srdelay_1:
5.34095e-03 s
doppler_polynomial_1: -126.43460
48915.47000 -4.27236e+07
0.00000e+00 0.00000e+00
az_fmrate_date_1:
2014-08-09T16:55:46.945386
az_fmrate_time_1:
60946.945386 s
az_fmrate_srdelay_1: 5.33983e-03
s
az_fmrate_polynomial_1: -2326.36500 449570.53443
-7.88281e+07
first_valid_sample_1:
71 samples
last_valid_sample_1:
20553 samples
first_valid_line_1:
86 lines
last_valid_line_1:
1545 lines
burst_win_1: 800420.5701
849921.4330 60946.53539
60949.57761 0
21250 0
1481
burst_date_2:
2014-08-09T16:55:49.308333
burst_start_time_2: 60949.308333
s
sensing_date_2:
2014-08-09T16:55:50.615650
sensing_start_time_2: 60950.615650 s
burst_boffset_2:
276969096
doppler_date_2:
2014-08-09T16:55:50.666403
doppler_time_2:
60950.666403 s
doppler_srdelay_2:
5.34220e-03 s
doppler_polynomial_2: -70.28511
-126308.70000 7.91593e+07
0.00000e+00 0.00000e+00
az_fmrate_date_2:
2014-08-09T16:55:49.703663
az_fmrate_time_2:
60949.703663 s
az_fmrate_srdelay_2: 5.33983e-03
s
az_fmrate_polynomial_2: -2326.29790 449591.61577
-7.88387e+07
first_valid_sample_2:
71 samples
last_valid_sample_2:
20553 samples
first_valid_line_2:
90 lines
last_valid_line_2:
1542 lines
burst_win_2: 800420.5701
849921.4330 60949.57967
60952.35056 0
21250 132 1349
SEE ALSO:
par_S1_SLC