netcdf madis-profiler { dimensions: recNum = UNLIMITED ; // (33 currently) beam = 3 ; beamNameLen = 8 ; level = 72 ; staNamLen = 6 ; QCcheckNum = 10 ; QCcheckNameLen = 60 ; ICcheckNum = 3 ; ICcheckNameLen = 72 ; station = 50 ; maxStaticIds = 50 ; totalIdLen = 6 ; nInventoryBins = 1 ; variables: int nStaticIds ; nStaticIds:_FillValue = 0 ; char staticIds(maxStaticIds, totalIdLen) ; staticIds:_FillValue = "" ; int lastRecord(maxStaticIds) ; lastRecord:_FillValue = -1 ; int invTime(recNum) ; invTime:_FillValue = 0 ; int prevRecord(recNum) ; prevRecord:_FillValue = -1 ; int inventory(maxStaticIds) ; inventory:_FillValue = 0 ; int globalInventory ; globalInventory:_FillValue = 0 ; int firstOverflow ; firstOverflow:_FillValue = -1 ; int isOverflow(recNum) ; isOverflow:_FillValue = 0 ; int firstInBin(nInventoryBins) ; firstInBin:_FillValue = -1 ; int lastInBin(nInventoryBins) ; lastInBin:_FillValue = -1 ; int wmoStaNum(recNum) ; wmoStaNum:long_name = "WMO numeric station ID" ; char staName(recNum, staNamLen) ; staName:long_name = "Alphanumeric station name" ; char QCT(QCcheckNum, QCcheckNameLen) ; QCT:long_name = "list of possible QC checks" ; QCT:reference = "Data statement definitions" ; char ICT(ICcheckNum, ICcheckNameLen) ; ICT:long_name = "list of possible IC checks" ; ICT:reference = "Data statement definitions" ; float staLat(recNum) ; staLat:long_name = "Station latitude" ; staLat:units = "degree_N" ; staLat:_FillValue = 1.e+38f ; staLat:valid_range = -90.f, 90.f ; float staLon(recNum) ; staLon:long_name = "Station longitude" ; staLon:units = "degree_E" ; staLon:_FillValue = 1.e+38f ; staLon:valid_range = -180.f, 180.f ; float staElev(recNum) ; staElev:long_name = "Elevation above MSL" ; staElev:units = "meter" ; staElev:_FillValue = 1.e+38f ; staElev:valid_range = 0.f, 8000.f ; double timeObs(recNum) ; timeObs:long_name = "Time of observation" ; timeObs:units = "seconds since 1970-1-1 00:00:00.0" ; timeObs:_FillValue = 1.7e+308 ; float pressure(recNum) ; pressure:long_name = "Pressure reduced to MSL" ; pressure:units = "hectopascal" ; pressure:_FillValue = 1.e+38f ; float temperature(recNum) ; temperature:long_name = "Surface temperature" ; temperature:units = "kelvin" ; temperature:_FillValue = 1.e+38f ; int relHumidity(recNum) ; relHumidity:long_name = "Surface relative humidity" ; relHumidity:units = "percent" ; relHumidity:_FillValue = -1 ; float windSpeedSfc(recNum) ; windSpeedSfc:long_name = "Surface wind speed" ; windSpeedSfc:units = "meter/sec" ; windSpeedSfc:_FillValue = 1.e+38f ; windSpeedSfc:valid_range = -150.f, 150.f ; int windDirSfc(recNum) ; windDirSfc:long_name = "Surface wind direction" ; windDirSfc:units = "degree" ; windDirSfc:_FillValue = -1 ; windDirSfc:valid_range = 0, 360 ; float rainRate(recNum) ; rainRate:long_name = "Rainfall rate - surface" ; rainRate:units = "kg/meter2/sec" ; rainRate:_FillValue = 1.e+38f ; int submode(recNum) ; submode:long_name = "NOAA wind profiler submode information" ; submode:units = "in code" ; submode:_FillValue = -1 ; float levels(recNum, level) ; levels:long_name = "Height above station" ; levels:units = "meter" ; levels:_FillValue = 1.e+38f ; levels:valid_range = 0.f, 16250.f ; int levelMode(recNum, level) ; levelMode:long_name = "Wind profiler mode information" ; levelMode:value1 = "Data from low mode" ; levelMode:value2 = "Data from high mode" ; levelMode:value-1 = "Missing" ; levelMode:level = "levels" ; levelMode:_FillValue = -1 ; float uComponent(recNum, level) ; uComponent:long_name = "u (eastward) component" ; uComponent:level = "levels" ; uComponent:_FillValue = 1.e+38f ; char uComponentDD(recNum, level) ; uComponentDD:long_name = "U component QC summary value" ; uComponentDD:values = "Z,S,X,Q,G, or B" ; uComponentDD:reference = "Global Attributes Section" ; int uComponentQCA(recNum, level) ; uComponentQCA:long_name = "U component QC applied word" ; uComponentQCA:NoBitsSet = "No QC applied" ; uComponentQCA:Bit1Set = "Master bit - at least 1 check applied" ; uComponentQCA:Bit2Set = "Validity check applied" ; uComponentQCA:Bit3Set = "Reserved" ; uComponentQCA:Bit4Set = "Internal Consistency check applied" ; uComponentQCA:Bit5Set = "Reserved" ; uComponentQCA:Bit6Set = "Reserved" ; uComponentQCA:Bit7Set = "Reserved" ; uComponentQCA:Bit8Set = "Reserved" ; uComponentQCA:Bit9Set = "Reserved" ; uComponentQCA:Bit10Set = "Time-Height Consistency applied" ; uComponentQCA:reference = "Global Attributes Section" ; int uComponentQCR(recNum, level) ; uComponentQCR:long_name = "U component QC results word" ; uComponentQCR:NoBitsSet = "No QC applied" ; uComponentQCR:Bit1Set = "Master bit - at least 1 check failed" ; uComponentQCR:Bit2Set = "Validity check failed" ; uComponentQCR:Bit3Set = "Reserved" ; uComponentQCR:Bit4Set = "Internal Consistency check failed" ; uComponentQCR:Bit5Set = "Reserved" ; uComponentQCR:Bit6Set = "Reserved" ; uComponentQCR:Bit7Set = "Reserved" ; uComponentQCR:Bit8Set = "Reserved" ; uComponentQCR:Bit9Set = "Reserved" ; uComponentQCR:Bit10Set = "Time-Height Consistency failed" ; uComponentQCR:reference = "Global Attributes Section" ; int uComponentICA(recNum, level) ; uComponentICA:long_name = "U component IC applied word" ; uComponentICA:NoBitsSet = "No IC check applied" ; uComponentICA:Bit1Set = "Master bit - at least 1 check applied" ; uComponentICA:Bit2Set = "IC check 1 applied" ; uComponentICA:Bit3Set = "IC check 3 applied" ; uComponentICA:reference = "Global Attributes Section" ; int uComponentICR(recNum, level) ; uComponentICR:long_name = "U component IC results word" ; uComponentICR:NoBitsSet = "No IC check failures" ; uComponentICR:Bit1Set = "Master bit - at least 1 check failed" ; uComponentICR:Bit2Set = "IC check 1 failed" ; uComponentICR:Bit3Set = "IC check 3 failed" ; uComponentICR:reference = "Global Attributes Section" ; float vComponent(recNum, level) ; vComponent:long_name = "v (northward) component" ; vComponent:level = "levels" ; vComponent:_FillValue = 1.e+38f ; char vComponentDD(recNum, level) ; vComponentDD:long_name = "V component QC summary value" ; vComponentDD:values = "Z,S,X,Q,G, or B" ; vComponentDD:reference = "Global Attributes Section" ; int vComponentQCA(recNum, level) ; vComponentQCA:long_name = "V component QC applied word" ; vComponentQCA:NoBitsSet = "No QC applied" ; vComponentQCA:Bit1Set = "Master bit - at least 1 check applied" ; vComponentQCA:Bit2Set = "Validity check applied" ; vComponentQCA:Bit3Set = "Reserved" ; vComponentQCA:Bit4Set = "Internal Consistency check applied" ; vComponentQCA:Bit5Set = "Reserved" ; vComponentQCA:Bit6Set = "Reserved" ; vComponentQCA:Bit7Set = "Reserved" ; vComponentQCA:Bit8Set = "Reserved" ; vComponentQCA:Bit9Set = "Reserved" ; vComponentQCA:Bit10Set = "Time-Height Consistency applied" ; vComponentQCA:reference = "Global Attributes Section" ; int vComponentQCR(recNum, level) ; vComponentQCR:long_name = "V component QC results word" ; vComponentQCR:NoBitsSet = "No QC applied" ; vComponentQCR:Bit1Set = "Master bit - at least 1 check failed" ; vComponentQCR:Bit2Set = "Validity check failed" ; vComponentQCR:Bit3Set = "Reserved" ; vComponentQCR:Bit4Set = "Internal Consistency check failed" ; vComponentQCR:Bit5Set = "Reserved" ; vComponentQCR:Bit6Set = "Reserved" ; vComponentQCR:Bit7Set = "Reserved" ; vComponentQCR:Bit8Set = "Reserved" ; vComponentQCR:Bit9Set = "Reserved" ; vComponentQCR:Bit10Set = "Time-Height Consistency failed" ; vComponentQCR:reference = "Global Attributes Section" ; int vComponentICA(recNum, level) ; vComponentICA:long_name = "V component IC applied word" ; vComponentICA:NoBitsSet = "No IC check applied" ; vComponentICA:Bit1Set = "Master bit - at least 1 check applied" ; vComponentICA:Bit2Set = "IC check 1 applied" ; vComponentICA:Bit3Set = "IC check 3 applied" ; vComponentICA:reference = "Global Attributes Section" ; int vComponentICR(recNum, level) ; vComponentICR:long_name = "V component IC results word" ; vComponentICR:NoBitsSet = "No IC check failures" ; vComponentICR:Bit1Set = "Master bit - at least 1 check failed" ; vComponentICR:Bit2Set = "IC check 1 failed" ; vComponentICR:Bit3Set = "IC check 3 failed" ; vComponentICR:reference = "Global Attributes Section" ; float wComponent(recNum, level) ; wComponent:long_name = "w (upward) component" ; wComponent:level = "levels" ; wComponent:_FillValue = 1.e+38f ; int uvQualityCode(recNum, level) ; uvQualityCode:long_name = "NOAA wind profiler quality control test results for U and V" ; uvQualityCode:level = "levels" ; uvQualityCode:_FillValue = -1 ; uvQualityCode:reference = "Quality code bit table in global attributes section" ; byte wQualityCode(recNum, level) ; wQualityCode:long_name = "NOAA wind profiler quality control test results for W" ; wQualityCode:level = "levels" ; wQualityCode:_FillValue = -1b ; wQualityCode:reference = "Quality code bit table in global attributes section" ; float HorizSpStdDev(recNum, level) ; HorizSpStdDev:long_name = "Horizontal wind speed standard deviation" ; HorizSpStdDev:units = "meter/sec" ; HorizSpStdDev:level = "levels" ; HorizSpStdDev:_FillValue = 1.e+38f ; float VertSpStdDev(recNum, level) ; VertSpStdDev:long_name = "Vertical wind speed standard deviation" ; VertSpStdDev:units = "meter/sec" ; VertSpStdDev:level = "levels" ; VertSpStdDev:_FillValue = 1.e+38f ; char beamNames(beam, beamNameLen) ; beamNames:long_name = "Beam direction names" ; float azimBeam(recNum, beam) ; azimBeam:long_name = "Azimuth of beam" ; azimBeam:units = "degree" ; azimBeam:beam = "beamNames" ; azimBeam:_FillValue = 1.e+38f ; azimBeam:valid_range = 0.f, 360.f ; float elevBeam(recNum, beam) ; elevBeam:long_name = "Elevation of beam" ; elevBeam:units = "degree" ; elevBeam:beam = "beamNames" ; elevBeam:_FillValue = 1.e+38f ; elevBeam:valid_range = 0.f, 90.f ; byte momentsQualityCode(recNum, level, beam) ; momentsQualityCode:long_name = "NOAA wind profiler data quality control test results for moments" ; momentsQualityCode:level = "levels" ; momentsQualityCode:beam = "beamNames" ; momentsQualityCode:_FillValue = -1b ; momentsQualityCode:reference = "Quality code bit table in global attributes section" ; int consensusNum(recNum, level) ; consensusNum:long_name = "Consensus number" ; consensusNum:level = "levels" ; consensusNum:_FillValue = 2147483647 ; int consensusNumBeam(recNum, level, beam) ; consensusNumBeam:long_name = "Consensus number" ; consensusNumBeam:level = "levels" ; consensusNumBeam:beam = "beamNames" ; consensusNumBeam:_FillValue = 2147483647 ; int peakPower(recNum, level) ; peakPower:long_name = "Spectral peak power" ; peakPower:units = "dB" ; peakPower:level = "levels" ; peakPower:_FillValue = 2147483647 ; float peakPowerBeam(recNum, level, beam) ; peakPowerBeam:long_name = "Spectral peak power" ; peakPowerBeam:units = "dB" ; peakPowerBeam:level = "levels" ; peakPowerBeam:beam = "beamNames" ; peakPowerBeam:_FillValue = 1.e+38f ; float radVelocity(recNum, level, beam) ; radVelocity:long_name = "Radial velocity" ; radVelocity:units = "meter/sec" ; radVelocity:level = "levels" ; radVelocity:beam = "beamNames" ; radVelocity:_FillValue = 1.e+38f ; float specWidth(recNum, level, beam) ; specWidth:long_name = "Spectral width" ; specWidth:units = "meter2/sec2" ; specWidth:level = "levels" ; specWidth:beam = "beamNames" ; specWidth:_FillValue = 1.e+38f ; // global attributes: :avgTimePeriod = "60 minutes" ; :staVarNum = 13 ; :levVarNum = 10 ; :nonStaticLevVar = 8 ; :cdlDate = "20020503" ; :idVariables = "staName" ; :timeVariables = "timeObs" ; :filePeriod = 3600 ; :fileEndOffset = 0 ; :qualityCodeNoBitsSet = "Good" ; :qualityCodeBit1Set = "Reserved" ; :qualityCodeBit2Set = "Test results inconclusive" ; :qualityCodeBit3Set = "Test B performed and failed" ; :qualityCodeBit4Set = "Test A performed and failed" ; :qualityCodeBit5Set = "Reserved" ; :qualityCodeBit6Set = "Reserved" ; :qualityCodeBit7Set = "Reserved" ; :qualityCodeBit8Set = "Reserved" ; :qualityCodeBits1To8Set = "Missing" ; :qualityCodeLeastSignificantBit = "bit1" ; :DD_long_name = "QC data descriptor model: QC summary values" ; :DD_reference = "AWIPS Technique Specification Package (TSP) 88-21-R2" ; :DD_values = "Z,C,S,V,X,Q,G, or B" ; :DD_value_Z = "No QC applied" ; :DD_value_C = "Passed QC stage 1" ; :DD_value_S = "Passed QC stages 1 and 2" ; :DD_value_V = "Passed QC stages 1, 2 and 3" ; :DD_value_X = "Failed QC stage 1" ; :DD_value_Q = "Passed QC stage 1, but failed stages 2 or 3 " ; :DD_value_G = "Included in accept list" ; :DD_value_B = "Included in reject list" ; :QCStage_long_name = "automated QC checks contained in each stage" ; :QCStage_values = "1, 2, or 3" ; :QCStage_value_1 = "Validity and Position Consistency Check" ; :QCStage_value_2 = "Internal, Temporal, Time-Height, Vertical and Model Consistency Checks" ; :QCStage_value_3 = "Spatial Consistency Check" ; :QCStage_reference = "AWIPS TSP 88-21_R2" ; :QCA_long_name = "QC applied model: applied word definition" ; :QCA_NoBitsSet = "No QC applied" ; :QCA_Bit1Set = "Master bit - at least 1 check applied" ; :QCA_Bit2Set = "Validity check applied" ; :QCA_Bit3Set = "Position Consistency check applied" ; :QCA_Bit4Set = "Internal Consistency check applied" ; :QCA_Bit5Set = "Temporal Consistency check applied" ; :QCA_Bit6Set = "Hydrostatic check applied" ; :QCA_Bit7Set = "Spatial Consistency check applied" ; :QCA_Bit8Set = "Super Adiabatic Lapse Rate check applied" ; :QCA_Bit9Set = "Wind Shear check applied" ; :QCA_Bit10Set = "Time-Height Consistency check applied" ; :QCA_LeastSignificantBit = "bit1" ; :QCA_reference1 = "AWIPS TSP 88-21_R2" ; :QCA_reference2 = "10th Met Obs and Inst, Paper FA5.7, Phoenix, 1998" ; :QCA_reference3 = "Ann. Geophysicae 12, 711-724 (1994)" ; :QCA_reference4 = "1st Int Obs Sys, Paper FA8.4, Long Beach, 1997" ; :QCR_long_name = "QC results model: results word definition" ; :QCR_NoBitsSet = "No QC failures" ; :QCR_Bit1Set = "Master bit - at least 1 check failed" ; :QCR_Bit2Set = "Validity check failed" ; :QCR_Bit3Set = "Position Consistency check failed" ; :QCR_Bit4Set = "Internal Consistency check failed" ; :QCR_Bit5Set = "Temporal Consistency check failed" ; :QCR_Bit6Set = "Hydrostatic check failed" ; :QCR_Bit7Set = "Spatial Consistency check failed" ; :QCR_Bit8Set = "Super Adiabatic Lapse Rate check failed" ; :QCR_Bit9Set = "Wind Shear check failed" ; :QCR_Bit10Set = "Time-Height Consistency check failed" ; :QCR_LeastSignificantBit = "bit1" ; :QCR_reference1 = "AWIPS TSP 88-21_R2" ; :QCR_reference2 = "10th Met Obs and Inst, Paper FA5.7, Phoenix, 1998" ; :QCR_reference3 = "Ann. Geophysicae 12, 711-724 (1994)" ; :QCR_reference4 = "1st Int Obs Sys, Paper FA8.4, Long Beach, 1997" ; :ICA_long_name = "IC applied model: applied word definition" ; :ICA_NoBitsSet = "No IC applied" ; :ICA_Bit1Set = "Master bit - at least 1 check applied" ; :ICA_BitiSet = "IC check # applied" ; :ICA_LeastSignificantBit = "bit1" ; :ICA_reference = "IC check #\'s defined in IC check table" ; :ICR_long_name = "IC results Model: results word definition" ; :ICR_NoBitsSet = "No IC applied" ; :ICR_Bit1Set = "Master bit - at least 1 check applied" ; :ICR_BitiSet = "IC check # applied" ; :ICR_LeastSignificantBit = "bit1" ; :ICR_reference = "IC check #\'s defined in IC check table" ; data: }