Hi,
I am trying to read some large part of the GEBCO topography with
ferret. The file does not have axes as usual but start-end-space
definition.
With ncdump one sees
x_range = -60, 50 ;
y_range = -50, 20 ;
z_range = -7861, 5778 ;
spacing = 0.00833333333333333, 0.00833333333333333 ;
dimension = 13200, 8400 ;
So I try to set up a grid from this definition:
define axis/x=`X_RANGE[i=2]`:`X_RANGE[i=1]`:`SPACING[i=2]`/edges
/units="degrees_east" xax
define axis/y=`Y_RANGE[i=2]`:`Y_RANGE[i=1]`:`SPACING[i=1]`/edges
/units="degrees_north" yax
define grid/x=xax/y=yax xygrid
Now to see the result:
say `x[gx=xygrid],return=iend`
!-> MESSAGE/CONTINUE 13201
13201
Hence the resulting axis has wrong size. The same happens for the
y-axis. Mapping topography to this grid gives a strange looking piece
of the earth.
However, the varables x_range and so on are defined as doubles. Why is
this ignored by ferret?
Playing around with the axis definition gives better results:
define axis/x=`X_RANGE[i=1]`:`X_RANGE[i=2]`:`0.0083334`/edges
/units="degrees_east" xax
say `x[gx=xygrid],return=iend`
!-> MESSAGE/CONTINUE 13200
13200
However, I want to process several pieces of the topography and I
would prefer a clean solution: reading data from file and writing the
results without any adjustment of scripts.
Is this possible? What I am doing wrong here?
Greetings,
Martin