diff --git a/test_velBeamToBeamPair b/test_velBeamToBeamPair new file mode 100755 --- /dev/null +++ b/test_velBeamToBeamPair @@ -0,0 +1,97 @@ +#!/usr/bin/perl +#====================================================================== +# T E S T _ V E L B E A M T O B E A M P A I R +# doc: Thu May 21 13:40:27 2009 +# dlm: Thu May 21 15:03:47 2009 +# (c) 2009 A.M. Thurnherr +# uE-Info: 89 24 NIL 0 0 72 0 2 4 NIL ofnI +#====================================================================== + +require "RDI_Coords.pl"; + +$dta{CONVEX_BEAM_PATTERN} = 1; +$dta{BEAM_ANGLE} = 20; + +#--------------------------------------- +# Case 1: uplooker, bin 3 pointing south +#--------------------------------------- + +$dta{ENSEMBLE}[0]->{XDUCER_FACING_UP} = 1; +$dta{ENSEMBLE}[0]->{HEADING} = 180; + +$dta{ENSEMBLE}[0]->{PITCH} = 0; +$dta{ENSEMBLE}[0]->{ROLL} = 0; + +@RDI = velInstrumentToEarth(\%dta,0,velBeamToInstrument(\%dta,2,1,0,0)); +@ant = velBeamToBeamPair(\%dta,0,2,1,0,0); +die("1: $RDI[0] $ant[0]\n") + unless (abs($RDI[0]-$ant[0]) < 1e-6); + +@RDI = velInstrumentToEarth(\%dta,0,velBeamToInstrument(\%dta,0,0,1,3)); +@ant = velBeamToBeamPair(\%dta,0,0,0,1,3); +die("2: $RDI[1] $ant[2]\n") + unless (abs($RDI[1]-$ant[2]) < 1e-6); + +$dta{ENSEMBLE}[0]->{PITCH} = 20; +$dta{ENSEMBLE}[0]->{ROLL} = 0; + +@RDI = velInstrumentToEarth(\%dta,0,velBeamToInstrument(\%dta,2,1,2,1)); +@ant = velBeamToBeamPair(\%dta,0,2,1,2,1); +die("3: $RDI[0] $ant[0]\n") + unless (abs($RDI[0]-$ant[0]) < 1e-6); +die("4: $RDI[1] $ant[2]\n") + unless (abs($RDI[1]-$ant[2]) < 1e-6); + +$dta{ENSEMBLE}[0]->{PITCH} = 0; +$dta{ENSEMBLE}[0]->{ROLL} = 15; + +@RDI = velInstrumentToEarth(\%dta,0,velBeamToInstrument(\%dta,-2,-0.5,-2,-0.5)); +@ant = velBeamToBeamPair(\%dta,0,-2,-0.5,-2,-0.5); +die("5: $RDI[0] $ant[0]\n") + unless (abs($RDI[0]-$ant[0]) < 1e-6); +die("6: $RDI[1] $ant[2]\n") + unless (abs($RDI[1]-$ant[2]) < 1e-6); + +#----------------------------------------- +# Case 1: downlooker, bin 3 pointing south +#----------------------------------------- + +$dta{ENSEMBLE}[0]->{XDUCER_FACING_UP} = 0; +$dta{ENSEMBLE}[0]->{HEADING} = 180; + +$dta{ENSEMBLE}[0]->{PITCH} = 0; +$dta{ENSEMBLE}[0]->{ROLL} = 0; + +@RDI = velInstrumentToEarth(\%dta,0,velBeamToInstrument(\%dta,2,1,0,0)); +@ant = velBeamToBeamPair(\%dta,0,2,1,0,0); +die("7: $RDI[0] $ant[0]\n") + unless (abs($RDI[0]+$ant[0]) < 1e-6); + +@RDI = velInstrumentToEarth(\%dta,0,velBeamToInstrument(\%dta,0,0,1,3)); +@ant = velBeamToBeamPair(\%dta,0,0,0,1,3); +die("8: $RDI[1] $ant[2]\n") + unless (abs($RDI[1]-$ant[2]) < 1e-6); + +$dta{ENSEMBLE}[0]->{PITCH} = 20; +$dta{ENSEMBLE}[0]->{ROLL} = 0; + +@RDI = velInstrumentToEarth(\%dta,0,velBeamToInstrument(\%dta,2,1,2,1)); +@ant = velBeamToBeamPair(\%dta,0,2,1,2,1); +die("9: $RDI[0] $ant[0]\n") + unless (abs($RDI[0]+$ant[0]) < 1e-6); +die("10: $RDI[1] $ant[2]\n") + unless (abs($RDI[1]-$ant[2]) < 1e-6); + +$dta{ENSEMBLE}[0]->{PITCH} = 0; +$dta{ENSEMBLE}[0]->{ROLL} = 15; + +@RDI = velInstrumentToEarth(\%dta,0,velBeamToInstrument(\%dta,-2,-0.5,-2,-0.5)); +@ant = velBeamToBeamPair(\%dta,0,-2,-0.5,-2,-0.5); +die("11: $RDI[0] $ant[0]\n") + unless (abs($RDI[0]+$ant[0]) < 1e-6); +die("12: $RDI[1] $ant[2]\n") + unless (abs($RDI[1]-$ant[2]) < 1e-6); + +#---------------------------------------------------------------------- + +print(STDERR "ok\n");