diff --git a/RDI_Utils.pl b/RDI_Utils.pl --- a/RDI_Utils.pl +++ b/RDI_Utils.pl @@ -1,9 +1,9 @@ #====================================================================== # R D I _ U T I L S . P L # doc: Wed Feb 12 10:21:32 2003 -# dlm: Wed Sep 21 18:48:23 2011 +# dlm: Wed Mar 27 14:45:02 2013 # (c) 2003 A.M. Thurnherr -# uE-Info: 378 0 NIL 0 0 72 2 2 4 NIL ofnI +# uE-Info: 43 51 NIL 0 0 72 2 2 4 NIL ofnI #====================================================================== # miscellaneous RDI-specific utilities @@ -39,6 +39,8 @@ # May 12, 2011: - added code to skip ensembles with built-in-test errors in mk_prof() # - immediately disabled this code becasue it does appear to make matters worse # Sep 21, 2011: - added calculation of RMS heave acceleration +# Mar 27, 2013: - BUG: 3-beam solutions were not used in ref_lr_w +# - disabled apparently unused code use strict; @@ -249,7 +251,8 @@ @v = @{$dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i]}; # NB: no need to apply heading bias, as long as we only use w! } - next if (!defined($v[3]) || abs($v[3]) > $max_e); +### next if (!defined($v[3]) || abs($v[3]) > $max_e); # disallow 3-beam solutions + next if (defined($v[3]) && abs($v[3]) > $max_e); # allow 3-beam solutions if (defined($v[2])) { # valid w $vel[2] += $v[2]; $n[2]++; @@ -257,16 +260,19 @@ push(@w,$v[2]); # for stderr test } - if ($dta->{BEAM_COORDINATES}) { - $bv[0] += $dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][0], $bn[0]++ - if defined($dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][0]); - $bv[1] += $dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][1], $bn[1]++ - if defined($dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][1]); - $bv[2] += $dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][2], $bn[2]++ - if defined($dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][2]); - $bv[3] += $dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][3], $bn[3]++ - if defined($dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][3]); - } +# The following code calculates beam-averaged ref-lr velocities. +# I do not recall what this was implemented for. Disabled Mar 27, 2013. +# +# if ($dta->{BEAM_COORDINATES}) { +# $bv[0] += $dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][0], $bn[0]++ +# if defined($dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][0]); +# $bv[1] += $dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][1], $bn[1]++ +# if defined($dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][1]); +# $bv[2] += $dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][2], $bn[2]++ +# if defined($dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][2]); +# $bv[3] += $dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][3], $bn[3]++ +# if defined($dta->{ENSEMBLE}[$ens]->{VELOCITY}[$i][3]); +# } } my($w) = $n[2] ? $vel[2]/$n[2] : undef; # w uncertainty @@ -283,12 +289,15 @@ $dta->{ENSEMBLE}[$ens]->{W} = $w; $dta->{ENSEMBLE}[$ens]->{W_ERR} = $stderr; } - if ($dta->{BEAM_COORDINATES}) { - $dta->{ENSEMBLE}[$ens]->{V1} = $bn[0]>=2 ? $bv[0]/$bn[0] : undef; - $dta->{ENSEMBLE}[$ens]->{V2} = $bn[1]>=2 ? $bv[1]/$bn[1] : undef; - $dta->{ENSEMBLE}[$ens]->{V3} = $bn[2]>=2 ? $bv[2]/$bn[2] : undef; - $dta->{ENSEMBLE}[$ens]->{V4} = $bn[3]>=2 ? $bv[3]/$bn[3] : undef; - } +# The following code calculates beam-averaged ref-lr velocities. +# I do not recall what this was implemented for. Disabled Mar 27, 2013. +# +# if ($dta->{BEAM_COORDINATES}) { +# $dta->{ENSEMBLE}[$ens]->{V1} = $bn[0]>=2 ? $bv[0]/$bn[0] : undef; +# $dta->{ENSEMBLE}[$ens]->{V2} = $bn[1]>=2 ? $bv[1]/$bn[1] : undef; +# $dta->{ENSEMBLE}[$ens]->{V3} = $bn[2]>=2 ? $bv[2]/$bn[2] : undef; +# $dta->{ENSEMBLE}[$ens]->{V4} = $bn[3]>=2 ? $bv[3]/$bn[3] : undef; +# } }