NCAR / DART

Data Assimilation Research Testbed
https://dart.ucar.edu/
Apache License 2.0
196 stars 145 forks source link

code from the HDF group tutorial in HDF5_untilities_mod #340

Closed hkershaw-brown closed 1 year ago

hkershaw-brown commented 2 years ago

There are some routines from the HDF tutorial that probably do not need to be in the DART HDF_utilities_mod.f90

H5_CRTDAT https://github.com/NCAR/DART/blob/ff662ab375a18e1862dd426f21e8106a087f941d/assimilation_code/modules/utilities/HDF5_utilities_mod.f90#L192

H5_RDWT https://github.com/NCAR/DART/blob/ff662ab375a18e1862dd426f21e8106a087f941d/assimilation_code/modules/utilities/HDF5_utilities_mod.f90#L253

See 29aedb5410cd6f18736ea7671ac86699e0236e32 for build-system file move.

hkershaw-brown commented 2 years ago

Also, this module does not compile with GNU Fortran (MacPorts gcc9 9.4.0_0) 9.4.0

/Users/hkershaw/DART/Refactor/Build_system/DART.buildit/observations/obs_converters/NSIDC/HDF5_utilities_mod.f90:77:47:

   77 | call h5fopen_f(filename, flag, file_id, hdferr)
      |                                               1
Error: Type mismatch in argument 'access_flags' at (1); passed INTEGER(8) to INTEGER(4)
hkershaw-brown commented 2 years ago

compiles, untested.

diff --git a/observations/obs_converters/NSIDC/HDF5_utilities_mod.f90 b/observations/obs_converters/NSIDC/HDF5_utilities_mod.f90
index 449405ab2..b6296cf70 100644
--- a/observations/obs_converters/NSIDC/HDF5_utilities_mod.f90
+++ b/observations/obs_converters/NSIDC/HDF5_utilities_mod.f90
@@ -66,7 +66,7 @@ end subroutine initialize_module
 function h5_open(filename, flag, context) result(file_id)

 character(len=*),           intent(in) :: filename
-integer(HID_T),             intent(in) :: flag
+integer       ,             intent(in) :: flag
 character(len=*), optional, intent(in) :: context
 integer(HID_T)                         :: file_id