[Thread Prev][Thread Next][Index]

Re: [las_users] addXML.sh no time axis



Jörg,


The job addXML has to do includes translating information about the time extents in the file into information that can be used to create user interface menus that allow users to select which time step or range they want to use in LAS. In order to that it has to know the units of the time axis: TIME_UNIT since TIME_ORIGIN.

For example:

double time(time) ;
time:units = "hours since 1970-01-01 00:00:00" ;


Without this addXML cannot determine which coordinate variable is the time axis and wouldn't know what to do with it even if it found it.

You can add some units to the time coordinate variable (even if you just make something up) with ncatted or by creating an NCML file.

If you use some made up units, you can edit the resulting XML by hand to specify what the time axis should look like.

Roland

Joerg Franke wrote:
Hi,
first thanks for your quick answer.
OPeNDAP is not possible and the file is quite big, therefore I send my
ncdump first.

ncdump -h data.nc
netcdf data {
dimensions:
time = UNLIMITED ; // (50 currently)
zt = 19 ;
yt = 100 ;
xt = 100 ;
variables:
double time(time) ;
float dic(time, zt, yt, xt) ;
dic:valid_range = -1.f, 100.f ;
dic:fill_value = 9.96921e+36f ;
dic:long_name = "dissolved inorganic carbon" ;
dic:units = "mol m-3" ;
float dic14(time, zt, yt, xt) ;
dic14:valid_range = -1.f, 100.f ;
dic14:fill_value = 9.96921e+36f ;
dic14:long_name = "dissolved inorganic C14" ;
dic14:units = "mol m-3" ;
float tlat(yt, xt) ;
tlat:valid_range = -1000000.f, 1000000.f ;
tlat:fill_value = 9.96921e+36f ;
tlat:long_name = "tracer grid latitude" ;
tlat:standard_name = "latitude" ;
tlat:units = "degrees" ;
float tlon(yt, xt) ;
tlon:valid_range = -1000000.f, 1000000.f ;
tlon:fill_value = 9.96921e+36f ;
tlon:long_name = "tracer grid longitude" ;
tlon:standard_name = "longitude" ;
tlon:units = "degrees" ;
double xt(xt) ;
xt:fill_value = 9.96920996838687e+36 ;
xt:axis = "X" ;
xt:edges = "xt_edges" ;
xt:long_name = "longitude of the t grid" ;
xt:standard_name = "grid_longitude" ;
xt:units = "degrees_east" ;
float year(time) ;
year:fill_value = 9.96921e+36f ;
year:long_name = "year" ;
double yt(yt) ;
yt:fill_value = 9.96920996838687e+36 ;
yt:axis = "Y" ;
yt:edges = "yt_edges" ;
yt:long_name = "latitude of the t grid" ;
yt:standard_name = "grid_latitude" ;
yt:units = "degrees_north" ;
double zt(zt) ;
zt:fill_value = 9.96920996838687e+36 ;
zt:axis = "Z" ;
zt:edges = "zt_edges" ;
zt:long_name = "depth of the t grid" ;
zt:standard_name = "depth" ;
zt:units = "m" ;

A grep time on ncdump without -h option shows also the variable:
ncdump data.nc | grep -A10 time
...
time = 30.011, 30.111, 30.211, 30.311, 30.411, 30.511, 30.611, 30.711,
30.811, 30.911, 31.011, 31.111, 31.211, 31.311, 31.411, 31.511, 31.611,
31.711, 31.811, 31.911, 32.011, 32.111, 32.211, 32.311, 32.411, 32.511,
32.611, 32.711, 32.811, 32.911, 33.011, 33.111, 33.211, 33.311, 33.411,
33.511, 33.611, 33.711, 33.811, 33.911, 34.011, 34.111, 34.211, 34.311,
34.411, 34.511, 34.611, 34.711, 34.811, 34.911 ;
...

If this does not help I will shrink the file using nc tools.
Thanks for your help
Jörg





Roland Schweitzer wrote:

Jörg,

The mere existence of a coordinate variable in the record dimension
with the name "time" is not enough for the software to recognize it as
the time dimension. How the time data is encoded and the metadata
associated with that variable determines if addXML can recognize the
time dimension.

As a first step, sending the entire ncdump -h output would be
helpful. Better still would be if the file in question is available
via an OPeNDAP server send the URL and I will run addXML under the
debugger to see what's going on. Finally, if neither of those options
work and the file is not too big, send it directly to me and I'll take
a look.

Roland
--

Joerg Franke wrote:

Hi,

I try to create a data.xml with
/srv/www/las/bin/addXML.sh -n /srv/www/las/data/data.nc -x
/srv/www/las/xml/perl/template.xml/ data.xml
and recieve the message:
No time axis
No time axis
but when I do a ncdump on my data.nc the time axis looks correct in
my eyes.

ncdump -h data.nc
netcdf data {
dimensions:
time = UNLIMITED ; // (50 currently)
zt = 19 ;
yt = 100 ;
xt = 100 ;
variables:
...

Thanks for any solution.
Cheers
Jörg






[Thread Prev][Thread Next][Index]

Dept of Commerce / NOAA / OAR / PMEL / TMAP
Contact Us | Privacy Policy | Disclaimer | Accessibility Statement