ANSI-C program: lin_comb_pt.c
NAME
lin_comb_pt - calculate linear combination of records in point
data stacks
SYNOPSIS
lin_comb_pt <plist> <pmask> <pdata1>
<rec_num1> <pdata2> <rec_num2> <pdata3>
<rec_num3> <constant> <factor1> <factor2>
<type> [pmask] [pt_num]
<plist> | (input) point list (int) |
<pmask> | (input) point data stack of mask values (uchar) |
<pdata1> | (input) point data stack 1 (various formats supported) |
<rec_num1> | record number in pdata1 (starting with 1, enter -: all records) |
<pdata2> | (input) point data stack 2 (same format as pdata1) |
<rec_num2> | record number in pdata2 (starting with 1, enter -: same as rec_num1) |
<pdata3> | (output) point data stack (same format as pdata1) |
<rec_num3> | record number in pdata3 (starting with 1, enter -: same as rec_num1) |
<constant> | constant value to add to output record elements |
<factor1> | factor to multiply elements of rec_num1 of pdata1 |
<factor2> | factor to multiply elements of rec_num2 of pdata2 |
<type> | data type (0:fcomplex 1:scomplex 2:float 3:int 4:short 5:byte) |
[zero_flag] | zero flag (default=0: 0.0 is interpreted as NULL, 1: 0.0 is interpreted as valid value) |
[pt_num] | index of pdata2 point value to use, rather than using all points |
EXAMPLE
lin_comb_pt site.plist site.pmask site.phgt1
1 site.pdh 1 site.phgt2 1 0.0 1.0 1.0 2 0
Adds the point height values testsite.phgt1 ( one record, --> record number 1) and the point height corrections testsite.pdh (one record, --> record number 1) and writes the result to the output point data stack as record 1.
lin_comb_pt site.plist site.pmask site.unw 5 site.unw 8 site.unw 12 0.0 1.0 -3.83 2 0
Subtracts the scaled unwrapped phases (factor -3.83) in record
8 of the point data stack from the unwrapped phases in record 5
and writes the result to record 12, all of the same
stack.
lin_comb_pt site.plist
site.pmask site.pint - site.psim - site.pdiff - 0.0 1.0 -1.0
0
subtract simulated
interferograms from interferograms generated from the SLC data to
calculate the differential interferograms. This is
performed
for corresponding data point sets in each of the stacks, e.g.
(stack 1, record 1) with (stack 2, record
1), (stack 1, record 2)
with (stack 2, record 2)
...
lin_comb_pt site.plist
site.pmask site.diff - site.patm 8 site.pdiff2 - 0.0 1.0 1.0
0
adds
site.patm
record 8
to every record in site.pdiff.
INSTALLATION
Source code lin_comb_pt.c in ./IPTA/src, executable version
lin_comb_pt in ./IPTA/bin
DESCRIPTION
lin_comb_pt supports the calculation of linear combinations of
two records of point data stacks and writes the result to a
record of the output point data stack. The indicated point data
stacks for the input and output records may be identical which
permits operations using different records of the same data
stack. It is also possible to operate on all the records of
data1 by entering a - for parameter rec_num1. If rec_num2
is also a - then the linear combination will be carried out
using the same values for rec_num1 and rec_num2.
Different formats are supported. The format (type) needs to be the same for all the data records (2 input records, output record).
Zero (0.0) values can either be interpreted as NULL (zero_flag=0) or as valid data points (zero_flag=1). The result of a linear combination in which one input value is NULL is set to NULL.
Only valid points, i.e. points with a non-zero value in the mask are considered. For points with a zero in the mask the output is set to the NULL value.
If a point index is specified [pt_num] on the command line, then only the value of that point in pdata2 is used rather than the entire point list. In this way the value at the reference point can be subtracted from each layer.
OPTIONS
To calculate linear combinations of more than two records
lin_comb_pt can be applied multiple times.
SEE ALSO
ipta.h, sub_phase_pt