netcdf wcr3prototypenc { //****************************************************************************// //* Experiment *// //* WCR prototype cdl file for generating WCR LEVEL 1 netcdf *// //* files applicable to the following DAQ (data acquisition) modes: *// //* SPP - single antenna, single-polarization pulse-pair mode *// //* CPP - single/multi-antenna, single/dual-pol pulse-pair modes *// //* (custom design of power and pulse-pair Doppler products) *// //* FFT_PP - single/multi-antenna, single/dual-pol Doppler spectra mode *// //* including pulse-pair calculation over the length of the FFT *// //* *// //* Attention: For those using software/languages with 'column major' *// //* order for multi-dimensional arrays (e.g., FORTRAN), *// //* keep in mind that the order in which the dimensions will *// //* be loaded in is reversed to the one shown in this file *// //* header (which follows 'row major' order). The dimensions *// //* are also reversed when using IDL. *// //* This file can serve as a help document for all processed variables *// //* *// //****************************************************************************// dimensions: //* dim. names must include min of one space before and after the name *// beam = 1 ; // number of active beams //MAB fftlen = 1 ; // number of spectral lines for FFT modes //FFT np = 1 ; // number of reflectivity products(np=nv=2 for SPP mode)//MNP npn = 1 ; // number of noise power products (np-nprm) //MPN nprm = 1 ; // number of RM noise power products (RM pulses,Tx OFF) //MRP nv = 1 ; // number of Doppler vel. products (nv=np for FFT modes)//MNV profile = 1 ; // radar profiles (time dimension) range = 1 ; // radar range gates (radial range dimension) vector3 = 3 ; // Earth coordinate system vector dimension variables: //*.....................................................................*// //* Dimensions related variables *// //*.....................................................................*// double time(profile); // UTC stamps representing the middle of radar // profile dwell(integration) time (WCRdaqint) time:long_name = "Profile acquisition time"; // according to WCRirigflag time:units = "seconds since 1970-01-01 00:00:00 +0000"; // UTC UNIX secs time:strptime_format = "seconds since %F %T %z" ; time:source = " " ; // initialized w/ DAQ server time or ACID master time time:sourceid = 0s ; // WCRirigflag: // 0=counter (no IRIG time code or freewheeling), // 1=IRIG time code is present, use IRIG B // 2=IRIG status changed for at least 1 profile // 1x(10,11,12) - time=irigtime, initilized with // hosttime[0]; no GPS or IRIG card not initialized // 2x(20,21,22)-time=hosttime (bad/no irigtime) // 3x(30,31,32)-time=hosttime (found irig jumps>1s) // x - is IRIG status; // 40 - time=hosttime; at least two IRIG timestamps are the same // 41 - time=hosttime; IRIG timestamps are all 0 time:status = "WCRdaqint/2,WCRUTCcor,WCRtimeoffset applied" ; short irigstatus(profile) ; // irigstatus (8-bit word) // 2nd bit: 0|1 free running|IRIG B sync irigstatus:long_name = "WCR TFP card IRIG-B status 8-bit word" ; irigstatus:units = "" ; float range(range) ; range:long_name = "Range to (geometric) center of radar range gates" ; range:units = "meters" ; float range_cor(range) ; range_cor:long_name = "Received power range correction (1/r^2, r in km)" ; range_cor:units = "dB" ; //*.....................................................................*// //* Reflectivity and velocity variables *// //*.....................................................................*// float reflectivity(profile,range) ; // single power product //SNP float reflectivity(np,profile,range) ; // multiple power products //MNP reflectivity:long_name = "Noise Subtracted Power Equivalent reflectivity factor" ; reflectivity:units= "mm^6/m^3" ; reflectivity:_FillValue = -32767.f ; reflectivity:antenna =" "; // list(np) of active antenna names reflectivity:beamid = 0s; // list(np) of active antenna beam IDs reflectivity:calcoef=0.f; // list(np) of calibration coef. in dBZ@1km reflectivity:isoxpol=0.f; // list(np) of cross-pol isolation in dB reflectivity:npavrg=0s; // list(np) of # of pulses averaged in DAQ //*npid code(9999999):(antID|rxpol|txpol|rxpol|txpol|receiver|receiver)*// reflectivity:npid=0; // list(np) of reflectivity product IDs reflectivity:receiver = 0b; // list(np) of receiver ID: 0=V,1=H reflectivity:rxpol = 0s; // list(np) of received polarization IDs reflectivity:txpol = 0s; // list(np) of transmitted polarization IDs reflectivity:status="mean noise subtracted, range correction applied, no threshold applied, no atten.correction"; //* Description of 2-Byte (MSB,LSB) reflectivity mask: *// //* LSB set bit(bit value): *// //* bit 0 (1) - signal above 1 StDev of mean noise (LSB value=1) *// //* bit 1 (2) - signal above 2 StDev of mean noise (LSB value=3) *// //* bit 2 (4) - signal above 3 StDev of mean noise (LSB value=7) *// //* bit 3 (8) - signal in the receiver saturation range (LSB value=15)*// //* bit 4-7 - reserved *// //* Note: bits 0,1,2, and 3 are inter-dependent *// //* MSB set bit(bit value): *// //* bit 8(256) - surface clutter affected gate (mask value>=256) *// //* (clutter may not be detectable; est.max range 150 m) *// //* bit 9(512) - estimated surface return gate (mask value=512) *// //* (surface return may not be detectable) *// //* bit 10(1024)- sub-surface gate (mask value=1024) *// //* (sub-surface gates may contain detecable levels) *// //* bit 11(2048)- gate affected by leak due to finite isolation from *// //* Tx during transmission or between receiver channels(antennas) *// //* (mostly surface return cross-talk); leaks vary and may not be *// //* detectable; up to 75 m from 1st gate may be affected by the Tx *// //* leak; mask 75 m swath for the cross-talk; mask value>=2048 *// //* bit 12-15 - reserved *// short reflectivity_mask(profile,range) ; // target mask //SNP short reflectivity_mask(np,profile,range);// target mask //MNP reflectivity_mask:long_name = "Two byte target mask" ; reflectivity_mask:units = "" ; reflectivity_mask:beamid = 0s; reflectivity_mask:npid=0; reflectivity_mask:activebits = 0,1,2,3,8,9,10,11;// currently active bits reflectivity_mask:setbitname = "1_noise_StDev,2_noise_StDev,3_noise_StDev,saturation,surface_cluter,surface,sub_surface,leak"; reflectivity_mask:status="none set,LSB bits set,LSB&MSB bits set"; reflectivity_mask:statusid=0s; // 0,1,2 float velocity(profile,range) ; // single velocity product //SNV float velocity(nv,profile,range) ; // multiple velocity products //MNV velocity:long_name = "Mean Doppler radial velocity. Positive is toward the radar" ; velocity:units = "m/s" ; velocity:_FillValue = -32767.f ; velocity:antenna =" "; // list(nv) of active antenna names velocity:beamid = 0s; // list(nv) of active beam IDs velocity:nvavrg=0s; // list(nv) of pulsepairs averaged in DAQ //*nvid code(9999999):(antID|rxpol1|txpol1|rxpol2|txpol2|receiver1|receiver2)*// velocity:nvid=0; // list(nv) of velocity product IDs velocity:maxvel = 0.f ; // list(nv) of Doppler Nyquist velocity velocity:rmcor = 0s; // radar moment correction: // 0|1=not applied|applied velocity:refframe="Earth (x:East,y:North,z:Up*)"; // radial velocity reference coordinate system // for airborne or ground measurements: // ground: 'Earth: azimuth and elevation' // AC raw Doppler:'aircraft (x:nose,y:right_wing,z:down*)' // AC corrected: 'Earth (x:East,y:North,z:Up*)' // * - the radial velocity sign depends on the beam // orientation and positive is always toward the // radar velocity:algorithm = "puse-pair"; // 1st mom. calc. using pulse-pair alg. velocity:shift = "none" ; // Velocity shift status velocity:shiftid = 0s ; // Velocity shift status ID velocity:dependencies = "ACID IRS variables" ;// ACID=N2UW,N130AR,GROUND velocity:status = " " ;// uncor./corrected for platform motion velocity:statusid= 0s ; // 0|1=uncorrected/corrected Doppler //*.....................................................................*// //* Auxiliary variables *// //*.....................................................................*// //*..........................Noise variables............................*// //* 'noise' var is the best estimate of the noise in the reflectivity *// //* data based on measurement from no-target range gates, radiometric *// //* (RM) gate, Warm Load gate, or adjusted Hot Load gate available for *// //* each profile. This variable is provided only for reflectivity *// //* products for which 'noiserm' is not available *// float noise(profile) ; // single reflectivity product //SPN float noise(npn,profile) ; // multiple reflectivity products //MPN noise:long_name = "Estimated Received noise power in mm^6/m^3 at 1 km" ; //NPN noise:units = "mm^6/m^3"; // equivalent mm^6/m^3 at 1 km //NPN noise:beamid = 0s; //NPN noise:receiver = 0b; // receivers used for the np products; //NPN // 0=V(Vrx),1=H(Hrx) //NPN noise:source =" "; // list(np); noise source names(RM,WL,RGxxx,...) //NPN //* 'noiserm' is the radiometric noise measured during no-transmission *// //* time for a specific antenna/port (called RMP - radiometric pulse) *// float noiserm(profile,range); // single RM noise product //SRP float noiserm(nprm,profile,range);// multiple RM noise products //MRP noiserm:long_name = "Received radiometric (RM) noise power in mm^6/m^3 at 1 km"; //RRP noiserm:units = "mm^6/m^3"; // equivalent mm^6/m^3 at 1 km //RRP noiserm:beamid = 0s; //RRP noiserm:receiver = 0b; // receivers used for the nprm products //RRP noiserm:source =" "; // list(np); noise source names(H1RMP_450,...) //RRP //* 'noisemn'is the mean noise calculated from 'noise' or noiserm' *// float noisemn(profile) ; // single power product //SNP float noisemn(np,profile) ; // multiple power products //MNP noisemn:long_name = "Mean noise power in mm^6/m^3 at 1 km" ; noisemn:units = "mm^6/m^3"; // equivalent mm^6/m^3 at 1 km noisemn:nsamples = 0; // # of noise samples used in the mean calcs. noisemn:receiver = 0b; // list(np),receivers used for the np products; // 0=V(Vrx),1=H(Hrx) noisemn:source =" "; // list(np); noise source names(RM,WL,RMP,...) //* 'noisestd'is the noise StDev calculated from 'noise' or noiserm' *// float noisestd(profile) ; // single power product //SNP float noisestd(np,profile) ; // multiple power products //MNP noisestd:long_name = "Std. Dev. of noise power in mm^6/m^3 @ 1 km" ; noisestd:units = "mm^6/m^3";// equivalent mm^6/m^3 at 1 km noisestd:nsamples = 0; // # of noise samples used in the std calcs. noisestd:receiver = 0b; // list(np),receivers used for the np products; noisestd:source =" "; // list(np); noise source names(RM,WL,RMP,...) //*...................Pulse-pair derived variables......................*// float ppnoise(profile) ; // single pulse-pair product //PPS float ppnoise(np,profile) ; // multiple pulse-pair products //PPT ppnoise:long_name = "Pulse Pair magnitude Mean Noise in mm^6/m^3 at 1 km" ; //PPM ppnoise:units = "mm^6/m^3"; // equivalent mm^6/m^3 at 1 km //PPM ppnoise:receiver = 0b; // pulse pair 1st pulse receiver //PPM ppnoise:receiver2 = 0b; // pulse pair 2nd pulse receiver //PPM ppnoise:smooth = 0; // # of moving-averaged noise samples //PPM ppnoise:source =" "; // list(np); noise source names('RM','WL',...) //PPM float ppnoisestd(profile) ; // single pulse-pair product //PPS float ppnoisestd(np,profile) ; // multiple pulse-pair products //PPT ppnoisestd:long_name = "Pulse Pair magnitude Noise Standard Deviation in mm^6/m^3 at 1 km" ; //PPM ppnoisestd:units = "mm^6/m^3" ; //PPM ppnoisestd:receiver = 0b; // pulse pair 1st pulse receiver //PPM ppnoisestd:receiver2 = 0b; // pulse pair 2nd pulse receiver //PPM ppnoisestd:smooth = 101; // # of moving-averaged noise samples//PPM ppnoisestd:source =" "; // list(np); noise source names('RM','WL',...) //PPM float ppreflectivity(profile,range) ; // single pulse-pair product //PPS float ppreflectivity(np,profile,range) ; // multiple pulse-pair prods //PPT ppreflectivity:long_name = "Coherent Power Equivalent reflectivity factor" ; //PPM ppreflectivity:units = "mm^6/m^3" ; //PPM ppreflectivity:_FillValue = -32767.f; //PPM ppreflectivity:antenna =" "; // list(np) of active antenna names //PPM ppreflectivity:averages=0s;// list(np) of # of pulse pair magnitudes averaged in the DAQ//PPM ppreflectivity:beamid = 0s;// list of active beam IDs //PPM ppreflectivity:calcoef=0.f;// list(np) of cal. coef. in dBZ@1km //PPM ppreflectivity:isoxpol=0.f;// list(np) of cross-pol isolation in dB//PPM //*npid code(9999999):(antID|rxpol1|txpol1|rxpol2|txpol2|receiver1|receiver2)*// ppreflectivity:npid=0; // list(np) of puse-pair product IDs //PPM ppreflectivity:prt=0; // list(np) of pulse repetition time in usec //PPM ppreflectivity:receiver = 0b; // list(np) of receiver1 ID: 0=V,1=H //PPM ppreflectivity:receiver2 = 0b; // list(np) of receiver2 ID: 0=V,1=H//PPM ppreflectivity:rxpol = 0s; // list of pp 1st pulse Rx polarization //PPM ppreflectivity:rxpol2= 0s; // list of pp 2nd pulse Rx polarization //PPM ppreflectivity:txpol = 0s; // list of pp 1st pulse Tx polarization //PPM ppreflectivity:txpol2 =0s; // list of pp 2nd pulse Tx polarization //PPM ppreflectivity:status="range correction applied,no threshold applied, no atten.correction"; //PPM short ppreflectivity_mask(profile,range) ; // pulse-pair refl. mask //PPS short ppreflectivity_mask(np,profile,range);// pulse-pair refl. mask //PPT ppreflectivity_mask:long_name = "Two byte coherent power reflectivity mask" ; //PPM ppreflectivity_mask:units = "" ; //PPM ppreflectivity_mask:beamid = 0s; //PPM ppreflectivity_mask:npid=0; //PPM ppreflectivity_mask:activebits = 0,1,2,3,8,9,10,11;// currently active bits //PPM ppreflectivity_mask:setbitname = "1_noise_StDev,2_noise_StDev,3_noise_StDev,saturation,surface_cluter,surface,sub_surface,leak"; //PPM ppreflectivity_mask:status="none set,LSB bits set,LSB&MSB bits set"; //PPM ppreflectivity_mask:statusid=0s; // 0,1,2 //PPM float ppsw(profile,range) ; // pulse-pair algorithm spectral width //PPS float ppsw(np,profile,range);// pulse-pair algorithm spectral width //PPT ppsw:long_name = "Spectral width"; //PPM ppsw:units = "m/s" ; //PPM ppsw:_FillValue = -32767.f ; //PPM ppsw:beamid = 0s; //PPM ppsw:npid=0; //PPM ppsw:algorithm = "pulse-pair lag 0 and lag 1 correlation"; // 2nd mom. calc. using pulse-pair algorithm //PPM ppsw:status="thresholded at 5 StDev of the pp noise power(~7dB SNR)"; //PPM //*....................Power derived variables..........................*// float snr(profile,range) ; // single power product //SNP float snr(np,profile,range) ; // multiple power products //MNP snr:long_name = "Post-averaged Signal-to-Noise Ratio" ; snr:units= "dB" ; snr:_FillValue = -32767.f ; snr:antenna =" "; // list(np) of active antenna names snr:beamid = 0s; // list(np) of active antenna beam IDs //*npid code(9999999):(antID|rxpol|txpol|rxpol|txpol|receiver|receiver)*// snr:npid=0; // list(np) of snr product IDs snr:receiver = 0b; // list(np) of receiver ID: 0=V,1=H snr:status="SNR=0 - SignalPower equal to NoisePower; NoisePower=noise1StDev"; //*.....................................................................*// //* Doppler spectra related variables (for FFT modes only) *// //*.....................................................................*// float psd_axis(fftlen); //FF1 float psd_axis(np,fftlen); //FF2 psd_axis:long_name = "PSD velocity axes for FFT algorithms"; //FFT psd_axis:units = "m/s" ; //FFT psd_axis:antenna= " "; // antenna names matching beam ID //FFT psd_axis:beamid= 0s; // active beam IDs //FFT float psd_noise(profile,fftlen) ; // single FFT product //FF1 float psd_noise(np,profile,fftlen); // multiple FFT products //FF2 psd_noise:long_name = "Estimated Noise Power Spectral Density " ; //FFT psd_noise:units = "mW/m/s" ; //FFT psd_noise:receiver = 0b ; //FFT float psd_snoise(profile,fftlen) ; // single FFT product //FF1 float psd_snoise(np,profile,fftlen) ; // multiple FFT products //FF2 psd_snoise:long_name = "RM gate Power Spectral Density " ; //FFT psd_snoise:units = "mW/m/s" ; //FFT psd_snoise:receiver = 0b ; //FFT float psd(profile,range,fftlen) ; // single FFT product //FF1 float psd(np,profile,range,fftlen) ; // multiple FFT products //FF2 psd:long_name = "Received Power Doppler Spectra"; //FFT psd:units = "mW/m/s" ; //FFT psd:_FillValue = -32767.f; //FFT psd:average = 0s; // number of averaged spectra in DAQ //FFT psd:beamid = 0s; //FFT psd:receiver = 0b; //FFT psd:resolution = 0.0f; // spectral lines resolution in m/s //FFT psd:rxpol = 0s ; //FFT psd:txpol = 0s ; //FFT psd:status = "uncorrected for platform motion" ; //FFT psd:window = " "; // spectral window used, e.g.,hanning //FFT float psdmom0(profile,range) ; // single FFT product //FP1 float psdmom0(np,profile,range) ; // multiple FFT products //FP2 psdmom0:long_name = "Power Doppler Spectra 0th Moment"; //FPP psdmom0:units= "mm^6/m^3" ; //FPP psdmom0:_FillValue = -32767.f ; //FPP psdmom0:antenna =" "; // list(np) of active antenna names //FPP psdmom0:beamid = 0s; // list(np) of active antenna beam IDs //FPP psdmom0:calcoef=0.f; // list(np) of calibration coef. in dBZ@1km //FPP psdmom0:isoxpol=0.f; // list(np) of cross-pol isolation in dB //FPP psdmom0:npid=0; // list(np) of psdmom0 product IDs //FPP psdmom0:receiver = 0b; // list(np) of receiver ID: 0=V,1=H //FPP psdmom0:rxpol = 0s; // list(np) of received polarization ID //FPP psdmom0:txpol = 0s; // list(np) of transmitted polarization ID //FPP psdmom0:status="mean noise subtracted, range correction applied, no threshold applied, no atten.correction"; //FPP float psdmom1(profile,range) ; // single FFT product //FP1 float psdmom1(np,profile,range) ; // multiple FFT products //FP2 psdmom1:long_name = "Power Doppler Spectra 1th Moment"; //FPP psdmom1:units = "m/s" ; //FPP psdmom1:_FillValue = -32767.f ; //FPP psdmom1:antenna =" "; // list(nv) of active antenna names //FPP psdmom1:beamid = 0s; // list(nv) of active beam IDs //FPP psdmom1:nvid=0; // list(nv) of psdmom1 product IDs //FPP psdmom1:maxvel = 0.f ; // list(nv) of Doppler Nyquist psdmom1 //FPP psdmom1:rmcor = 0s; // radar moment correction: //FPP // 0|1=not applied|applied //FPP psdmom1:refframe="Earth (x:East,y:North,z:Up*)"; //FPP psdmom1:shift = "none" ; // pdfmom1 shift status //FPP psdmom1:shiftid = 0s ; // pdfmom1 shift status ID //FPP psdmom1:dependencies = "ACID IRS variables" ; //FPP psdmom1:status = "uncorrected bias estimate(for SNR>20dB and not folded psd the bias is small)"; //FPP psdmom1:statusid= 0s ;// 0|1=uncorrected/corrected Doppler //FPP //*.....................................................................*// //* Ancillary variables *// //*.....................................................................*// //* Note: When beam dimension is present the variables are written *// //* sorted by beam ID (0,1,2,...). This is different than the *// //* beam associated with np/nv dimension where the beam for every *// //* product is defined by the radar data acquisition system. *// //*.....................................................................*// float wcraspect(profile) ; // range/profile ratio based on ACID air speed wcraspect:long_name = "WCRrangesampling/(WCRtimeint*tas)" ; wcraspect:units = "" ; wcraspect:_FillValue = -32767.f; //for any tas<50 or tas>200 m/s wcraspect:dependencies = "ACID tas" ; // ACID=N2UW or N130AR float wcrantpos(vector3); // single-antenna/beam //SAB float wcrantpos(beam,vector3) ; // multi-antenna/beam //MAB wcrantpos:long_name = "Antenna position distances w.r.t. IRS in platform coordinates" ; wcrantpos:units = "meters" ; // distances in AC coord(x,y,z) wcrantpos:_FillValue = -32767.f; wcrantpos:beamid = 0s ; wcrantpos:dependencies = "ACID IRS variables" ;// ACID=N2UW or N130AR float wcrbeamacvec(vector3); // single-antenna/beam //SAB float wcrbeamacvec(beam,vector3) ; // multi-antenna/beam //MAB wcrbeamacvec:long_name = "Radar beam unit vector in platform coordinates" ; wcrbeamacvec:units = "" ; // AC coord(x,y,z): (ac_axis,right_wing,down) wcrbeamacvec:_FillValue = -32767.f; wcrbeamacvec:beamid = 0s ; wcrbeamacvec:dependencies = "ACID IRS variables" ;// ACID=N2UW or N130AR float wcrbeamvector(profile,vector3); // single-antenna/beam //SAB float wcrbeamvector(beam,profile,vector3) ; // multi-antenna/beam //MAB wcrbeamvector:long_name = "(East,North,Up) radar beam unit vectors" ; wcrbeamvector:units = "" ; wcrbeamvector:_FillValue = -32767.f; wcrbeamvector:beamid = 0s ; wcrbeamvector:dependencies = "ACID IRS variables" ;// ACID=N2UW or N130AR float acvcbeam(profile) ; // single-antenna/beam //SAB float acvcbeam(beam,profile) ; // multi-antenna/beam //MAB acvcbeam:long_name = "Platform velocity component along WCR beam. Positive is away from the radar" ; acvcbeam:units = "m/s" ; acvcbeam:_FillValue = -32767.f; acvcbeam:beamid = 0s ; acvcbeam:dependencies = "ACID IRS variables, wcrbeamvector" ; float acwcbeam(profile) ; // single-antenna/beam //SAB float acwcbeam(beam,profile) ; // multi-antenna/beam //MAB acwcbeam:long_name = "In situ measured wind component at platform altitude along WCR beam. Positive is away from the radar" ; acwcbeam:units = "m/s" ; acwcbeam:_FillValue = -32767.f; acwcbeam:beamid = 0s ; acwcbeam:dependencies = "ACID derived wind variables, wcrbeamvector" ; //*.....................................................................*// //* Optional aircraft motion contribution mask variable allowing to *// //* mask missing/bad data points in the acvcbeam due to problems in *// //* the platform IRS variables used for the calculation of acvcbeam *// //* (currently needed for N130AR aircraft only) *// //*.....................................................................*// float acvcmask(profile) ; // make it short if FillValue is not used acvcmask:long_name = "Mask for velocity component along WCR beam" ; acvcmask:units = " " ; acvcmask:_FillValue = -32767.f; // probably do not need this acvcmask:values = 0,1;// mask allowed values; 0=bad/missing value acvcmask:valuename = "missing_value,valid_value"; acvcmask:dependencies = "ACID IRS variables" ; //*.....................................................................*// //* Optional aircraft position mask variable allowing to mask missing *// //* or bad data points in the ALT,LAT,LON,TAS vars due to problems in *// //* the platform IRS variables used *// //* (this variable is currently not used) *// //*.....................................................................*// float geomask(profile) ; // make it short if FillValue is not used geomask:long_name = "Mask for bad or missing values in ACID position" ; geomask:units = " " ; geomask:_FillValue = -32767.f; // probably do not need this geomask:values = 0,1;// mask allowed values; 0=bad/missing value geomask:valuename = "missing_value,valid_value"; geomask:dependencies = "ACID IRS variables" ; //*.....................................................................*// //* Platform position variables *// //*.....................................................................*// float ALT(profile) ; ALT:long_name = "Radar platform Altitude from MSL" ; ALT:units = "meters" ; ALT:_FillValue = -32767.f; ALT:source = "ACID" ; ALT:dependencies = "" ; // from AC global attribute 'coordinates' float GS(profile) ; GS:long_name = "Radar platform Ground Speed" ; GS:units = "m/s" ; GS:_FillValue = -32767.f; GS:source = "ACID" ; GS:dependencies = "" ; // AC data file variable used for tas double LAT(profile) ; LAT:long_name = "Radar platform Latitude" ; LAT:units = "degree_north" ; LAT:_FillValue = -32767.d; LAT:source = "ACID" ; LAT:dependencies = "" ; // from AC global attribute 'coordinates' double LON(profile) ; LON:long_name = "Radar platform Longitude" ; LON:units = "degree_east" ; LON:_FillValue = -32767.d; LON:source = "ACID" ; LON:dependencies = "" ; // from AC global attribute 'coordinates' float TAS(profile) ; TAS:long_name = "Radar platform True Air Speed" ; TAS:units = "m/s" ; TAS:_FillValue = -32767.f; TAS:source = "ACID" ; TAS:dependencies = "" ; // AC data file variable used for tas // global attributes: //*.....................................................................*// //* The following attributes are manually checked/edited or software *// //* modified for every experiment *// //*.....................................................................*// :Source = "University of Wyoming, Department of Atmospheric Science" ; //F :Address = "1000 E. University Ave., Laramie, WY 82071" ; //F :Phone = "(307) 766-5352" ; //F :Email = "cgrasmic@uwyo.edu"; //F //*.....................................................................*// :AcquisitionDate = 0 ; // YYYYMMDD //P :Categories = "Reflectivity, DopplerVelocity" ; //E :Conventions = "" ; //F :DEMCopyright = "ASTER GDEM is a product of METI and NASA" ; //F :ProjectName = " " ; //E :ProjectDates = " " ; //E :PrincipalInvestigators = " " ; //E //*.....................................................................*// :Platform = "ACID" ; // N2UW or N130AR //E :PlatformDataSource = " "; //P :PlatformDateProcessed = " " ; //P :PlatformIRS = " "; // Inertial Reference system: Applanix AV410 //P //*......... Start-End time of the data recorded in the file ...........*// :TimeInterval = " " ; //P //*.....................................................................*// //* Antenna and beam attribute lists match the radar transmitter ports *// //*.....................................................................*// //* N2UW (has an external mirror for the side/up antenna thus beam IDs *// //* do not match antenna IDs) *// :WCR_AntID = 1s, 1s, 2s, 3s, 4s ; // antenna IDs //F :WCR_AntName = "side_up-h,side_up-v,down,side-fore,down-fore"; //F :WCR_AntPortName = "H1,V1,V2,V3,H2"; //F :WCR_BeamID = 0s, 1s, 2s, 3s, 4s ; // beam IDs //F //* WCR_BeamName names are reserved names - required by wcr3plotnc *// :WCR_BeamName = "side,up,down,side-fore,down-fore"; //F :WCR_BeamPol = "h&v,h&v,h,h,h"; // polarization //F :WCR_BeamRxID = 2s, 2s, 0s, 0s, 1s ; // 2=both receivers//F :WCR_BeamWidth = 0.7f,0.7f,0.5f,0.8f,0.6f; // antenna HPBW in degree //F //*.....................................................................*// //* N130AR config utilizing 3 of the 5 radar transmitter ports *// //*:WCR_AntID = 1s, 2s, 4s ; // antenna IDs //F *// //*:WCR_AntName = "up,down,down-aft"; // antenna names //F *// //*:WCR_AntPortName = "H1,V2,H2"; //F *// //*:WCR_BeamID = 1s, 2s, 4s ; // beam IDs //F *// //*:WCR_BeamName = "up,down,down-aft"; // beam names //F *// //*:WCR_BeamPol = "h, h, h" ; // Tx polarization //F *// //*:WCR_BeamRxID = 1s, 0s, 1s ; // 0=Vrx,1=Hrx //F *// //*:WCR_BeamWidth= 0.6f,0.7f,0.7f; // antenna HPBW in degree //F *// //*.....................................................................*// //* N130AR config utilizing 4 of the 5 radar transmitter ports *// //*:WCR_AntID = 1s, 2s, 4s, 4s ; // antenna IDs //F *// //*:WCR_AntName = "up,down,down-aft-h,down-aft-v";// antenna names //F *// //*:WCR_AntPortName = "H1,V3,H2,V2"; //F *// //*:WCR_BeamID = 1s, 2s, 4s, 4s ; // beam IDs //F *// //*:WCR_BeamName = "up,down,down-aft,down-aft"; // beam names //F *// //*:WCR_BeamPol = "h, h, h, v"; // Tx polarization //F *// //*:WCR_BeamRxID = 1s, 1s, 1s, 0s ; // 0=Vrx,1=Hrx //F *// //*:WCR_BeamWidth= 0.6f,0.7f,0.7f,0.7f; // antenna HPBW in degree //F *// //*.....................................................................*// :WCR_DopVelConvention = "positive is toward the radar" ; //F :WCR_Polarization = "Linear: antenna config. dependent; h-pol and v-pol\nrefer to their corresponding polarizations when\na WCR beam is pointing horizontally and laterally w.r.t.\nplatform logitudinal axis rotation(roll)" ;//F :WCR_PolID = 0s, 1s ; // polarization ID: 0=v-pol, 1=h-pol //F :WCR_PolName = "v,h"; // polarization names //F :WCR_RxID = 0s,1s; // receiver ID; 0=Vrx,1=Hrx //F :WCR_RxName = "V,H"; // receiver names; 2 receivers: Vrx and Hrx //F //*.....................................................................*// //* Beam Pointing Calibration Date and Status *// //*.....................................................................*// :WCRbeamcaldate = 0 ; // beam angles effective cal date //P :WCRbeamcalfile = "see WCRconfigfile, wcrbeamacvec" ; //E :WCRbeamcalstatus = "estimated accuracy: 0.05 deg (0.1 m/s)"; //E //*.....................................................................*// //* Power Calibration parameters, Date, and Status *// //*.....................................................................*// :WCRcalkfactor = 0.711; // Index of refraction factor |K|^2 for water at 0degC //F :WCRcalpwrdate = 0 ; // Reflectivity calibibration constants effective date //P :WCRcalpwrfile = "see WCRconfigfile, reflectivity:calcoef"; //E :WCRcalpwrstatus = "estimated accuracy/precision: 2.5/1.0"; //E :WCRcalrffreq = 94.921; // WCR transmit frequency in GHz //F :WCRcalrflambda = 0.00315836;// WCR transmit wavelength in meters //F :WCRcalrxsaturation = 6.30957; // WCR saturation level in mW (+8dBm) //F //*.....................................................................*// //* WCR3 data acquisition(DAQ) and processing related attributes *// //*.....................................................................*// :WCRcdlfile = " " ; // cdl source file used //P :WCRconfigfile = " " ; // WCR3 configuration file used //P :WCRdaqalg = " " ; // wcrheader: DSP algorithm used in DAQ //P :WCRdaqCPPfile = " " ; // wcrheader: CPP config file if CPP mode //P :WCRdaqfile = " " ; // data acquisition source file //P :WCRdaqint = 0.f ; // radar dwell time in msec //P :WCRdaqrev = " " ; // DAQ software revision //P //*.....................................................................*// :WCRmaxrange=0.f; // wcrheader: maximum recorded range in km //P :WCRmirror=1.f; // wcrheader: N2UW mirror position,0=side,1=up //P :WCRppav = 0 ; // wcrheader: number of pulsepair averaged in DAQ//P :WCRprfKHz = 0.f ; // wcrheader: pulse repetition frequency in KHz //P :WCRprfrange = 0.f ; // wcrheader: maximum unambiguous range in km //P :WCRprfvelocity = 0.f; // wcrheader: +- maximum unambiguous velocity //P :WCRprofiles = 0,0; // processed: first,last processed profile //P :WCRpulsewidth = 0 ; // wcrheader: Tx pulse width in ns //P :WCRrangegates = 0 ; // wcrheader: number of sampled range gates //P :WCRrangeresolution=0.f;// wcrheader: WCR range resolution in meters //P :WCRrangesampling =0.f; // wcrheader: WCR DAQ range sampling in meters //P :WCRstatpps=0.f,0.f,0.f;// min,max,mean # profiles per second //P :WCRstattimeint=0.f,0.f,0.f,0.f; // min,max,mean,std prof timeint.in ms //P :WCRtimeint = 0.f ; // processed: average time int. between profs. //P :WCRtxseq=''; // wcrheader: Tx sequence by port name //P //*.....................................................................*// :WCRtimeoffset = 0.d;// derived: offset applied to WCR time to //P // sync with the platform time stamps //F :WCRUTCcor = 0.d; // derived: UTC corr. applied to WCR time stamps //P //*.....................................................................*// :ProcessAuthor = " " ; // login account name //P :ProcessorRevision = "wcr3 rev. 1.0" ; //F :DateProcessed = " " ; //P :RevisionDate = " " ; //P :RevisionStatus = " " ; // test, preliminary, OK, etc. //P :RevisionNumber = 1 ; // the last processed revision //P :Revision_1 = " " ; //P //*.....................................................................*// }