netCDF/ACARS
Barleben Axel
Axel.Barleben at DWD.DE
Tue Jan 9 03:50:54 EST 2007
Hi,
Are there any decoders for the netCDF/ACARS-data. How can I accommodate
the transient nature of aircraft report locations (like surface ship).
"sdfopen" dos'nt work.
Are there any examples for descriptor files (.xdf ; .ctl)
Here are the ncdump -c
netcdf EdrQc.20060516.1650 {
dimensions:
recNum = UNLIMITED ; // (230 currently)
numEdrHistBins = 8 ;
dateLen = 30 ;
aircraftIdLen = 7 ;
airportIdLen = 4 ;
airlineLen = 4 ;
variables:
char minDate(dateLen) ;
minDate:long_name = "minimum observation date/time" ;
minDate:units = "yyyy/mm/dd hh:mm:ss UTC" ;
char maxDate(dateLen) ;
maxDate:long_name = "maximum observation date/time" ;
maxDate:units = "yyyy/mm/dd hh:mm:ss UTC" ;
int minSecs ;
minSecs:long_name = "minimum observation Unix time" ;
minSecs:units = "seconds since 1970-1-1 00:00:00" ;
int maxSecs ;
maxSecs:long_name = "maximum observation Unix time" ;
maxSecs:units = "seconds since 1970-1-1 00:00:00" ;
int qcVersion ;
qcVersion:long_name = "Quality control algorithm version
number" ;
qcVersion:valueUNKN = " " ;
qcVersion:FillValue = " " ;
float latitude(recNum) ;
latitude:long_name = "QC\'d latitude" ;
latitude:units = "degrees_north" ;
latitude:valid_range = 0.f, 90.f ;
latitude:_FillValue = 99999.f ;
float latitudeRaw(recNum) ;
latitudeRaw:long_name = "Raw latitude" ;
latitudeRaw:units = "degrees_north" ;
latitudeRaw:valid_range = 0.f, 90.f ;
latitudeRaw:_FillValue = 99999.f ;
float longitude(recNum) ;
longitude:long_name = "QC\'d longitude" ;
longitude:units = "degrees_east" ;
longitude:_valid_range = -180.f, 180.f ;
longitude:_FillValue = 99999.f ;
float longitudeRaw(recNum) ;
longitudeRaw:long_name = "Raw longitude" ;
longitudeRaw:units = "degrees_east" ;
longitudeRaw:_valid_range = -180.f, 180.f ;
longitudeRaw:_FillValue = 99999.f ;
float altitude(recNum) ;
altitude:long_name = "QC\'d altitude" ;
altitude:units = "feet (pressure altitude, msl)" ;
altitude:_FillValue = 99999.f ;
altitude:valid_min = -100.f ;
float altitudeRaw(recNum) ;
altitudeRaw:long_name = "Raw altitude" ;
altitudeRaw:units = "feet (pressure altitude, msl)" ;
altitudeRaw:_FillValue = 99999.f ;
altitudeRaw:valid_min = -100.f ;
int timeObs(recNum) ;
timeObs:long_name = "QC\'d time of observation" ;
timeObs:units = "seconds since 1970-1-1 00:00:00" ;
timeObs:_FillValue = 0 ;
int timeObsRaw(recNum) ;
timeObsRaw:long_name = "Raw time of observation" ;
timeObsRaw:units = "seconds since 1970-1-1 00:00:00" ;
timeObsRaw:_FillValue = 0 ;
int interpInd(recNum) ;
interpInd:long_name = "flag indicating if
lat,lon,time,alt interpolated" ;
interpInd:value_0 = "Value not interpolated" ;
interpInd:value_1 = "Value interpolated" ;
float medEDR(recNum) ;
medEDR:long_name = "Median eddy dissipation rate" ;
medEDR:units = "m^(2/3) s^-1" ;
medEDR:_FillValue = 99999.f ;
medEDR:valid_range = 0.f, 1.f ;
float medEdrQCInd(recNum) ;
medEdrQCInd:long_name = "Median EDR quality control
indicator" ;
medEdrQCInd:units = "m^(2/3) s^-1" ;
medEdrQCInd:_FillValue = 99999.f ;
medEdrQCInd:valid_range = 0.f, 1.f ;
float maxEDR(recNum) ;
maxEDR:long_name = "Raw peak eddy dissipation rate" ;
maxEDR:units = "m^(2/3) s^-1" ;
maxEDR:_FillValue = 99999.f ;
maxEDR:valid_range = 0.f, 1.f ;
float maxEdrQCInd(recNum) ;
maxEdrQCInd:long_name = "Peak EDR quality control
indicator" ;
maxEdrQCInd:units = "m^(2/3) s^-1" ;
maxEdrQCInd:_FillValue = 99999.f ;
maxEdrQCInd:valid_range = 0.f, 1.f ;
int dataSource(recNum) ;
dataSource:long_name = "data stream that provided the
data" ;
dataSource:value_0 = "ACARS (raw)" ;
dataSource:value_1 = "MDCRS (BUFR)" ;
int fileTime(recNum) ;
fileTime:long_name = "time that data was received at
processing site" ;
fileTime:units = "seconds since 1970-1-1 00:00:00" ;
fileTime:_FillValue = 0 ;
int edrAlgVersion(recNum) ;
edrAlgVersion:long_name = "EDR algorithm version number"
;
edrAlgVersion:valueUNKN = " " ;
edrAlgVersion:FillValue = " " ;
char origAirport(recNum, airportIdLen) ;
origAirport:long_name = "Origination Airport" ;
origAirport:valueUNKN = " " ;
origAirport:FillValue = " " ;
char destAirport(recNum, airportIdLen) ;
destAirport:long_name = "Destination Airport" ;
destAirport:valueUNKN = " " ;
destAirport:FillValue = " " ;
// global attributes:
:title = "EDR Data" ;
:reference = "Phase 2 QC" ;
:version = "2.0" ;
:cdlDate = "20060523" ;
:Conventions = "COORDS" ;
data:
}
Thanks for help
Axel Barleben
German weather service(DWD)
More information about the gradsusr
mailing list