1
program he5_gd_infoF_64
12
integer he5_gdprojinfo
13
integer he5_gdgridinfo
15
integer he5_gdtileinfo
28
integer*8 he5_gddiminfo
29
integer*8 he5_gdinqdims
30
integer*8 he5_gdnentries
44
character*72 mxdimname
45
character*72 fieldlist
49
integer*8 tiledims(32)
54
c Open HDF-EOS "grid.he5" file
55
c -----------------------------
56
gdfid = he5_gdopen('grid.he5',HE5F_ACC_RDWR)
57
write(*,*) 'File ID returned by he5_gdopen(): ',gdfid
59
if (gdfid .ne. FAIL) then
61
c Attach to the UTM and POLAR grids
62
c ---------------------------------
63
gdid1 = he5_gdattach(gdfid, 'UTMGrid')
64
write(*,*) 'Grid ID returned by he5_gdattach(): ',gdid1
66
gdid2 = he5_gdattach(gdfid, 'PolarGrid')
67
write(*,*) 'Grid ID returned by he5_gdattach(): ',gdid2
71
ndim = he5_gdinqdims(gdid1, dimname, dims)
72
write(*,*) 'Dimension list (UTMGrid): ',dimname
74
write(*,*) 'dim size: ', dims(i)
77
ndim = he5_gdinqdims(gdid2, dimname, dims)
78
write(*,*) 'Dimension list (PolarGrid): ',dimname
80
write(*,*) 'dim size: ', dims(i)
83
c Get the sizes of certain dimensions
84
c -----------------------------------
85
dimsize = he5_gddiminfo(gdid1, 'Time')
86
write(*,*) 'Size of "Time" Array: ', dimsize
88
dimsize = he5_gddiminfo(gdid2, 'Bands')
89
write(*,*) 'Size of "Bands" Array: ', dimsize
93
status = he5_gdgridinfo(gdid1,xdimsize,ydimsize,
95
write(*,*)'X dim size, Y dim size (UTMGrid): ',
98
write(*,*) 'Up left pt (UTMGrid): ',
99
1upleftpt(1),upleftpt(2)
100
write(*,*) 'Low right pt (UTMGrid): ',
101
1lowrightpt(1),lowrightpt(2)
103
status = he5_gdgridinfo(gdid2,xdimsize,ydimsize,
104
1upleftpt,lowrightpt)
105
write(*,*) 'X dim size, Y dim size (PolarGrid): ',
108
write(*,*) 'Up left pt (PolarGrid): ',
109
1upleftpt(1),upleftpt(2)
110
write(*,*) 'Low right pt (PolarGrid): ',
111
1lowrightpt(1),lowrightpt(2)
113
c Get projection parameters
114
c -------------------------
115
status = he5_gdprojinfo(gdid1,projcode,zonecode,
116
1 spherecode,projparm)
117
write(*,*) 'projcode,zonecode (UTMGrid): ',
119
write(*,*) 'spherecode (UTMGrid): ', spherecode
121
status = he5_gdprojinfo(gdid2,projcode,zonecode,
122
1 spherecode,projparm)
123
write(*,*) 'projcode (PolarGrid): ', projcode
124
write(*,*) 'spherecode (PolarGrid): ', spherecode
126
write(*,*) 'Projection Parameter: ',i,projparm(i)
129
c Get information about fields
130
c ----------------------------
131
nflds = he5_gdinqflds(gdid1, fieldlist, rk, nt)
132
if (nflds .ne. 0) then
133
write(*,*) 'Data fields (UTMGrid): ', fieldlist
135
write(*,*) 'rank type: ',rk(i),nt(i)
139
status = he5_gdtileinfo(gdid1,"Vegetation",tilecode,tilerank,
141
write(*,*) 'Vegetation Tile Code: ', tilecode
142
write(*,*) 'Vegetation Tile Rank: ', tilerank
144
write(*,*) 'Tile Dimension ',i,tiledims(i)
147
nflds = he5_gdinqflds(gdid2, fieldlist, rk, nt)
148
if (nflds .ne. 0) then
149
write(*,*) 'Data fields (PolarGrid): ',fieldlist
151
write(*,*) 'rank type: ',rk(i),nt(i)
155
status = he5_gdfldinfo(gdid2,'Spectra',rk,dims,nt,
157
write(*,*) 'Spectra rank dims: ',rk(1)
158
write(*,*) 'Spectra dim names: ',dimname
159
write(*,*) 'Spectra max. dim names: ',mxdimname
161
write(*,*) 'Spectra dims: ',i,dims(i)
164
c Get number of grid dimensions and dim. list length
165
c --------------------------------------------------
166
n = he5_gdnentries(gdid1, HE5_HDFE_NENTDIM, strbufsize)
167
write(*,*) 'Number of dimension entries (UTMGrid): ', n
168
write(*,*) 'Length of Dimension List (UTMGrid): ',
171
c Get number of data fields and field list length
172
c -----------------------------------------------
173
n = he5_gdnentries(gdid1, HE5_HDFE_NENTDFLD,
175
write(*,*) 'Number of data fields (UTMGrid): ', n
176
write(*,*) 'Length of Field List (UTMGrid): ',
181
c Detach from the grids
182
c ---------------------
183
status = he5_gddetach(gdid1)
184
write(*,*) 'Status returned by he5_gddetach(): ',status
186
status = he5_gddetach(gdid2)
187
write(*,*) 'Status returned by he5_gddetach(): ',status
191
status = he5_gdclose(gdfid)
192
write(*,*) 'Status returned by he5_gdclose(): ',status