equal
deleted
inserted
replaced
1 #!/usr/bin/perl |
1 #!/usr/bin/perl |
2 #====================================================================== |
2 #====================================================================== |
3 # L I S T B I N S |
3 # L I S T B I N S |
4 # doc: Fri Aug 25 15:57:05 2006 |
4 # doc: Fri Aug 25 15:57:05 2006 |
5 # dlm: Wed Aug 7 10:04:28 2013 |
5 # dlm: Tue Apr 22 12:39:09 2014 |
6 # (c) 2006 A.M. Thurnherr |
6 # (c) 2006 A.M. Thurnherr |
7 # uE-Info: 48 46 NIL 0 0 72 2 2 4 NIL ofnI |
7 # uE-Info: 50 45 NIL 0 0 72 2 2 4 NIL ofnI |
8 #====================================================================== |
8 #====================================================================== |
9 |
9 |
10 # Split data file into per-bin time series. |
10 # Split data file into per-bin time series. |
11 |
11 |
12 # HISTORY: |
12 # HISTORY: |
44 # May 23, 2009: - adapted to changed beampair-velocity fun name |
44 # May 23, 2009: - adapted to changed beampair-velocity fun name |
45 # Aug 22, 2010: - added -R |
45 # Aug 22, 2010: - added -R |
46 # Apr 29, 2013: - cosmetics |
46 # Apr 29, 2013: - cosmetics |
47 # - added warning on missing -S |
47 # - added warning on missing -S |
48 # Aug 7, 2013: - BUG: -w did not respect -d |
48 # Aug 7, 2013: - BUG: -w did not respect -d |
|
49 # Mar 4, 2014: - added support for missing PITCH/ROLL/HEADING |
|
50 # Apr 22, 2014: - BUG: extraneous semicolon |
49 |
51 |
50 # General Notes: |
52 # General Notes: |
51 # - everything (e.g. beams) is numbered from 1 |
53 # - everything (e.g. beams) is numbered from 1 |
52 # - no support for BT data |
54 # - no support for BT data |
53 |
55 |
172 |
174 |
173 print(P "$dta{ENSEMBLE}[$e]->{NUMBER} "); |
175 print(P "$dta{ENSEMBLE}[$e]->{NUMBER} "); |
174 print(P "$dta{ENSEMBLE}[$e]->{DATE} "); |
176 print(P "$dta{ENSEMBLE}[$e]->{DATE} "); |
175 print(P "$dta{ENSEMBLE}[$e]->{TIME} "); |
177 print(P "$dta{ENSEMBLE}[$e]->{TIME} "); |
176 printf(P "%d ",$dta{ENSEMBLE}[$e]->{UNIX_TIME}-$t0); |
178 printf(P "%d ",$dta{ENSEMBLE}[$e]->{UNIX_TIME}-$t0); |
177 print(P "$dta{ENSEMBLE}[$e]->{HEADING} "); |
179 print(P defined($dta{ENSEMBLE}[$e]->{HEADING}) ? "$dta{ENSEMBLE}[$e]->{HEADING} " : 'nan '); |
178 print(P "$dta{ENSEMBLE}[$e]->{PITCH} "); |
180 print(P defined($dta{ENSEMBLE}[$e]->{PITCH}) ? "$dta{ENSEMBLE}[$e]->{PITCH} " : 'nan '); |
179 print(P "$dta{ENSEMBLE}[$e]->{ROLL} "); |
181 print(P defined($dta{ENSEMBLE}[$e]->{ROLL}) ? "$dta{ENSEMBLE}[$e]->{ROLL} " : 'nan '); |
180 print(P "$dta{ENSEMBLE}[$e]->{HEADING_STDDEV} "); |
182 print(P "$dta{ENSEMBLE}[$e]->{HEADING_STDDEV} "); |
181 print(P "$dta{ENSEMBLE}[$e]->{PITCH_STDDEV} "); |
183 print(P "$dta{ENSEMBLE}[$e]->{PITCH_STDDEV} "); |
182 print(P "$dta{ENSEMBLE}[$e]->{ROLL_STDDEV} "); |
184 print(P "$dta{ENSEMBLE}[$e]->{ROLL_STDDEV} "); |
183 print(P "$dta{ENSEMBLE}[$e]->{ADC_XMIT_CURRENT} "); |
185 print(P "$dta{ENSEMBLE}[$e]->{ADC_XMIT_CURRENT} "); |
184 print(P "$dta{ENSEMBLE}[$e]->{ADC_XMIT_VOLTAGE} "); |
186 print(P "$dta{ENSEMBLE}[$e]->{ADC_XMIT_VOLTAGE} "); |
248 for ($e=0; $e<=$#{$dta{ENSEMBLE}}; $e++) { # check/transform velocities |
250 for ($e=0; $e<=$#{$dta{ENSEMBLE}}; $e++) { # check/transform velocities |
249 $dta{ENSEMBLE}[$e]->{NUMBER} = $e+1 if ($opt_R); # renumber ensembles |
251 $dta{ENSEMBLE}[$e]->{NUMBER} = $e+1 if ($opt_R); # renumber ensembles |
250 next if (defined($first_ens) && |
252 next if (defined($first_ens) && |
251 $dta{ENSEMBLE}[$e]->{NUMBER} < $first_ens); |
253 $dta{ENSEMBLE}[$e]->{NUMBER} < $first_ens); |
252 |
254 |
253 $dta{ENSEMBLE}[$e]->{PITCH} -= $P{pitch_bias}; |
255 $dta{ENSEMBLE}[$e]->{PITCH} -= $P{pitch_bias} |
254 $dta{ENSEMBLE}[$e]->{ROLL} -= $P{roll_bias}; |
256 if defined($dta{ENSEMBLE}[$e]->{PITCH}); |
|
257 $dta{ENSEMBLE}[$e]->{ROLL} -= $P{roll_bias} |
|
258 if defined($dta{ENSEMBLE}[$e]->{ROLL}); |
255 |
259 |
256 $P{first_ens} = $dta{ENSEMBLE}[$e]->{NUMBER},$fe = $e |
260 $P{first_ens} = $dta{ENSEMBLE}[$e]->{NUMBER},$fe = $e |
257 unless defined($P{first_ens}); |
261 unless defined($P{first_ens}); |
258 last if (defined($last_ens) && |
262 last if (defined($last_ens) && |
259 $dta{ENSEMBLE}[$e]->{NUMBER} > $last_ens); |
263 $dta{ENSEMBLE}[$e]->{NUMBER} > $last_ens); |