.:netcdf:home

From ADPAA
Jump to: navigation, search

NetCDF Data Format and Software

Document UND Airborne Data file format information for NetCDF data.


The conversion of the ASCII to NetCDF using NCAR-RAF netCDF Conventions Version 1.3. Naming conventions not given by NCAR-RAF were found by using CF Metadata Naming Convetions.


The program 'convert_undtonetcdf' will convert an ASCII file with UND Citation Aircraft Data Flags and convert it to a time dependant NetCDF file with the following changes.

What is NetCDF?


NetCDF (Network Common Data Form) is an array oriented system of storing and acessing data. Some of the main advantages in using this format are as follows, NetCDF is :

  1. Self describing in that the file includes the necessary information about the data it contains.
  2. Machine independent, different computers that handle data types differently are not effected by the binary NetCDF format.
  3. Backwards compatibility, all new forms of NetCDF will be backwards compatable with current NetCDF formats.
  4. Conventions, a good NetCDF file will share standard convetions for varibables and attributes as decided upon by NCAR.


Header Attributes


Header Conventions For Global Attributes:

ASCII NetCDF Type
ONAME Author String
ORG Organization String
SNAME Source String
MNAME ProjectName String
DATE FlightDate_RevisionDate String
IVOL VolumeNumber Short
NVOL TotalVolumes Short
DX SampledRate String
XNAME FlightStart String
NV NumberVariables Short
NSCOML SpecialCommentLines Short
NNCOML NormalCommentLines Short























Please visit this link for further information on the file header.

Variables: Data & Attributes


All variables contain the basic attributes: units, long_name, and _FillValue (missing_value is being deprecated). The convert_undtonetcdf names of variables in the ASCII files remain the same in the NetCDF file (e.g. Press_Alt in ASCII is still Press_Alt in NetCDF) for short_names only. If applicable a standard_name is given otherwise the short_name is reused. All variables are dependant on time.

Attributes:

short_name: A short descriptive name for a variable which is the same as in the ASCII file.

standard_name: The name used to identify the physical quantity. A standard name contains no whitespace and is case sensitive. Not every variable is required to have a standard_name attribute. We have adopted the CF Conventions use of standard_name where applicable.

long_name: The long_name attribute is defined to contain a long descriptive name which may, for example, be used for labeling plots.

units: The units attribute is required for all variables that represent dimensional quantities and must be given in MKS.

_FillValue: The number assigned to a missing value. Currently -9999.9 of the floating point type.

DataQuality: Attempts to inform the user of the quality of these data. Some values are Bad, Preliminary and Good

SampledRate: States the frequency of data sampling

Example

This is an abridged example of 'ncdump' output on 08_02_06_11_49_53.sau.nc :

netcdf 08_01_06_10_42_46.sau {
dimensions:
       Time = 5510 ;
variables:
       float _FillValue ;
               _FillValue:missing_value_code = -9999.9f ;
       float Air_Temp_n(Time) ;
               Air_Temp_n:short_name = "Air_Temp_n" ;
               Air_Temp_n:standard_name = "Air_Temperature" ;
               Air_Temp_n:long_name = "Air Temperature Corrected for Dynamic Heating based on Nose Pitot Pressure [Kelvin]" ;
               Air_Temp_n:units = "K" ;
               Air_Temp_n:missing_value = -9999.9f ;
               Air_Temp_n:DataQuality = "Preliminary Data" ;
       float MachNo_n(Time) ;
               MachNo_n:short_name = "MachNo_n" ;
               MachNo_n:standard_name = "MachNo_n" ;
               MachNo_n:long_name = "Mach Number based on Nose Pitot Pressure" ;
               MachNo_n:units = "None" ;
               MachNo_n:missing_value = -9999.9f ;
               MachNo_n:DataQuality = "Preliminary Data" ;

// global attributes:  :Author = "David Delene" ;  :Organization = "University of North Dakota" ;  :Source = "King Air 200 Aircraft" ;  :ProjectName = "Saudi Arabia Weather Modification Project" ;  :FlightDate_RevisionDate = "2008 01 06 2008 02 23" ;  :VolumeNumber = 1s ;  :TotalVolumes = 1s ;  :TimeInterval = " 1.0000" ;  :FlightStart = "Time [seconds]; UT seconds from midnight on day aircraft flight started" ;  :NumberVariables = 22s ;  :SpecialCommentLines = 0s ;  :NormalCommentLines = 4s ;  :SampledRate = "1 Hz Data" ; data:
Air_Temp_n = -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, 289.6698, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, 289.6247, 289.7545, ... MachNo_n = -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, 0.0151, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, -9999.9, 0.0172, 0.0217, ...


}