;$Id:$ ;+ ; NAME: ; WCR2CONF_ICET11 ; ; PURPOSE: ; Returns experiment specific WCR2 configuration structure with ; information about the radar installation and calibration parameters ; ; This is user supplied function and is used in conjunction with ; loadwcr2conf.pro function. ; ; CATEGORY: ; wcr2tools ; ; CALLING SEQUENCE: ; wcr2conf=wcr2conf_icet11() ; ; INPUTS: ; ; KEYWORD PARAMETERS: ; ; OUTPUTS: ; ; NOTES: ; The function returns wcr2conf named structure (for description of the ; wcr2conf see wcr2conf__define.pro). ;- ; MODIFICATION HISTORY: ; Written by: Samuel Haimov, May 2011 ; S.H., Jul 11 - added beamstr tag ; ; Copyright (C) 2007-present, Samuel Haimov, Dept. of Atmos. Sci., University ; of Wyoming. This software may be used, copied, or redistributed as long as ; it is not sold and this copyright notice is reproduced on each copy made. ; This routine is provided as is without any expressed or implied warranties ; whatsoever. Other limitations apply as described in the WCR2TOOLS Readme file. FUNCTION wcr2conf_icet11, platform=platform, irs=irs ; platform keyword is a dummy ; ------------------------------------------------------------------------------ ; Initialize wcr2conf named structure ; ------------------------------------------------------------------------------ conf = {wcr2conf} if n_elements(irs) eq 0 then conf.irs='h' $ else begin if where(irs eq ['h','dg','av','AV']) eq -1 then $ message,'Invalid IRS name' $ else conf.irs=irs endelse ; ------------------------------------------------------------------------------ ; Assign WCR2 configuration parameters that may change for each experiment ; ------------------------------------------------------------------------------ ; ............................................................................ ; WCR2 Installation aircraft/paltform ID conf.platform='N130AR' ; for NSF/NCAR C130 ; ............................................................................ ; The following parameters are ordered according to the DAQ port IDs ; Copol-crosspol port pairs according to the current EMS truth table: ; H1-V1 - currently not a valid pair (V1 port not used)) ; H2-V2 - used by a dual-pol down-slant antenna (h/v-pol back/side port) ; H1-V3 - not a valid pair (H1:single-pol up ant., V3:single-pol down ant.) ; PortID (PID): 0 1 2 3 4 ; EMS PortLabel: 5 3 1 4 2 ; Port names: 'H1' 'V1' 'V3' 'H2' 'V2' ; AntennaID: 1 1 3 4 2 ; ............................................................................ ;N130AR Ant.: 15"Dish None 12"Horn 12"GOLA 12"GOLA conf.antap =[ 0.381, 0.00, 0.305, 0.305, 0.305 ];[m], apperture conf.antbw =[ 0.63, 0.00, 0.78, 0.78, 0.78 ];[deg], beamwidth conf.antff =[ 91.0, 0.0, 60.0, 60.0, 60.0 ];[m], far field ; AntennaID; enter -9 if the port is terminated; ATTEN: 0 is reserved for use ; with N2UW side/up antenna mirror and cannot be used as antenna ID: ; for more read comments for mirrorids tag ; N130AR conf.antids =[ 1, -9, 2, 4, 4 ];antenna IDs ; Antenna names/strings 'up', 'side', down', 'down-' are reserved words and ; are used in other WCR2 related files/programs ; (e.g., wcr2prototype, wcr2plotnc, plotwcr2qa) ; N130AR conf.antstr =['up', 'none', 'down', 'down-aft-h', 'down-aft-v'] conf.beamids=[ 1, -9, 2, 4, 4 ];beam IDs conf.beamstr=[ 'up', 'none', 'down', 'down-aft', 'down-aft'];beam names ; ............................................................................ ; ATTENTION: Antenna/Beam assignments ; Antenna/Beam position and unit vectors; position/pointing angles in AC ; coordinates.(3,5) array with the second index loosely matching the portID. ; The port match is a bit confusing. This is because for N2UW I use port 0 ; index to define the SIDE beam vector and port 1 index for the UP beam ; vector (controlled by external mirror), while they are designated to ; represent h-pol and v-pol ports for the N2UW single side/up antenna. For ; N130AR the up antenna is connected to port 0 and index 0 is used for UP ; beam, but UP beam ID is still 1. ; Antenna position for N130AR ; PID conf.antpos =[[-11.67,-0.56,-3.29], $ ; 0: up ant; AC coord,m from IRS [ 0.00, 0.00, 0.00], $ ; 1: no ant; AC coord,m from IRS [-16.64,-0.32,-2.32], $ ; 2: down ant; AC coord,m from IRS [-16.55,-0.35,-1.87], $ ; 3: down-aft ant; AC coord,m from IRS [-16.55,-0.35,-1.87]] ; 4: down-aft ant; AC coord,m from IRS ; Antenna beam vectors for N130AR ; (up: ICEL07; down: PLOWS09; down-aft:ICEL07) ; use -9. x-component for antennas/beams not used or not available ; conf.beamcaldate=20100209 ; H2 ICE-L,V2 new PLOWS, H1 ICE-L ; the date change below was done on 23 Sep 2011 conf.beamcaldate=20110708 ; H2,V2,V3: ICE-T, H1: ICE-L ; ICE-L Up[deg] 87.50 90.00 177.50 conf.beams =[[ 0.0436195, 0.0, -0.9990482], $ ; 0: up beam [-9.0, 0.0, 0.0 ], $ ; 1: no antenna ; PLOWS Down[deg] 91.80 , 90.00, 1.80 ; [-0.0314108, 0.00, 0.999507], $ ; 2: down beam ; ICE-T Down[deg] 92.5, 90.00 2.5 [-0.0436194, 0.0, 0.999048], $ ; 2: down beam ; ICE-L Aft[deg] 125.25 89.37 35.25 ; [-0.5771, 0.011, 0.8166 ], $ ; 4: down-aft beam ; ICE-T Aft[deg] 126.80, 90.00, 36.80 [-0.599024, 0.0, 0.800731 ], $ ; 3: down-aft beam(h-pol) [-0.599024, 0.0, 0.800731 ]] ; 4: down-aft beam(v-pol) ; ............................................................................ ; Calib. coeffs:[co-pol,cr-pol,cr-pol-iso] for every PORT ; N130AR conf.calpwrdate=20110601 conf.calpwr =[[ 45.5,-999.0,-999.0], $ ; PID=0: up antenna Tx h-pol [-999.0,-999.0,-999.0], $ ; PID=1: no antenna [ 39.5,-999.0,-999.0], $ ; PID=2: down antenna Tx h-pol [ 42.0, 45.0, -35.0], $ ; PID=3: down-aft antenna Tx h-pol [ 48.0, 45.0, -35.0]] ; PID=4: down-aft antenna Tx v-pol ; ............................................................................ ; Linear Polarization convention: ; h-pol and v-pol refer to their corresponding horzontal and vertical ; polarizations when a WCR beam is pointing horizontally and laterally ; w.r.t.platform logitudinal axis rotation(roll) ; Tx PID: 0 1 2 3 4 conf.portstr =['H1','V1','V3','H2','V2'] ; Tx port names conf.polrxids =[ 1, 0, 0, 1, 0 ] ; Receiver (Vrx=0, Hrx=1) associated ; with the co-pol return for all PIDs ; I need it to avoid using portstr ; coding to extract the assoc. Rx_ch; ; 0=Vrx, 1=Hrx are hardwired in ; the radar firmware,initwcr2,etc. ; conf.poltxids =[ 1, 0, 1, 1, 0 ] ; Tx pol ID for every port ; the modification in the above line was done on 23 Sep 2011 ; neither 0 nor 1 actually represent the ~45 deg antenna rotation; the change ; is implemented for possible future polarization convention and the ; introduction of rotated (w.r.t. horizontal/vertical) polarization conf.poltxids =[ 1, 0, 1, 0, 1 ] ; Tx pol ID for every port ; ------------------------------------------------------------------------------ ; Assign WCR2 configuration fixed parameters ; ------------------------------------------------------------------------------ conf.algids =[ 0, 1, 2, 3, 4, 5, 6 ] ; conf.algstr =['SPP','FF1','FF2','FF3','FF4','CPP','RIQ'] ; ; Note: algids= 6 is not used by the WCR2 data system; data system sets ; record_raw flag in fh1 when raw I,Q data are recorded for any mode. ; algs (mode name) is assigned in openwcr2 if record_raw=1 ; ............................................................................ ; Power cal. correction for every pulse; reference is CR cal. for 200 ns ; 50 100 200 250 500 1000 ns conf.calcor =[6., 3., 0., -1., -4., -7.] ; ............................................................................ ; When a spectral window is used the loss of energy due to the data weighting ; is compensated with a correction implemented in the acquisition software conf.fftwinids=[ 0, 1, 2, 3, 4 ] conf.fftwinstr=['bartlett','blackman','hamming','hanning','rectangular'] ; ............................................................................ conf.filtids =[ 0, 1, 2, 3, 4, 5 ] ; IF filter(MHz) IDs conf.filtstr =['20','10','5','4','2','1'] ; IF filter names ; Minimum range_gate_sampling (for drxdec=4) conf.minrgs=7.5093867d0 ; in meters ; ............................................................................ ; There is no external mirror on NCAR C130 ; conf.mirrorids[[0,2]]=-9 is being used in plotwcr2qa only. ; Words 'side' and 'up' are required and cannot be replaced ; with other synonyms - they are used in other programs. conf.mirrorids=[ -9, -9, -9, -9, -9 ] conf.mirrorstr=['side','up','antid','side_beam_ind','up_beam_ind'] ; ............................................................................ ; Smoothing noise-window size(default 101); should be an odd number; ; it is recommended not to exceed 10% of the processed number of profiles conf.noisewin =101L ; Minimum power (in mW) set when no signal is present ; (after rxscale is applied in readwcr2data) conf.nosignal=1.e-15 ; ............................................................................ conf.polstr =['v', 'h'] ; pol ID string 'v'=0; 'h'=1 conf.pulseids =[ 0, 1, 2, 3, 4, 5] ;Pulsewidth IDs conf.pulses =[50,100,200,250,500,1000] ;Pulsewidth in [ns] conf.rflambda =0.00316 ; Tx carrier wavelength in meters conf.rffreq =94.92 ; Tx carrier frequency in GHz conf.rxscale =10.^8.775 ; Digital receiver conversion factor to mW: ; mW=value/(8*averages*rxscale) for SPP ; uW=value/(fftlen^2*averages*rxscale) for FFT ; mW=value/(npavrg*averages*rxscale) for CPP ; mW=value/rxscale for RIQ ; Digital receiver level in mW after which it starts saturating conf.rxsat =1.0 return,conf end