[gradsusr] Writing .ctl file

David Stanfel dstanfel at ualberta.ca
Sat Jul 26 19:38:49 EDT 2014


It is GFDL Model data using the Molecular Ocean Model MOM_solo type. This
is for the box1 test case. I did try sdfopen and it came out with the
following error message:

Scanning self-describing file:  19800101.ocean_neutral.nc

SDF Error: 365 day calendars are no longer supported by sdfopen.

  To open this file with GrADS, use a descriptor file with

  a complete TDEF entry and OPTIONS 365_day_calendar.

I do not have any pp data and I don't know how to go about creating the
grid data. How could I do that, putting it into lat, long coordinates?

Thanks,

David


On Fri, Jul 25, 2014 at 2:39 PM, Charles Seman - NOAA Federal <
charles.seman at noaa.gov> wrote:

> David,
>
> This file looks like it's from a GFDL model?  Based on the names of the
> coordinates, and the global attributes "grid_type" and "grid_tile", it
> looks like it is a "history" file which is on the model grid and has yet
> to be regridded to a lat/lon grid.  I'm not a user of the ocean data,
> but am working with a GFDL history data file from the atmospheric model
> on the cubed-sphere model grid tile4.  Be very careful!  The grid
> coordinates xt_ocean and yt_ocean may need to be mapped into actual
> global coordinates.  To get a view of the data, have you tried opening
> the file in GrADS without using a GrADS ctl file?  GrADS is able to open
> and view the tile4 file I'm working with, but one must be aware that the
> map background that GrADS assigns is not physically correct.  Can you
> use post-processed "pp" data (if you have this, it should be in a "pp"
> subdirectory)?  These "pp" data have been put on a physical grid.
> I talked with someone here at GFDL who works with ocean data, and he
> says Ferret is able to open the datasets he works with...
>
> Here's an example of what's in a pp/ocean/ocean.static.nc file.  Note
> how the tracer latitude and longitudes are functions of
> yt_ocean,xt_ocean: geolat_t(yt_ocean,xt_ocean) and
> geolon_t(yt_ocean,xt_ocean).  So the lat and lon are themselves
> functions of grid coordinate variables. Here's an example of
> two-dimensional lat, lon coordinates:
>
> http://cfconventions.org/Data/cf-convetions/cf-conventions-1.6/build/cf-conventions.html#idp5559280
>
> netcdf ocean.static {
>
> dimensions:
>
>          xu_ocean = 360 ;
>
>          yu_ocean = 200 ;
>
>          xt_ocean = 360 ;
>
>          yt_ocean = 200 ;
>
> variables:
>
>          double xt_ocean(xt_ocean) ;
>
>                  xt_ocean:long_name = "tcell longitude" ;
>
>                  xt_ocean:units = "degrees_E" ;
>
>                  xt_ocean:cartesian_axis = "X" ;
>
>          double yt_ocean(yt_ocean) ;
>
>                  yt_ocean:long_name = "tcell latitude" ;
>
>                  yt_ocean:units = "degrees_N" ;
>
>                  yt_ocean:cartesian_axis = "Y" ;
>
>          double xu_ocean(xu_ocean) ;
>
>                  xu_ocean:long_name = "ucell longitude" ;
>
>                  xu_ocean:units = "degrees_E" ;
>
>                  xu_ocean:cartesian_axis = "X" ;
>
>          double yu_ocean(yu_ocean) ;
>
>                  yu_ocean:long_name = "ucell latitude" ;
>
>                  yu_ocean:units = "degrees_N" ;
>
>                  yu_ocean:cartesian_axis = "Y" ;
>
>          float ht(yt_ocean, xt_ocean) ;
>
>                  ht:long_name = "ocean depth on t-cells" ;
>
>                  ht:units = "m" ;
>
>                  ht:valid_range = -1.e+09f, 1.e+09f ;
>
>                  ht:missing_value = -1.e+20f ;
>
>                  ht:_FillValue = -1.e+20f ;
>
>                  ht:cell_methods = "time: point" ;
>
>                  ht:coordinates = "geolon_t geolat_t" ;
>
>                  ht:standard_name = "sea_floor_depth_below_geoid" ;
>
>          float hu(yu_ocean, xu_ocean) ;
>
>                  hu:long_name = "ocean depth on u-cells" ;
>
>                  hu:units = "m" ;
>
>                  hu:valid_range = -1.e+09f, 1.e+09f ;
>
>                  hu:missing_value = -1.e+20f ;
>
>                  hu:_FillValue = -1.e+20f ;
>
>                  hu:cell_methods = "time: point" ;
>
>                  hu:coordinates = "geolon_c geolat_c" ;
>
>          float geolat_c(yu_ocean, xu_ocean) ;
>
>                  geolat_c:long_name = "uv latitude" ;
>
>                  geolat_c:units = "degrees_N" ;
>
>                  geolat_c:valid_range = -91.f, 91.f ;
>
>                  geolat_c:missing_value = 1.e+20f ;
>
>                  geolat_c:_FillValue = 1.e+20f ;
>
>                  geolat_c:cell_methods = "time: point" ;
>
>                  geolat_c:coordinates = "geolon_c geolat_c" ;
>
>          float geolon_c(yu_ocean, xu_ocean) ;
>
>                  geolon_c:long_name = "uv longitude" ;
>
>                  geolon_c:units = "degrees_E" ;
>
>                  geolon_c:valid_range = -281.f, 361.f ;
>
>                  geolon_c:missing_value = 1.e+20f ;
>
>                  geolon_c:_FillValue = 1.e+20f ;
>
>                  geolon_c:cell_methods = "time: point" ;
>
>                  geolon_c:coordinates = "geolon_c geolat_c" ;
>
>          float geolat_t(yt_ocean, xt_ocean) ;
>
>                  geolat_t:long_name = "tracer latitude" ;
>
>                  geolat_t:units = "degrees_N" ;
>
>                  geolat_t:valid_range = -91.f, 91.f ;
>
>                  geolat_t:missing_value = 1.e+20f ;
>
>                  geolat_t:_FillValue = 1.e+20f ;
>
>                  geolat_t:cell_methods = "time: point" ;
>
>                  geolat_t:coordinates = "geolon_t geolat_t" ;
>
>          float geolon_t(yt_ocean, xt_ocean) ;
>
>                  geolon_t:long_name = "tracer longitude" ;
>
>                  geolon_t:units = "degrees_E" ;
>
>                  geolon_t:valid_range = -281.f, 361.f ;
>
>                  geolon_t:missing_value = 1.e+20f ;
>
>                  geolon_t:_FillValue = 1.e+20f ;
>
>                  geolon_t:cell_methods = "time: point" ;
>
>                  geolon_t:coordinates = "geolon_t geolat_t" ;
>
>          float area_t(yt_ocean, xt_ocean) ;
>
>                  area_t:long_name = "tracer cell area" ;
>
>                  area_t:units = "m^2" ;
>
>                  area_t:valid_range = 0.f, 1.e+15f ;
>
>                  area_t:missing_value = 1.e+20f ;
>
>                  area_t:_FillValue = 1.e+20f ;
>
>                  area_t:cell_methods = "time: point" ;
>
>                  area_t:coordinates = "geolon_t geolat_t" ;
>
>          float area_u(yu_ocean, xu_ocean) ;
>
>                  area_u:long_name = "velocity cell area" ;
>
>                  area_u:units = "m^2" ;
>
>                  area_u:valid_range = 0.f, 1.e+15f ;
>
>                  area_u:missing_value = 1.e+20f ;
>
>                  area_u:_FillValue = 1.e+20f ;
>
>                  area_u:cell_methods = "time: point" ;
>
>                  area_u:coordinates = "geolon_c geolat_c" ;
>
>          float kmt(yt_ocean, xt_ocean) ;
>
>                  kmt:long_name = "number of depth levels on t-grid" ;
>
>                  kmt:units = "dimensionless" ;
>
>                  kmt:valid_range = -10.f, 1.e+09f ;
>
>                  kmt:missing_value = -1.e+20f ;
>
>                  kmt:_FillValue = -1.e+20f ;
>
>                  kmt:cell_methods = "time: point" ;
>
>                  kmt:coordinates = "geolon_t geolat_t" ;
>
>          float kmu(yu_ocean, xu_ocean) ;
>
>                  kmu:long_name = "number of depth levels on u-grid" ;
>
>                  kmu:units = "dimensionless" ;
>
>                  kmu:valid_range = -10.f, 1.e+09f ;
>
>                  kmu:missing_value = -1.e+20f ;
>
>                  kmu:_FillValue = -1.e+20f ;
>
>                  kmu:cell_methods = "time: point" ;
>
>                  kmu:coordinates = "geolon_c geolat_c" ;
>
>          float geo_heat(yt_ocean, xt_ocean) ;
>
>                  geo_heat:long_name = "Geothermal heating" ;
>
>                  geo_heat:units = "W/m^2" ;
>
>                  geo_heat:valid_range = -10.f, 1000000.f ;
>
>                  geo_heat:missing_value = -1.e+20f ;
>
>                  geo_heat:_FillValue = -1.e+20f ;
>
>                  geo_heat:cell_methods = "time: point" ;
>
>                  geo_heat:coordinates = "geolon_t geolat_t" ;
>
>                  geo_heat:standard_name =
> "upward_geothermal_heat_flux_at_sea_floor" ;
>
>          float pbot0(yt_ocean, xt_ocean) ;
>
>                  pbot0:long_name = "reference bottom pressure t-cells" ;
>
>                  pbot0:units = "dbar" ;
>
>                  pbot0:valid_range = -1.e+08f, 1.e+08f ;
>                  pbot0:missing_value = -1.e+20f ;
>                  pbot0:_FillValue = -1.e+20f ;
>                  pbot0:cell_methods = "time: point" ;
>                  pbot0:coordinates = "geolon_t geolat_t" ;
>
> // global attributes:
>                  :NCX = "1.1.1" ;
> }
>
> I hope this is helpful.  I don't think I can be of much more help, but
> hope this points you in the right direction.
>
> Chuck
>
> On 07/25/2014 12:26 AM, David Stanfel wrote:
> > Hello,
> >
> > I decided to try a different file. Here is the ncdump -c of said file:
> >
> > dstanfel:bin ninjawarrior343$ ncdump -c 19800101.ocean_neutral.nc
> > <http://19800101.ocean_neutral.nc>
> >
> > netcdf \19800101.ocean_neutral {
> >
> > dimensions:
> >
> > xt_ocean = 24 ;
> >
> > yt_ocean = 35 ;
> >
> > Time = UNLIMITED ; // (1 currently)
> >
> > nv = 2 ;
> >
> > st_ocean = 18 ;
> >
> > st_edges_ocean = 19 ;
> >
> > variables:
> >
> > double xt_ocean(xt_ocean) ;
> >
> > xt_ocean:long_name = "tcell longitude" ;
> >
> > xt_ocean:units = "degrees_E" ;
> >
> > xt_ocean:cartesian_axis = "X" ;
> >
> > double yt_ocean(yt_ocean) ;
> >
> > yt_ocean:long_name = "tcell latitude" ;
> >
> > yt_ocean:units = "degrees_N" ;
> >
> > yt_ocean:cartesian_axis = "Y" ;
> >
> > double Time(Time) ;
> >
> > Time:long_name = "Time" ;
> >
> > Time:units = "days since 1980-01-01 00:00:00" ;
> >
> > Time:cartesian_axis = "T" ;
> >
> > Time:calendar_type = "NOLEAP" ;
> >
> > Time:calendar = "NOLEAP" ;
> >
> > Time:bounds = "Time_bounds" ;
> >
> > double nv(nv) ;
> >
> > nv:long_name = "vertex number" ;
> >
> > nv:units = "none" ;
> >
> > nv:cartesian_axis = "N" ;
> >
> > double st_ocean(st_ocean) ;
> >
> > st_ocean:long_name = "tcell pstar" ;
> >
> > st_ocean:units = "dbars" ;
> >
> > st_ocean:cartesian_axis = "Z" ;
> >
> > st_ocean:positive = "down" ;
> >
> > st_ocean:edges = "st_edges_ocean" ;
> >
> > double st_edges_ocean(st_edges_ocean) ;
> >
> > st_edges_ocean:long_name = "tcell pstar edges" ;
> >
> > st_edges_ocean:units = "dbars" ;
> >
> > st_edges_ocean:cartesian_axis = "Z" ;
> >
> > st_edges_ocean:positive = "down" ;
> >
> > float agm(Time, yt_ocean, xt_ocean) ;
> >
> > agm:long_name = "GM diffusivity at surface" ;
> >
> > agm:units = "m^2/sec" ;
> >
> > agm:valid_range = -10.f, 1.e+10f ;
> >
> > agm:missing_value = -1.e+20f ;
> >
> > agm:_FillValue = -1.e+20f ;
> >
> > agm:cell_methods = "time: mean" ;
> >
> > agm:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> > agm:coordinates = "geolon_t geolat_t" ;
> >
> > agm:standard_name = "ocean_tracer_bolus_laplacian_diffusivity" ;
> >
> > float rossby(Time, yt_ocean, xt_ocean) ;
> >
> > rossby:long_name = "Rossby radius used in neutral physics" ;
> >
> > rossby:units = "m" ;
> >
> > rossby:valid_range = -10.f, 1.e+10f ;
> >
> > rossby:missing_value = -1.e+20f ;
> >
> > rossby:_FillValue = -1.e+20f ;
> >
> > rossby:cell_methods = "time: mean" ;
> >
> > rossby:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> > rossby:coordinates = "geolon_t geolat_t" ;
> >
> > float slope31(Time, st_ocean, yt_ocean, xt_ocean) ;
> >
> > slope31:long_name = "neutral slope -(rho_x/rho_z)" ;
> >
> > slope31:units = "dimensionless" ;
> >
> > slope31:valid_range = -1.e+10f, 1.e+10f ;
> >
> > slope31:missing_value = -1.e+20f ;
> >
> > slope31:_FillValue = -1.e+20f ;
> >
> > slope31:cell_methods = "time: mean" ;
> >
> > slope31:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> > slope31:coordinates = "geolon_t geolat_t" ;
> >
> > float slope32(Time, st_ocean, yt_ocean, xt_ocean) ;
> >
> > slope32:long_name = "neutral slope -(rho_y/rho_z)" ;
> >
> > slope32:units = "dimensionless" ;
> >
> > slope32:valid_range = -1.e+10f, 1.e+10f ;
> >
> > slope32:missing_value = -1.e+20f ;
> >
> > slope32:_FillValue = -1.e+20f ;
> >
> > slope32:cell_methods = "time: mean" ;
> >
> > slope32:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> > slope32:coordinates = "geolon_t geolat_t" ;
> >
> > double average_T1(Time) ;
> >
> > average_T1:long_name = "Start time for average period" ;
> >
> > average_T1:units = "days since 1980-01-01 00:00:00" ;
> >
> > average_T1:missing_value = 1.e+20 ;
> >
> > average_T1:_FillValue = 1.e+20 ;
> >
> > double average_T2(Time) ;
> >
> > average_T2:long_name = "End time for average period" ;
> >
> > average_T2:units = "days since 1980-01-01 00:00:00" ;
> >
> > average_T2:missing_value = 1.e+20 ;
> >
> > average_T2:_FillValue = 1.e+20 ;
> >
> > double average_DT(Time) ;
> >
> > average_DT:long_name = "Length of average period" ;
> >
> > average_DT:units = "days" ;
> >
> > average_DT:missing_value = 1.e+20 ;
> >
> > average_DT:_FillValue = 1.e+20 ;
> >
> > double Time_bounds(Time, nv) ;
> >
> > Time_bounds:long_name = "Time axis boundaries" ;
> >
> > Time_bounds:units = "days" ;
> >
> > Time_bounds:missing_value = 1.e+20 ;
> >
> > Time_bounds:_FillValue = 1.e+20 ;
> >
> >
> > // global attributes:
> >
> > :filename = "ocean_neutral.nc <http://ocean_neutral.nc>" ;
> >
> > :title = "MOM4 box" ;
> >
> > :grid_type = "regular" ;
> >
> > :grid_tile = "N/A" ;
> >
> > data:
> >
> >
> >   xt_ocean = 1.25, 3.75, 6.25, 8.75, 11.25, 13.75, 16.25, 18.75, 21.25,
> > 23.75,
> >
> >      26.25, 28.75, 31.25, 33.75, 36.25, 38.75, 41.25, 43.75, 46.25,
> 48.75,
> >
> >      51.25, 53.75, 56.25, 58.75 ;
> >
> >
> >   yt_ocean = 1.25, 3.7488100528717, 6.2393012046814, 8.71919345855713,
> >
> >      11.1815176010132, 13.6242818832397, 16.0408229827881,
> > 18.4296073913574,
> >
> >      20.784387588501, 23.1042194366455, 25.3833503723145,
> 27.6215190887451,
> >
> >      29.813497543335, 31.9597606658936, 34.0555992126465,
> 36.1022338867188,
> >
> >      38.0954322814941, 40.0371551513672, 41.9235687255859,
> > 43.7573394775391,
> >
> >      45.5349464416504, 47.259708404541, 48.9283294677734,
> 50.5447235107422,
> >
> >      52.1057090759277, 53.6157531738281, 55.0716934204102,
> > 56.4785079956055,
> >
> >      57.8329429626465, 59.1404571533203, 60.3976211547852,
> > 61.6103477478027,
> >
> >      62.7749481201172, 63.8977813720703, 64.9748153686523 ;
> >
> >
> >   Time = 2 ;
> >
> >
> >   nv = 1, 2 ;
> >
> >
> >   st_ocean = 17.75025, 53.25075, 88.75125, 124.25175, 159.75225,
> 195.25275,
> >
> >      230.75325, 266.25375, 314.34159289856, 399.171716592407,
> >
> >      541.922400494385, 759.079548358154, 1061.10117883301,
> > 1451.56990550537,
> >
> >      1926.90292906494, 2476.64250944824, 3084.30280480957,
> > 3728.70522619629 ;
> >
> >
> >   st_edges_ocean = 0, 35.5005, 71.001, 106.5015, 142.002, 177.5025,
> > 213.003,
> >
> >      248.5035, 290.29765597229, 356.756654745483, 470.547043066406,
> >
> >      650.50097442627, 910.090332641602, 1256.33548026123,
> 1689.23641728516,
> >
> >      2201.77290498047, 2780.47265712891, 3406.50401550293,
> 4057.20024763184
> >
> >
> > I wrote a .ctl file:
> >
> >
> > DSET ^19800101.ocean_neutral.nc <http://19800101.ocean_neutral.nc>
> >
> > UNDEF -9.99e8 missing_value
> >
> > DTYPE netcdf
> >
> > CACHESIZE 100000
> >
> > TITLE Sample Model Output
> >
> > XDEF 24 LINEAR  1.25   2.5
> >
> > YDEF 35 levels  1.25, 3.7488100528717, 6.2393012046814, 8.71919345855713,
> >
> >      11.1815176010132, 13.6242818832397, 16.0408229827881,
> > 18.4296073913574,
> >
> >      20.784387588501, 23.1042194366455, 25.3833503723145,
> 27.6215190887451,
> >
> >      29.813497543335, 31.9597606658936, 34.0555992126465,
> 36.1022338867188,
> >
> >      38.0954322814941, 40.0371551513672, 41.9235687255859,
> > 43.7573394775391,
> >
> >      45.5349464416504, 47.259708404541, 48.9283294677734,
> 50.5447235107422,
> >
> >      52.1057090759277, 53.6157531738281, 55.0716934204102,
> > 56.4785079956055,
> >
> >      57.8329429626465, 59.1404571533203, 60.3976211547852,
> > 61.6103477478027,
> >
> >      62.7749481201172, 63.8977813720703, 64.9748153686523
> >
> > ZDEF 18 levels  17.75025, 53.25075, 88.75125, 124.25175, 159.75225,
> > 195.25275, 230.75327, 266.25375, 314.34159289856, 399.171716592407,
> > 541.922400494385, 759.079548358154, 1061.10117883301, 1451.56990550537,
> > 1926.90292906494, 2476.64250944824, 3084.30280480957, 3728.70522619629
> >
> > TDEF 1 LINEAR 01JAN0001 1mo
> >
> > VARS 4
> >
> > agm    0  t,y,x  GM diffusivity at surface (m^2/sec)
> >
> > rossby 0  t,y,x  Rossby radius used in neutral physics (m)
> >
> > slope31 18 t,z,y,x Neutral slope -(rho_x/rho_z)
> >
> > slope32 18 t,z,y,x Neutral slope -(rho_y/rho_z)
> >
> > ENDVARS
> >
> >
> > When trying to display the variables, I get this error:
> >
> >
> > ga-> d agm
> >
> > Cannot contour grid - all undefined values
> >
> > ga-> d rossby
> >
> > Cannot contour grid - all undefined values
> >
> > ga-> d slope31
> >
> > Cannot contour grid - all undefined values
> >
> > ga->
> >
> >
> > What could be going wrong here?
> >
> > Thanks,
> >
> > David
> >
> >
> > On Wed, Jul 23, 2014 at 11:23 AM, David Stanfel <dstanfel at ualberta.ca
> > <mailto:dstanfel at ualberta.ca>> wrote:
> >
> >     Also, how do you determine the CACHESIZE?
> >
> >     Thanks,
> >
> >     David
> >
> >
> >     On Tue, Jul 22, 2014 at 11:05 PM, David Stanfel
> >     <dstanfel at ualberta.ca <mailto:dstanfel at ualberta.ca>> wrote:
> >
> >         Hello,
> >
> >         I just ran a climate model which produced some .nc files. I am
> >         having trouble writing the .ctl file to read said .nc files.
> >         Here is the ncdump -c for one of the files I am trying to read:
> >
> >         dstanfel:bin ninjawarrior343$ ncdump -c 19800101.ocean_layer.nc
> >         <http://19800101.ocean_layer.nc>
> >
> >         netcdf \19800101.ocean_layer {
> >
> >         dimensions:
> >
> >         grid_xt_ocean = 24 ;
> >
> >         grid_yt_ocean = 35 ;
> >
> >         theta = 100 ;
> >
> >         theta_edges = 101 ;
> >
> >         Time = UNLIMITED ; // (1 currently)
> >
> >         nv = 2 ;
> >
> >         xt_ocean = 24 ;
> >
> >         yt_ocean = 35 ;
> >
> >         st_ocean = 18 ;
> >
> >         st_edges_ocean = 19 ;
> >
> >         potrho = 100 ;
> >
> >         potrho_edges = 101 ;
> >
> >         variables:
> >
> >         double grid_xt_ocean(grid_xt_ocean) ;
> >
> >         grid_xt_ocean:long_name = "tcell longitude" ;
> >
> >         grid_xt_ocean:units = "degrees_E" ;
> >
> >         grid_xt_ocean:cartesian_axis = "X" ;
> >
> >         double grid_yt_ocean(grid_yt_ocean) ;
> >
> >         grid_yt_ocean:long_name = "tcell latitude" ;
> >
> >         grid_yt_ocean:units = "degrees_N" ;
> >
> >         grid_yt_ocean:cartesian_axis = "Y" ;
> >
> >         double theta(theta) ;
> >
> >         theta:long_name = "potential or conservative temperature" ;
> >
> >         theta:units = "C" ;
> >
> >         theta:cartesian_axis = "Z" ;
> >
> >         theta:positive = "up" ;
> >
> >         theta:edges = "theta_edges" ;
> >
> >         double theta_edges(theta_edges) ;
> >
> >         theta_edges:long_name = "potential or conservative temperature
> >         edges" ;
> >
> >         theta_edges:units = "C" ;
> >
> >         theta_edges:cartesian_axis = "Z" ;
> >
> >         theta_edges:positive = "up" ;
> >
> >         double Time(Time) ;
> >
> >         Time:long_name = "Time" ;
> >
> >         Time:units = "days since 1980-01-01 00:00:00" ;
> >
> >         Time:cartesian_axis = "T" ;
> >
> >         Time:calendar_type = "NOLEAP" ;
> >
> >         Time:calendar = "NOLEAP" ;
> >
> >         Time:bounds = "Time_bounds" ;
> >
> >         double nv(nv) ;
> >
> >         nv:long_name = "vertex number" ;
> >
> >         nv:units = "none" ;
> >
> >         nv:cartesian_axis = "N" ;
> >
> >         double xt_ocean(xt_ocean) ;
> >
> >         xt_ocean:long_name = "tcell longitude" ;
> >
> >         xt_ocean:units = "degrees_E" ;
> >
> >         xt_ocean:cartesian_axis = "X" ;
> >
> >         double yt_ocean(yt_ocean) ;
> >
> >         yt_ocean:long_name = "tcell latitude" ;
> >
> >         yt_ocean:units = "degrees_N" ;
> >
> >         yt_ocean:cartesian_axis = "Y" ;
> >
> >         double st_ocean(st_ocean) ;
> >
> >         st_ocean:long_name = "tcell pstar" ;
> >
> >         st_ocean:units = "dbars" ;
> >
> >         st_ocean:cartesian_axis = "Z" ;
> >
> >         st_ocean:positive = "down" ;
> >
> >         st_ocean:edges = "st_edges_ocean" ;
> >
> >         double st_edges_ocean(st_edges_ocean) ;
> >
> >         st_edges_ocean:long_name = "tcell pstar edges" ;
> >
> >         st_edges_ocean:units = "dbars" ;
> >
> >         st_edges_ocean:cartesian_axis = "Z" ;
> >
> >         st_edges_ocean:positive = "down" ;
> >
> >         double potrho(potrho) ;
> >
> >         potrho:long_name = "potential density" ;
> >
> >         potrho:units = "kg/m^3" ;
> >
> >         potrho:cartesian_axis = "Z" ;
> >
> >         potrho:positive = "down" ;
> >
> >         potrho:edges = "potrho_edges" ;
> >
> >         double potrho_edges(potrho_edges) ;
> >
> >         potrho_edges:long_name = "potential density edges" ;
> >
> >         potrho_edges:units = "kg/m^3" ;
> >
> >         potrho_edges:cartesian_axis = "Z" ;
> >
> >         potrho_edges:positive = "down" ;
> >
> >         float depth_of_theta(Time, theta, grid_yt_ocean, grid_xt_ocean) ;
> >
> >         depth_of_theta:long_name = "depth of potential temp surface" ;
> >
> >         depth_of_theta:units = "m" ;
> >
> >         depth_of_theta:valid_range = 0.f, 1.e+10f ;
> >
> >         depth_of_theta:missing_value = -1.e+20f ;
> >
> >         depth_of_theta:_FillValue = -1.e+20f ;
> >
> >         depth_of_theta:cell_methods = "time: mean" ;
> >
> >         depth_of_theta:time_avg_info =
> "average_T1,average_T2,average_DT" ;
> >
> >         float rho(Time, st_ocean, yt_ocean, xt_ocean) ;
> >
> >         rho:long_name = "in situ density" ;
> >
> >         rho:units = "kg/m^3" ;
> >
> >         rho:valid_range = -10.f, 100000.f ;
> >
> >         rho:missing_value = -1.e+20f ;
> >
> >         rho:_FillValue = -1.e+20f ;
> >
> >         rho:cell_methods = "time: mean" ;
> >
> >         rho:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> >         rho:coordinates = "geolon_t geolat_t" ;
> >
> >         float neutral_rho(Time, st_ocean, yt_ocean, xt_ocean) ;
> >
> >         neutral_rho:long_name = "potential density estimate of neutral
> >         density" ;
> >
> >         neutral_rho:units = "kg/m^3" ;
> >
> >         neutral_rho:valid_range = -10.f, 100000.f ;
> >
> >         neutral_rho:missing_value = -1.e+20f ;
> >
> >         neutral_rho:_FillValue = -1.e+20f ;
> >
> >         neutral_rho:cell_methods = "time: mean" ;
> >
> >         neutral_rho:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> >         neutral_rho:coordinates = "geolon_t geolat_t" ;
> >
> >         float pot_rho_0(Time, st_ocean, yt_ocean, xt_ocean) ;
> >
> >         pot_rho_0:long_name = "potential density referenced to 0 dbar" ;
> >
> >         pot_rho_0:units = "kg/m^3" ;
> >
> >         pot_rho_0:valid_range = -10.f, 100000.f ;
> >
> >         pot_rho_0:missing_value = -1.e+20f ;
> >
> >         pot_rho_0:_FillValue = -1.e+20f ;
> >
> >         pot_rho_0:cell_methods = "time: mean" ;
> >
> >         pot_rho_0:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> >         pot_rho_0:coordinates = "geolon_t geolat_t" ;
> >
> >         pot_rho_0:standard_name = "sea_water_potential_density" ;
> >
> >         float salt_on_rho(Time, potrho, grid_yt_ocean, grid_xt_ocean) ;
> >
> >         salt_on_rho:long_name = "salt on potential density surface" ;
> >
> >         salt_on_rho:units = "psu" ;
> >
> >         salt_on_rho:valid_range = 0.f, 1000.f ;
> >
> >         salt_on_rho:missing_value = -1.e+20f ;
> >
> >         salt_on_rho:_FillValue = -1.e+20f ;
> >
> >         salt_on_rho:cell_methods = "time: mean" ;
> >
> >         salt_on_rho:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> >         float potrho_mix_depth(Time, yt_ocean, xt_ocean) ;
> >
> >         potrho_mix_depth:long_name = "Depth of potential density mixed
> >         layer" ;
> >
> >         potrho_mix_depth:units = "m" ;
> >
> >         potrho_mix_depth:valid_range = -1000000.f, 1000000.f ;
> >
> >         potrho_mix_depth:missing_value = -1.e+20f ;
> >
> >         potrho_mix_depth:_FillValue = -1.e+20f ;
> >
> >         potrho_mix_depth:cell_methods = "time: mean" ;
> >
> >         potrho_mix_depth:time_avg_info =
> >         "average_T1,average_T2,average_DT" ;
> >
> >         potrho_mix_depth:coordinates = "geolon_t geolat_t" ;
> >
> >         float potrho_mix_base(Time, yt_ocean, xt_ocean) ;
> >
> >         potrho_mix_base:long_name = "Potential density at mixed layer
> >         base" ;
> >
> >         potrho_mix_base:units = "kg/m^3" ;
> >
> >         potrho_mix_base:valid_range = -1000000.f, 1000000.f ;
> >
> >         potrho_mix_base:missing_value = -1.e+20f ;
> >
> >         potrho_mix_base:_FillValue = -1.e+20f ;
> >
> >         potrho_mix_base:cell_methods = "time: mean" ;
> >
> >         potrho_mix_base:time_avg_info =
> "average_T1,average_T2,average_DT" ;
> >
> >         potrho_mix_base:coordinates = "geolon_t geolat_t" ;
> >
> >         float press(Time, st_ocean, yt_ocean, xt_ocean) ;
> >
> >         press:long_name = "absolute pressure" ;
> >
> >         press:units = "dbar" ;
> >
> >         press:valid_range = -10.f, 1000000.f ;
> >
> >         press:missing_value = -1.e+20f ;
> >
> >         press:_FillValue = -1.e+20f ;
> >
> >         press:cell_methods = "time: mean" ;
> >
> >         press:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> >         press:coordinates = "geolon_t geolat_t" ;
> >
> >         float mld(Time, yt_ocean, xt_ocean) ;
> >
> >         mld:long_name = "mixed layer depth determined by density
> criteria" ;
> >
> >         mld:units = "m" ;
> >
> >         mld:valid_range = 0.f, 1000000.f ;
> >
> >         mld:missing_value = -1.e+20f ;
> >
> >         mld:_FillValue = -1.e+20f ;
> >
> >         mld:cell_methods = "time: mean" ;
> >
> >         mld:time_avg_info = "average_T1,average_T2,average_DT" ;
> >
> >         mld:coordinates = "geolon_t geolat_t" ;
> >
> >         mld:standard_name =
> >         "ocean_mixed_layer_thickness_defined_by_sigma_t" ;
> >
> >         double average_T1(Time) ;
> >
> >         average_T1:long_name = "Start time for average period" ;
> >
> >         average_T1:units = "days since 1980-01-01 00:00:00" ;
> >
> >         average_T1:missing_value = 1.e+20 ;
> >
> >         average_T1:_FillValue = 1.e+20 ;
> >
> >         double average_T2(Time) ;
> >
> >         average_T2:long_name = "End time for average period" ;
> >
> >         average_T2:units = "days since 1980-01-01 00:00:00" ;
> >
> >         average_T2:missing_value = 1.e+20 ;
> >
> >         average_T2:_FillValue = 1.e+20 ;
> >
> >         double average_DT(Time) ;
> >
> >         average_DT:long_name = "Length of average period" ;
> >
> >         average_DT:units = "days" ;
> >
> >         average_DT:missing_value = 1.e+20 ;
> >
> >         average_DT:_FillValue = 1.e+20 ;
> >
> >         double Time_bounds(Time, nv) ;
> >
> >         Time_bounds:long_name = "Time axis boundaries" ;
> >
> >         Time_bounds:units = "days" ;
> >
> >         Time_bounds:missing_value = 1.e+20 ;
> >
> >         Time_bounds:_FillValue = 1.e+20 ;
> >
> >
> >         // global attributes:
> >
> >         :filename = "ocean_layer.nc <http://ocean_layer.nc>" ;
> >
> >         :title = "MOM4 box" ;
> >
> >         :grid_type = "regular" ;
> >
> >         :grid_tile = "N/A" ;
> >
> >         data:
> >
> >
> >           grid_xt_ocean = 1.25, 3.75, 6.25, 8.75, 11.25, 13.75, 16.25,
> >         18.75, 21.25,
> >
> >              23.75, 26.25, 28.75, 31.25, 33.75, 36.25, 38.75, 41.25,
> >         43.75, 46.25,
> >
> >              48.75, 51.25, 53.75, 56.25, 58.75 ;
> >
> >
> >           grid_yt_ocean = 1.25, 3.7488100528717, 6.2393012046814,
> >         8.71919345855713,
> >
> >              11.1815176010132, 13.6242818832397, 16.0408229827881,
> >         18.4296073913574,
> >
> >              20.784387588501, 23.1042194366455, 25.3833503723145,
> >         27.6215190887451,
> >
> >              29.813497543335, 31.9597606658936, 34.0555992126465,
> >         36.1022338867188,
> >
> >              38.0954322814941, 40.0371551513672, 41.9235687255859,
> >         43.7573394775391,
> >
> >              45.5349464416504, 47.259708404541, 48.9283294677734,
> >         50.5447235107422,
> >
> >              52.1057090759277, 53.6157531738281, 55.0716934204102,
> >         56.4785079956055,
> >
> >              57.8329429626465, 59.1404571533203, 60.3976211547852,
> >         61.6103477478027,
> >
> >              62.7749481201172, 63.8977813720703, 64.9748153686523 ;
> >
> >
> >           theta = -1.84, -1.52, -1.2, -0.88, -0.56, -0.24,
> >         0.0800000000000003, 0.4,
> >
> >              0.72, 1.04, 1.36, 1.68, 2, 2.32, 2.64, 2.96, 3.28, 3.6,
> >         3.92, 4.24, 4.56,
> >
> >              4.88, 5.2, 5.52, 5.84, 6.16, 6.48, 6.8, 7.12, 7.44, 7.76,
> >         8.08, 8.4,
> >
> >              8.72, 9.04, 9.36, 9.68000000000001, 10, 10.32, 10.64,
> >         10.96, 11.28, 11.6,
> >
> >              11.92, 12.24, 12.56, 12.88, 13.2, 13.52, 13.84, 14.16,
> >         14.48, 14.8,
> >
> >              15.12, 15.44, 15.76, 16.08, 16.4, 16.72, 17.04, 17.36,
> >         17.68, 18, 18.32,
> >
> >              18.64, 18.96, 19.28, 19.6, 19.92, 20.24, 20.56, 20.88,
> >         21.2, 21.52,
> >
> >              21.84, 22.16, 22.48, 22.8, 23.12, 23.44, 23.76, 24.08,
> >         24.4, 24.72,
> >
> >              25.04, 25.36, 25.68, 26, 26.32, 26.64, 26.96, 27.28, 27.6,
> >         27.92, 28.24,
> >
> >              28.56, 28.88, 29.2, 29.52, 29.84 ;
> >
> >
> >           theta_edges = 1028, 1028.1, 1028.2, 1028.3, 1028.4, 1028.5,
> >         1028.6, 1028.7,
> >
> >              1028.8, 1028.9, 1029, 1029.1, 1029.2, 1029.3, 1029.4,
> >         1029.5, 1029.6,
> >
> >              1029.7, 1029.8, 1029.9, 1030, 1030.1, 1030.2, 1030.3,
> >         1030.4, 1030.5,
> >
> >              1030.6, 1030.7, 1030.8, 1030.9, 1031, 1031.1, 1031.2,
> >         1031.3, 1031.4,
> >
> >              1031.5, 1031.6, 1031.7, 1031.8, 1031.9, 1032, 1032.1,
> >         1032.2, 1032.3,
> >
> >              1032.4, 1032.5, 1032.6, 1032.7, 1032.8, 1032.9, 1033,
> >         1033.1, 1033.2,
> >
> >              1033.3, 1033.4, 1033.49999999999, 1033.59999999999,
> >         1033.69999999999,
> >
> >              1033.79999999999, 1033.89999999999, 1033.99999999999,
> >         1034.09999999999,
> >
> >              1034.19999999999, 1034.29999999999, 1034.39999999999,
> >         1034.49999999999,
> >
> >              1034.59999999999, 1034.69999999999, 1034.79999999999,
> >         1034.89999999999,
> >
> >              1034.99999999999, 1035.09999999999, 1035.19999999999,
> >         1035.29999999999,
> >
> >              1035.39999999999, 1035.49999999999, 1035.59999999999,
> >         1035.69999999999,
> >
> >              1035.79999999999, 1035.89999999999, 1035.99999999999,
> >         1036.09999999999,
> >
> >              1036.19999999999, 1036.29999999999, 1036.39999999999,
> >         1036.49999999999,
> >
> >              1036.59999999999, 1036.69999999999, 1036.79999999999,
> >         1036.89999999999,
> >
> >              1036.99999999999, 1037.09999999999, 1037.19999999999,
> >         1037.29999999999,
> >
> >              1037.39999999999, 1037.49999999999, 1037.59999999999,
> >         1037.69999999999,
> >
> >              1037.79999999999, 1037.89999999999, 1037.99999999999 ;
> >
> >
> >           Time = 2 ;
> >
> >
> >           nv = 1, 2 ;
> >
> >
> >           xt_ocean = 1.25, 3.75, 6.25, 8.75, 11.25, 13.75, 16.25, 18.75,
> >         21.25, 23.75,
> >
> >              26.25, 28.75, 31.25, 33.75, 36.25, 38.75, 41.25, 43.75,
> >         46.25, 48.75,
> >
> >              51.25, 53.75, 56.25, 58.75 ;
> >
> >
> >           yt_ocean = 1.25, 3.7488100528717, 6.2393012046814,
> >         8.71919345855713,
> >
> >              11.1815176010132, 13.6242818832397, 16.0408229827881,
> >         18.4296073913574,
> >
> >              20.784387588501, 23.1042194366455, 25.3833503723145,
> >         27.6215190887451,
> >
> >              29.813497543335, 31.9597606658936, 34.0555992126465,
> >         36.1022338867188,
> >
> >              38.0954322814941, 40.0371551513672, 41.9235687255859,
> >         43.7573394775391,
> >
> >              45.5349464416504, 47.259708404541, 48.9283294677734,
> >         50.5447235107422,
> >
> >              52.1057090759277, 53.6157531738281, 55.0716934204102,
> >         56.4785079956055,
> >
> >              57.8329429626465, 59.1404571533203, 60.3976211547852,
> >         61.6103477478027,
> >
> >              62.7749481201172, 63.8977813720703, 64.9748153686523 ;
> >
> >
> >           st_ocean = 17.75025, 53.25075, 88.75125, 124.25175, 159.75225,
> >         195.25275,
> >
> >              230.75325, 266.25375, 314.34159289856, 399.171716592407,
> >
> >              541.922400494385, 759.079548358154, 1061.10117883301,
> >         1451.56990550537,
> >
> >              1926.90292906494, 2476.64250944824, 3084.30280480957,
> >         3728.70522619629 ;
> >
> >
> >           st_edges_ocean = 0, 35.5005, 71.001, 106.5015, 142.002,
> >         177.5025, 213.003,
> >
> >              248.5035, 290.29765597229, 356.756654745483,
> 470.547043066406,
> >
> >              650.50097442627, 910.090332641602, 1256.33548026123,
> >         1689.23641728516,
> >
> >              2201.77290498047, 2780.47265712891, 3406.50401550293,
> >         4057.20024763184 ;
> >
> >
> >           potrho = 1028.05, 1028.15, 1028.25, 1028.35, 1028.45, 1028.55,
> >         1028.65,
> >
> >              1028.75, 1028.85, 1028.95, 1029.05, 1029.15, 1029.25,
> >         1029.35, 1029.45,
> >
> >              1029.55, 1029.65, 1029.75, 1029.85, 1029.95, 1030.05,
> >         1030.15, 1030.25,
> >
> >              1030.35, 1030.45, 1030.55, 1030.65, 1030.75, 1030.85,
> >         1030.95, 1031.05,
> >
> >              1031.15, 1031.25, 1031.35, 1031.45, 1031.55, 1031.65,
> >         1031.75, 1031.85,
> >
> >              1031.95, 1032.05, 1032.15, 1032.25, 1032.35, 1032.45,
> >         1032.55, 1032.65,
> >
> >              1032.75, 1032.85, 1032.95, 1033.05, 1033.15, 1033.25,
> >         1033.35, 1033.45,
> >
> >              1033.54999999999, 1033.64999999999, 1033.74999999999,
> >         1033.84999999999,
> >
> >              1033.94999999999, 1034.04999999999, 1034.14999999999,
> >         1034.24999999999,
> >
> >              1034.34999999999, 1034.44999999999, 1034.54999999999,
> >         1034.64999999999,
> >
> >              1034.74999999999, 1034.84999999999, 1034.94999999999,
> >         1035.04999999999,
> >
> >              1035.14999999999, 1035.24999999999, 1035.34999999999,
> >         1035.44999999999,
> >
> >              1035.54999999999, 1035.64999999999, 1035.74999999999,
> >         1035.84999999999,
> >
> >              1035.94999999999, 1036.04999999999, 1036.14999999999,
> >         1036.24999999999,
> >
> >              1036.34999999999, 1036.44999999999, 1036.54999999999,
> >         1036.64999999999,
> >
> >              1036.74999999999, 1036.84999999999, 1036.94999999999,
> >         1037.04999999999,
> >
> >              1037.14999999999, 1037.24999999999, 1037.34999999999,
> >         1037.44999999999,
> >
> >              1037.54999999999, 1037.64999999999, 1037.74999999999,
> >         1037.84999999999,
> >
> >              1037.94999999999 ;
> >
> >
> >           potrho_edges = 1028, 1028.1, 1028.2, 1028.3, 1028.4, 1028.5,
> >         1028.6, 1028.7,
> >
> >              1028.8, 1028.9, 1029, 1029.1, 1029.2, 1029.3, 1029.4,
> >         1029.5, 1029.6,
> >
> >              1029.7, 1029.8, 1029.9, 1030, 1030.1, 1030.2, 1030.3,
> >         1030.4, 1030.5,
> >
> >              1030.6, 1030.7, 1030.8, 1030.9, 1031, 1031.1, 1031.2,
> >         1031.3, 1031.4,
> >
> >              1031.5, 1031.6, 1031.7, 1031.8, 1031.9, 1032, 1032.1,
> >         1032.2, 1032.3,
> >
> >              1032.4, 1032.5, 1032.6, 1032.7, 1032.8, 1032.9, 1033,
> >         1033.1, 1033.2,
> >
> >              1033.3, 1033.4, 1033.49999999999, 1033.59999999999,
> >         1033.69999999999,
> >
> >              1033.79999999999, 1033.89999999999, 1033.99999999999,
> >         1034.09999999999,
> >
> >              1034.19999999999, 1034.29999999999, 1034.39999999999,
> >         1034.49999999999,
> >
> >              1034.59999999999, 1034.69999999999, 1034.79999999999,
> >         1034.89999999999,
> >
> >              1034.99999999999, 1035.09999999999, 1035.19999999999,
> >         1035.29999999999,
> >
> >              1035.39999999999, 1035.49999999999, 1035.59999999999,
> >         1035.69999999999,
> >
> >              1035.79999999999, 1035.89999999999, 1035.99999999999,
> >         1036.09999999999,
> >
> >              1036.19999999999, 1036.29999999999, 1036.39999999999,
> >         1036.49999999999,
> >
> >              1036.59999999999, 1036.69999999999, 1036.79999999999,
> >         1036.89999999999,
> >
> >              1036.99999999999, 1037.09999999999, 1037.19999999999,
> >         1037.29999999999,
> >
> >              1037.39999999999, 1037.49999999999, 1037.59999999999,
> >         1037.69999999999,
> >
> >              1037.79999999999, 1037.89999999999, 1037.99999999999 ;
> >
> >         }
> >
> >
> >         I am having trouble deciding which will be the xdef, ydef, zdef,
> >         and tdef values. Also, how do I find what UNDEF number to use.
> >         Your help will be greatly appreciated.
> >
> >         Thanks,
> >
> >         David
> >
> >
> >
> >
> >
> > _______________________________________________
> > gradsusr mailing list
> > gradsusr at gradsusr.org
> > http://gradsusr.org/mailman/listinfo/gradsusr
> >
>
> --
>
> Please note that Charles.Seman at noaa.gov should be considered my NOAA
> email address, not cjs at gfdl.noaa.gov.
>
> ********************************************************************
>   Charles Seman                                Charles.Seman at noaa.gov
>   U.S. Department of Commerce / NOAA / OAR
>   Geophysical Fluid Dynamics Laboratory         voice: (609) 452-6547
>   201 Forrestal Road                              fax: (609) 987-5063
>   Princeton, NJ  08540-6649            http://www.gfdl.noaa.gov/~cjs/
> ********************************************************************
>
> "The contents of this message are mine personally and do not reflect any
> official or unofficial position of the United States Federal Government,
> the United States Department of Commerce, or NOAA."
> _______________________________________________
> gradsusr mailing list
> gradsusr at gradsusr.org
> http://gradsusr.org/mailman/listinfo/gradsusr
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://gradsusr.org/pipermail/gradsusr/attachments/20140726/5e540eac/attachment-0001.html 


More information about the gradsusr mailing list