[Thread Prev][Thread Next][Index]

MOM4p0 [ferret_users] reading netcdf-files, prepared with ferret



Hi,

I send this mail to the mom4 and ferret list, because there
is a possible incompatibility in the understanding
of netcdf in ferret and mom4 (fms).

Trying to read netcdf-files through the data_override utility I
have found the following:

- ferret is a useful tool to process netcdf-files. Recent
versions add bounds, if axes are non equidistant. This is a nice
feature as far as information on data is kept accurate.

Ferret adds a dimension bnds to the netcdf-file and defines a
double variable like in the example 
        LON = 44 ;
        LAT = 38 ;
        bnds = 2 ;
        TAX = UNLIMITED ; // (1714 currently)
        double LAT(LAT) ;
               LAT:units = "degrees_north" ;
               LAT:point_spacing = "uneven" ;
               LAT:axis = "Y" ;
               LAT:bounds = "LAT_bnds" ;
        double LAT_bnds(LAT, bnds) ;

There is no axis named bnds!

- mom4 tries to read bounds too. However, it expects a complete
axis. In mpp_read_meta the number of dimensions is read and then
axes are allocated:

        allocate(Axis(ndim))
        
However, the axis corresponding to the dimension bnds is not
there and remains unknown. Later in get_axis_bounds, mom4
gets confused. It finds bounds in the attribute
list of one axis and tries to extract the values from a
data structure, which has the type of axis. However,
there is no axis but a field. Mom4 falls back to the default axis
(nothing), gets the axis length -1 which gives an error stop.

Hence, two important codes, Ferret and MOM4 (FMS) make different assumptions
on the "correct" structure of a netcdf File. Please note,
also LAS 6.4 fails with netcdf-files with bounds
from ferret. 

I put this on the two list to draw developers attention to this problem. 

Kind regards,
Martin Schmidt
        

[Thread Prev][Thread Next][Index]

Dept of Commerce / NOAA / OAR / PMEL / TMAP

Contact Us | Privacy Policy | Disclaimer | Accessibility Statement