[ncl-talk] some issue with netCDF writing

Mary Haley haley at ucar.edu
Fri Sep 1 08:16:47 MDT 2017


Hi Beáta,

Panoply is not developed by us. I suggest you contact the panoply
developer, whose name and email can be found on this page:

https://www.giss.nasa.gov/tools/panoply/

For the record, I was able to open a rotated pole file with panoply, using
a file that looks very similar to the one Guido and Karin pointed out. My
file has this information on it. Note that one minor change, which may or
may not be significant, is that the "rotated_pole" variable is a character
and not an int:

      double rlon ( rlon )
         standard_name : grid_longitude
         long_name : longitude in rotated pole grid
         units : degrees
         axis : X

      double rlat ( rlat )
         standard_name : grid_latitude
         long_name : latitude in rotated pole grid
         units : degrees
         axis : Y

      character rotated_pole ( ncl_scalar )
         grid_mapping_name : rotated_latitude_longitude
         grid_north_pole_latitude : 6.55
         grid_north_pole_longitude :   0

--Mary


On Fri, Sep 1, 2017 at 3:24 AM, Beáta Szabó-Takács <szabo.b at czechglobe.cz>
wrote:

> Hi Karin,
>
> Sorry the misundersting. I renamed the rotated pole name as you suggested,
> but Panoply still get the same error:
>
> ncdump -h evtH_31.nc
>
> netcdf evtH_31 {
>
> dimensions:
>
>         time = 364 ;
>
>         rlat = 412 ;
>
>         rlon = 424 ;
>
>         vertices = 4 ;
>
>         bnds = 2 ;
>
> variables:
>
>         float evtH(time, rlat, rlon) ;
>
>                 evtH:_FillValue = 1.e+20f ;
>
>                 evtH:long_name = "reference evapotranspiration: Hargreaves
> " ;
>
>                 evtH:units = "mm/day" ;
>
>                 evtH:url = "http://www.fao.org/docrep/X0490E/x0490e07.htm"
> ;
>
>                 evtH:info = "FAO 56; EQN 52; refevt_hargreaves_fao56" ;
>
>         float lat(rlat, rlon) ;
>
>                 lat:standard_name = "latitude" ;
>
>                 lat:long_name = "latitude" ;
>
>                 lat:units = "degrees_north" ;
>
>                 lat:_CoordinateAxisType = "Lat" ;
>
>                 lat:bounds = "lat_bnds" ;
>
>         double rlat(rlat) ;
>
>                 rlat:standard_name = "grid_latitude" ;
>
>                 rlat:long_name = "latitude in rotated pole grid" ;
>
>                 rlat:units = "degrees" ;
>
>                 rlat:axis = "Y" ;
>
>         double rlon(rlon) ;
>
>                 rlon:standard_name = "grid_longitude" ;
>
>                 rlon:long_name = "longitude in rotated pole grid" ;
>
>                 rlon:units = "degrees" ;
>
>                 rlon:axis = "X" ;
>
>         float lat_bnds(rlat, rlon, vertices) ;
>
>         float lon(rlat, rlon) ;
>
>                 lon:standard_name = "longitude" ;
>
>                 lon:long_name = "longitude" ;
>
>                 lon:units = "degrees_east" ;
>
>                 lon:_CoordinateAxisType = "Lon" ;
>
>                 lon:bounds = "lon_bnds" ;
>
>         float lon_bnds(rlat, rlon, vertices) ;
>
>         int rotated_pole ;
>
>                 rotated_pole:grid_mapping_name =
> "rotated_latitude_longitude" ;
>
>                 rotated_pole:grid_north_pole_latitude = 39.25 ;
>
>                 rotated_pole:grid_north_pole_longitude = -162. ;
>
>                 rotated_pole:north_pole_grid_longitude = 0. ;
>
>         double time(time) ;
>
>                 time:standard_name = "time" ;
>
>                 time:long_name = "time" ;
>
>                 time:bounds = "time_bnds" ;
>
>                 time:units = "days since 1949-12-1 00:00:00" ;
>
>                 time:calendar = "proleptic_gregorian" ;
>
>                 time:axis = "T" ;
>
>         double time_bnds(time, bnds) ;
>
> }
>
>
>
> Bye,
>
> Beáta
>
>
>
> *From:* Karin Meier-Fleischer [mailto:meier-fleischer at dkrz.de]
> *Sent:* Friday, September 01, 2017 11:08 AM
> *To:* Beáta Szabó-Takács <szabo.b at czechglobe.cz>
> *Cc:* ncl-talk [ncl-talk] <ncl-talk at ucar.edu>
>
> *Subject:* Re: [ncl-talk] some issue with netCDF writing
>
>
>
> Hi Beata,
>
>
>
> you misunderstand me, I meant that the name of the rotated_pole data has a
> different name - you don’t have to delete it maybe just rename it.
>
>
>
> Bye,
>
> Karin
>
>
>
> Am 31.08.2017 um 14:34 schrieb Beáta Szabó-Takács <szabo.b at czechglobe.cz>:
>
>
>
> Hi Karin,
>
> I deleted the attribute north_pole_grid_longitude of
> rotated_latitude_longitude by:
>
>
>
> ncatted -O -a north_pole_grid_longitude,rotated_latitude_longitude,d,,
> evtH_31.nc
>
>
>
> The new netCDF is:
>
> ncdump -h evtH_31.nc
>
> netcdf evtH_31 {
>
> dimensions:
>
>         time = 364 ;
>
>         rlat = 412 ;
>
>         rlon = 424 ;
>
>         vertices = 4 ;
>
>         bnds = 2 ;
>
> variables:
>
>         float evtH(time, rlat, rlon) ;
>
>                 evtH:_FillValue = 1.e+20f ;
>
>                 evtH:long_name = "reference evapotranspiration: Hargreaves
> " ;
>
>                 evtH:units = "mm/day" ;
>
>                 evtH:url = "http://www.fao.org/docrep/X0490E/x0490e07.htm"
> ;
>
>                 evtH:info = "FAO 56; EQN 52; refevt_hargreaves_fao56" ;
>
>         float lat(rlat, rlon) ;
>
>                 lat:standard_name = "latitude" ;
>
>                 lat:long_name = "latitude" ;
>
>                 lat:units = "degrees_north" ;
>
>                 lat:_CoordinateAxisType = "Lat" ;
>
>                 lat:bounds = "lat_bnds" ;
>
>         double rlat(rlat) ;
>
>                 rlat:standard_name = "grid_latitude" ;
>
>                 rlat:long_name = "latitude in rotated pole grid" ;
>
>                 rlat:units = "degrees" ;
>
>                 rlat:axis = "Y" ;
>
>         double rlon(rlon) ;
>
>                 rlon:standard_name = "grid_longitude" ;
>
>                 rlon:long_name = "longitude in rotated pole grid" ;
>
>                 rlon:units = "degrees" ;
>
>                 rlon:axis = "X" ;
>
>         float lat_bnds(rlat, rlon, vertices) ;
>
>         float lon(rlat, rlon) ;
>
>                 lon:standard_name = "longitude" ;
>
>                 lon:long_name = "longitude" ;
>
>                 lon:units = "degrees_east" ;
>
>                 lon:_CoordinateAxisType = "Lon" ;
>
>                 lon:bounds = "lon_bnds" ;
>
>         float lon_bnds(rlat, rlon, vertices) ;
>
>         int rotated_latitude_longitude ;
>
>                 rotated_latitude_longitude:grid_mapping_name =
> "rotated_latitude_longitude" ;
>
>                 rotated_latitude_longitude:grid_north_pole_latitude =
> 39.25 ;
>
>                 rotated_latitude_longitude:grid_north_pole_longitude =
> -162. ;
>
>         double time(time) ;
>
>                 time:standard_name = "time" ;
>
>                 time:long_name = "time" ;
>
>                 time:bounds = "time_bnds" ;
>
>                 time:units = "days since 1949-12-1 00:00:00" ;
>
>                 time:calendar = "proleptic_gregorian" ;
>
>                 time:axis = "T" ;
>
>         double time_bnds(time, bnds) ;
>
>
>
> // global attributes:
>
>                 :history = "Thu Aug 31 12:25:48 2017: ncatted -O -a
> north_pole_grid_longitude,rotated_latitude_longitude,d,, evtH_31.nc" ;
>
> }
>
>
>
> as you suggested. But I got the same error in Panoply. I do not know what
> should I do to solve this matter?
>
> Best regards,
>
> Beáta
>
>
>
> *From:* ncl-talk [mailto:ncl-talk-bounces at ucar.edu
> <ncl-talk-bounces at ucar.edu>] *On Behalf Of *Karin Meier-Fleischer
> *Sent:* Thursday, August 31, 2017 1:38 PM
> *To:* ncl-talk at ucar.edu
> *Subject:* Re: [ncl-talk] some issue with netCDF writing
>
>
>
> Hi Beata,
>
> I would expect that the variable for the rotated pole information has to
> look like
>
>     int rotated_pole ;
>         rotated_pole:grid_mapping_name = "rotated_latitude_longitude" ;
>         rotated_pole:grid_north_pole_latitude = 39.25. ;
>         rotated_pole:grid_north_pole_longitude = -162. ;
>
> -Karin
>
> Am 31.08.17 um 13:24 schrieb Beáta Szabó-Takács:
>
> Dear NCL Users,
>
> I have also a problem with netCDF writing. I calculated the Hargreaves
> reference evapotranspiration in each year from 1981 to 2000 and wrote out
> the results into a netCDF file. I attached my script. The created netCDF
> file is correct according to ncdump -h:
>
> ncdump -h evtH_31.nc
>
> netcdf evtH_31 {
>
> dimensions:
>
>         time = 364 ;
>
>         rlat = 412 ;
>
>         rlon = 424 ;
>
>         vertices = 4 ;
>
>         bnds = 2 ;
>
> variables:
>
>         float evtH(time, rlat, rlon) ;
>
>                 evtH:_FillValue = 1.e+20f ;
>
>                 evtH:long_name = "reference evapotranspiration: Hargreaves
> " ;
>
>                 evtH:units = "mm/day" ;
>
>                 evtH:url = "http://www.fao.org/docrep/X0490E/x0490e07.htm"
> <http://www.fao.org/docrep/X0490E/x0490e07.htm> ;
>
>                 evtH:info = "FAO 56; EQN 52; refevt_hargreaves_fao56" ;
>
>         float lat(rlat, rlon) ;
>
>                 lat:standard_name = "latitude" ;
>
>                 lat:long_name = "latitude" ;
>
>                 lat:units = "degrees_north" ;
>
>                 lat:_CoordinateAxisType = "Lat" ;
>
>                 lat:bounds = "lat_bnds" ;
>
>         double rlat(rlat) ;
>
>                 rlat:standard_name = "grid_latitude" ;
>
>                 rlat:long_name = "latitude in rotated pole grid" ;
>
>                 rlat:units = "degrees" ;
>
>                 rlat:axis = "Y" ;
>
>         double rlon(rlon) ;
>
>                 rlon:standard_name = "grid_longitude" ;
>
>                 rlon:long_name = "longitude in rotated pole grid" ;
>
>                 rlon:units = "degrees" ;
>
>                 rlon:axis = "X" ;
>
>         float lat_bnds(rlat, rlon, vertices) ;
>
>         float lon(rlat, rlon) ;
>
>                 lon:standard_name = "longitude" ;
>
>                 lon:long_name = "longitude" ;
>
>                 lon:units = "degrees_east" ;
>
>                 lon:_CoordinateAxisType = "Lon" ;
>
>                 lon:bounds = "lon_bnds" ;
>
>         float lon_bnds(rlat, rlon, vertices) ;
>
>         int rotated_latitude_longitude ;
>
>                 rotated_latitude_longitude:grid_mapping_name =
> "rotated_latitude_longitude" ;
>
>                 rotated_latitude_longitude:grid_north_pole_latitude =
> 39.25 ;
>
>                 rotated_latitude_longitude:grid_north_pole_longitude =
> -162. ;
>
>                 rotated_latitude_longitude:north_pole_grid_longitude = 0.
> ;
>
>         double time(time) ;
>
>                 time:standard_name = "time" ;
>
>                 time:long_name = "time" ;
>
>                 time:bounds = "time_bnds" ;
>
>                 time:units = "days since 1949-12-1 00:00:00" ;
>
>                 time:calendar = "proleptic_gregorian" ;
>
>                 time:axis = "T" ;
>
>         double time_bnds(time, bnds) ;
>
> }
>
> But when I use this netCDF file in Panoply I get the following error:
>
> There was an error preparing the data: Could not find pole attributes.
>
> Moreover, when I merged the created evtH.nc files in CDO with mergetime
> operator and calculated the yearly sum the longitude and latitude
> dimeansiones disappeared.
>
> ncdump -h PET_ys.nc
>
> netcdf PET_ys {
>
> dimensions:
>
>         rlon = 424 ;
>
>         rlat = 412 ;
>
>         time = UNLIMITED ; // (20 currently)
>
>         bnds = 2 ;
>
> variables:
>
>         double rlon(rlon) ;
>
>                 rlon:standard_name = "longitude" ;
>
>                 rlon:long_name = "longitude" ;
>
>                 rlon:units = "degrees_east" ;
>
>                 rlon:axis = "X" ;
>
>         double rlat(rlat) ;
>
>                 rlat:standard_name = "latitude" ;
>
>                 rlat:long_name = "latitude" ;
>
>                 rlat:units = "degrees_north" ;
>
>                 rlat:axis = "Y" ;
>
>         double time(time) ;
>
>                 time:standard_name = "time" ;
>
>                 time:long_name = "time" ;
>
>                 time:bounds = "time_bnds" ;
>
>                 time:units = "days since 1949-12-1 00:00:00" ;
>
>                 time:calendar = "proleptic_gregorian" ;
>
>                 time:axis = "T" ;
>
>         double time_bnds(time, bnds) ;
>
>         float evtH(time, rlat, rlon) ;
>
>                 evtH:long_name = "reference evapotranspiration: Hargreaves
> " ;
>
>                 evtH:units = "mm/day" ;
>
>                 evtH:_FillValue = 1.e+20f ;
>
>                 evtH:missing_value = 1.e+20f ;
>
>                 evtH:url = "http://www.fao.org/docrep/X0490E/x0490e07.htm"
> <http://www.fao.org/docrep/X0490E/x0490e07.htm> ;
>
>                 evtH:info = "FAO 56; EQN 52; refevt_hargreaves_fao56" ;
>
>
>
> // global attributes:
>
>                 :CDI = "Climate Data Interface version 1.8.2 (
> http://mpimet.mpg.de/cdi)" ;
>
>                 :Conventions = "CF-1.6" ;
>
>                 :history = "Wed Aug 30 08:00:03 2017: cdo yearsum
> PET_80-00.nc PET_ys.nc\n",
>
>                         "Wed Aug 30 07:56:15 2017: cdo mergetime
> evtH_11.nc evtH_12.nc evtH_13.nc evtH_14.nc evtH_15.nc evtH_16.nc
> evtH_17.nc evtH_18.nc evtH_19.nc evtH_20.nc evtH_21.nc evtH_22.nc
> evtH_23.nc evtH_24.nc evtH_25.nc evtH_26.nc evtH_27.nc evtH_28.nc
> evtH_29.nc evtH_30.nc PET_80-00.nc" ;
>
>                 :frequency = "year" ;
>
>                 :CDO = "Climate Data Operators version 1.8.2 (
> http://mpimet.mpg.de/cdo)" ;
>
> }
>
>
>
> I do not understand why.
>
> Can someone write me what I did wrong?
>
> Thank you for your help in advance!
>
> Best regards,
>
> Beáta
>
>
>
>
>
> _______________________________________________
>
> ncl-talk mailing list
>
> ncl-talk at ucar.edu
>
> List instructions, subscriber options, unsubscribe:
>
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>
>
>
> --
>
> Dipl. Geophys. Karin Meier-Fleischer
>
> Visualization, NCL, CDO
>
> Application Support
>
>
>
> Deutsches Klimarechenzentrum GmbH (DKRZ)
>
> Bundesstrasse 45a - D20146 Hamburg - Germany
>
>
>
> Phone:    +49 (0)40 460094 126 <+49%2040%20460094126>
>
> Fax:      +49 (0)40 460094 270 <+49%2040%20460094270>
>
> E-Mail:   meier-fleischer at dkrz.de
>
> URL:      www.dkrz.de
>
>
>
> Geschäftsführer: Prof. Dr. Thomas Ludwig
>
> Sitz der Gesellschaft: Hamburg
>
> Amtsgericht Hamburg HRB 39784
>
>
>
> ____________________________________
> Dipl. Geophys. Karin Meier-Fleischer
>
>
> Visualisierung, NCL, CDO
> Abteilung Anwendungen
>
> Deutsches Klimarechenzentrum GmbH (DKRZ)
> Bundesstrasse 45a * D-20146 Hamburg
> Germany
>
> Phone: +49 (0)40 460094 126 <+49%2040%20460094126>
> Fax:     +49 (0)40 460094 270 <+49%2040%20460094270>
> E-Mail:           meier-fleischer at dkrz.de
> URL:   http://www.dkrz.de/
>
> Geschäftsführer: Prof. Dr. Thomas Ludwig
> Sitz der Gesellschaft: Hamburg
> Amtsgericht Hamburg HRB 39784
>
>
>
>
> _______________________________________________
> ncl-talk mailing list
> ncl-talk at ucar.edu
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20170901/6d719fb3/attachment-0001.html>


More information about the ncl-talk mailing list