[gradsusr] GPM HDF5 descriptor file
姜立智
jianglizhi at mail.iap.ac.cn
Thu Jun 11 22:00:59 EDT 2020
Dear Jennifer, Thank you very much for the reply :) --Lizhi
> -----原始邮件-----
> 发件人: gradsusr-request at gradsusr.org
> 发送时间: 2020-06-09 23:06:22 (星期二)
> 收件人: gradsusr at gradsusr.org
> 抄送:
> 主题: gradsusr Digest, Vol 124, Issue 6
>
> Send gradsusr mailing list submissions to
> gradsusr at gradsusr.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://gradsusr.org/mailman/listinfo/gradsusr
> or, via email, send a message with subject or body 'help' to
> gradsusr-request at gradsusr.org
>
> You can reach the person managing the list at
> gradsusr-owner at gradsusr.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of gradsusr digest..."
>
>
> Today's Topics:
>
> 1. Re: GPM HDF5 descriptor file (Jennifer M Adams)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 9 Jun 2020 15:06:19 +0000
> From: Jennifer M Adams <jadams21 at gmu.edu>
> To: "gradsusr at gradsusr.org" <gradsusr at gradsusr.org>
> Subject: Re: [gradsusr] GPM HDF5 descriptor file
> Message-ID:
> <bl0pr05mb475421c652fee5c78910704bcc820 at bl0pr05mb4754.namprd05.prod.outlook.com>
>
> Content-Type: text/plain; charset="iso-2022-jp"
>
> Yes, this is a problem with the HDF5_grid interface in GrADS 2.2.1. Some of the internal variables are handled as ordinary integers but need to be special (longer) data types specific to the HDF5 library. I have fixed this in my dev version except for one lingering issue where the library gets very upset if I try to open a file that doesn't exist. Since these IMERG files are distributed by the GES DIS (where I work), it is important that GrADS be able to handle them. I will work on the final fixes and publish the source code version 2.2.2 as soon as I can. --Jennifer
>
> ________________________________
> From: gradsusr <gradsusr-bounces at gradsusr.org> on behalf of ??? <jianglizhi at mail.iap.ac.cn>
> Sent: Thursday, June 4, 2020 12:19 AM
> To: gradsusr at gradsusr.org <gradsusr at gradsusr.org>
> Subject: [gradsusr] GPM HDF5 descriptor file
>
>
> Hello,
>
> I would like to read the GPM IMERG precipitation data (HDF5 format) by using GrADS. After read the page(http://cola.gmu.edu/grads/gadoc/SDFdescriptorfile.html) and gradsusr mailing list(http://gradsusr.org/pipermail/gradsusr/2016-January/039366.html<http: secure-web.cisco.com="" 1l4intykjai7ouusqle6gcwjcecxcfobk-pju2yl4whiduzulkqkcbrwiika8n2nki9ikmuskq_aorj4c6e1psh93nklo0fy_23kjnx1hbyph3bilbwuxxlqi84sbvvnnl57dabuuqhpyaeo5s3uft7ivuhgrwt9q7fq-lwwtp8tfmdlw7431hujedorh5ozsfz3wabn-vqp5bc9e21egrjr7vbehsobn8gxo5nc-vpa8ancirkkf5mv0v3teez6ftoye7upkvsn7zrewzojyk8c2fauyas8perua5wekfakikejrkaintppi1n9gxmx7tj8anlmp245zmxg8roo94em7fsvuiidl9euvrjstg8cravuuzyylgnaffqh7l2pa-3ruwqibjghzl3s7nb7tohjsqxcbeduqbnry0bwsq6rz5xx6iaovxus9hlbz9-bd="" http%3a%2f%2fgradsusr.org%2fpipermail%2fgradsusr%2f2016-january%2f039366.html="">), I had created the ctl file.
>
> The ctl file can be loaded normally. However, It reports some error while I try to display some variable.
>
>
> Error message:
>
> ga-> d hqp
> HDF5-DIAG: Error detected in HDF5 (1.10.4) thread 23373517074432:
> #000: ../../../src/H5D.c line 282 in H5Dopen2(): not a location
> major: Invalid arguments to routine
> minor: Inappropriate type
> #001: ../../../src/H5Gloc.c line 246 in H5G_loc(): invalid object ID
> major: Invalid arguments to routine
> minor: Bad value
> Error: H5Dopen2 failed for variable /Grid/HQprecipitation
> Error: Variable /Grid/HQprecipitation not in HDF5 file
> Data Request Error: Error for variable 'hqp'
> Error ocurred at column 1
> DISPLAY error: Invalid expression
> Expression = hqp
>
>
>
>
> Here are the config information:
>
> ga-> q config
>
> Config: v2.2.1 little-endian readline grib2 netcdf hdf4-sds hdf5 opendap-grids,stn geotiff shapefile
> Grid Analysis and Display System (GrADS) Version 2.2.1
> Copyright (C) 1988-2018 by George Mason University
> GrADS comes with ABSOLUTELY NO WARRANTY
> See file COPYRIGHT for more information
>
> This build of GrADS has the following features:
> -+- Byte order is LITTLE ENDIAN
> -+- Athena Widget GUI DISABLED
> -+- Command line editing ENABLED
> -+- GRIB2 interface ENABLED g2clib-1.6.0
> -+- NetCDF interface ENABLED netcdf-4.7.3
> -+- OPeNDAP gridded data interface ENABLED
> -+- OPeNDAP station data interface ENABLED libgadap 2.0
> -+- HDF4 interface ENABLED hdf-4.2r14
> -+- HDF5 interface ENABLED hdf5-1.10.4
> -+- KML contour output ENABLED
> -+- GeoTIFF and KML/TIFF output ENABLED
> -+- Shapefile interface ENABLED
> The 'q gxconfig' command returns Graphics configuration information
>
>
>
> Here are the part of h5dump output (see the attathment h5dump.txt for full information):
>
> HDF5 "3B-HHR.MS.MRG.3IMERG.20181113-S000000-E002959.0000.V06B.HDF5" {
> GROUP "/Grid/" {
> ATTRIBUTE "GridHeader" {
> DATATYPE H5T_STRING {
> STRSIZE 230;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> DATASET "HQobservationTime" {
> DATATYPE H5T_STD_I16LE
> DATASPACE SIMPLE { ( 1, 3600, 1800 ) / ( H5S_UNLIMITED, 3600, 1800 ) }
> ATTRIBUTE "CodeMissingValue" {
> DATATYPE H5T_STRING {
> STRSIZE 6;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "DIMENSION_LIST" {
> DATATYPE H5T_VLEN { H5T_REFERENCE { H5T_STD_REF_OBJECT }}
> DATASPACE SIMPLE { ( 3 ) / ( 3 ) }
> }
> ATTRIBUTE "DimensionNames" {
> DATATYPE H5T_STRING {
> STRSIZE 13;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "Units" {
> DATATYPE H5T_STRING {
> STRSIZE 8;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "_FillValue" {
> DATATYPE H5T_STD_I16LE
> DATASPACE SCALAR
> }
> ATTRIBUTE "coordinates" {
> DATATYPE H5T_STRING {
> STRSIZE 13;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "units" {
> DATATYPE H5T_STRING {
> STRSIZE 8;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> }
> DATASET "HQprecipSource" {
> DATATYPE H5T_STD_I16LE
> DATASPACE SIMPLE { ( 1, 3600, 1800 ) / ( H5S_UNLIMITED, 3600, 1800 ) }
> ATTRIBUTE "CodeMissingValue" {
> DATATYPE H5T_STRING {
> STRSIZE 6;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "DIMENSION_LIST" {
> DATATYPE H5T_VLEN { H5T_REFERENCE { H5T_STD_REF_OBJECT }}
> DATASPACE SIMPLE { ( 3 ) / ( 3 ) }
> }
> ATTRIBUTE "DimensionNames" {
> DATATYPE H5T_STRING {
> STRSIZE 13;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "_FillValue" {
> DATATYPE H5T_STD_I16LE
> DATASPACE SCALAR
> }
> ATTRIBUTE "coordinates" {
> DATATYPE H5T_STRING {
> STRSIZE 13;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> }
> DATASET "HQprecipitation" {
> DATATYPE H5T_IEEE_F32LE
> DATASPACE SIMPLE { ( 1, 3600, 1800 ) / ( H5S_UNLIMITED, 3600, 1800 ) }
> ATTRIBUTE "CodeMissingValue" {
> DATATYPE H5T_STRING {
> STRSIZE 8;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "DIMENSION_LIST" {
> DATATYPE H5T_VLEN { H5T_REFERENCE { H5T_STD_REF_OBJECT }}
> DATASPACE SIMPLE { ( 3 ) / ( 3 ) }
> }
> ATTRIBUTE "DimensionNames" {
> DATATYPE H5T_STRING {
> STRSIZE 13;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "Units" {
> DATATYPE H5T_STRING {
> STRSIZE 6;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "_FillValue" {
> DATATYPE H5T_IEEE_F32LE
> DATASPACE SCALAR
> }
> ATTRIBUTE "coordinates" {
> DATATYPE H5T_STRING {
> STRSIZE 13;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> ATTRIBUTE "units" {
> DATATYPE H5T_STRING {
> STRSIZE 6;
> STRPAD H5T_STR_NULLTERM;
> CSET H5T_CSET_ASCII;
> CTYPE H5T_C_S1;
> }
> DATASPACE SCALAR
> }
> }
>
> >From the output, It seem that the size of variable HQprecipitation is (1,3600,1800). So I created the ctl file below:
>
> dset ^3B-HHR.MS.MRG.3IMERG.20181118-S233000-E235959.1410.V06B.HDF5
> DTYPE hdf5_grid
> TITLE IMERG sample
> UNDEF -9999.9
> XDEF 3600 linear -179.95 0.1
> YDEF 1800 linear -89.95 0.1
> ZDEF 1 levels 1 1
> TDEF 1 linear 23:30Z18nov2018 30mn
> VARS 5
> /Grid/HQprecipitation=>hqp 0 t,x,y HQ precipitation
> /Grid/IRprecipitation=>irp 0 t,x,y IR precipitation
> /Grid/precipitationCal=>calp 0 t,x,y cal precipitation
> /Grid/precipitationUncal=>uncalp 0 t,x,y uncal precipitation
> /Grid/randomError=>error 0 t,x,y random error
> ENDVARS
>
>
>
> I am not sure how to read the HDF5 file successfully. Can anyone help? Thanks in advance.
>
>
> Lizhi Jiang
>
> June 4, 2020
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http: gradsusr.org="" pipermail="" gradsusr="" attachments="" 20200609="" 1ef7dced="" attachment.html="">
>
> ------------------------------
>
> Subject: Digest Footer
>
> _______________________________________________
> gradsusr mailing list
> gradsusr at gradsusr.org
> http://gradsusr.org/mailman/listinfo/gradsusr
>
>
> ------------------------------
>
> End of gradsusr Digest, Vol 124, Issue 6
> ****************************************
</http:></http:></gradsusr at gradsusr.org></jianglizhi at mail.iap.ac.cn></gradsusr-bounces at gradsusr.org></bl0pr05mb475421c652fee5c78910704bcc820 at bl0pr05mb4754.namprd05.prod.outlook.com></gradsusr at gradsusr.org></jadams21 at gmu.edu>
More information about the gradsusr
mailing list