Proposal

Japanese version

Lidar observation results should be provided in real-time using netCDF format. netCDF is a common format in the society of numerical modeling because of its portability and the ability of self-documentation. It is indispensable to provide our observation results in such format so that the data is used widely in the assimilation or validation of the numerical model.
netCDF itself is a kind of binary format and many softwares can handle it directory. However, we can utilize a converter between netCDF-binary and ASCII file written following the established rule.
In our project NIES will convert ASCII file to netCDF-binary. Each observatory please make an ASCII file which is written based on the rules indicated below.

The contents of the files are
  1. One-dimensional array which contains the heights of data points. the Unit is meter. [int]
  2. Strings which describe the height array. [char]
  3. One-dimensional array which contains the observed time. The units is minutes since 0000UT, Jan 1, 2000. [long]
  4. Strings which describe the time array. [char]
  5. Two dimensional (height X time) array of range-corrected signal intensity and two dimensional array of calculated extinction coefficient. [float]
  6. Strings which describe both arrays.[char]
  7. Name of observatory. [char]
  8. Longitude of the observatory. The unit is degree(East). [float]
  9. Latitude of the observatory. The unit is degree(North). [float]
  10. Wavelength of the lidar. The unit is nm. [int]
  11. Strings which describe the data itself (Ex. restriction of usage). [char]
These substance should be written in ( CDL format). Although time resolution and height resolution is depending on the individual observatory, one file can contain the observation results during less than 24 hours.
Below is a part of an example file (1.2MB) which contains the results during 48 hours after 0000JST(=0900UTC), April 23, 2000 at Tsukuba observatory. This file is converted to netCDF and the size is reduced to 386KB. Range-corrected intensity and extinction coefficient is recorded every 15 minutes and at every 30 m.

netcdf lidar {
dimensions:
	alt = 200 ;
	time = 192 ;
variables:
	short alt(alt) ;
		alt:units = "meter" ;
	float time(time) ;
		time:units = "Julian day" ;
	float intensity(time, alt) ;
		intensity:long_name = "backscattering intensity" ;
		intensity:units = "arbitrary" ;
	float extinction(time, alt) ;
		extinction:long_name = "extinction coefficient of aerosols" ;
		extinction:units = "/meter" ;
	short category(time, alt) ;
		category:notation = "-2: no observation, -1: unknown, 0: aerosols, 1: Kosa, 2: water clouds, 3: ice clouds, 4: rain" ;

// global attributes:
		:place = "Tsukuba, Japan" ;
		:longitude = 140.12 ;
		:latitude = 36.05 ;
		:wavelength = 532 ;
		:restriction = "assimilation usage only permitted" ;
data:

 alt = 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390, 420, 
...
    5940, 5970 ;

 time = 112.6256, 112.636, 112.6464, 112.6569, 112.6673, 112.6777, 112.6881, 
...
    114.5947, 114.6051, 114.6156 ;

 intensity =
  1.325462e+07, 9.910081e+07, 1.920126e+09, 1.291436e+10, 3.036079e+10, 
...
    3.338219e+10, 3.167829e+10, 2.9673e+10, 3.40991e+10, 3.19314e+10 ;

 extinction =
  -7.917429e-05, -7.89161e-05, -7.788758e-05, -7.280634e-05, -6.491194e-05, 
...
    1.27686e-06, -8.361724e-07, -3.360532e-06, 2.734163e-06, 0 ;

 category =
  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
...
    0, 0, 0, 0, 0, 0, 0 ;
}

In case of two dimensional arrays, at first whole height profile of the first observation is output followed by height profile of the second one, etc. Finally the last vertical profile is output.
Note the differences among colon(:), semi-colon(;) and comma(,). Use whitespace, tab and newline freely.

shimizua@nies.go.jp
Last modified: Mon Sep 25 17:33:12 JST 2000