PROGRAM SAMPLE

        use hdf5   ! This module contains all necessary modules

        CHARACTER(LEN=70), PARAMETER :: filename = "../data/GPM/DPR/GPMCOR_DPR_2604010211_0345_068594_L2S_DD2_08A.nc"
        CHARACTER(LEN=26), PARAMETER :: dsetname = "/FS/SLV/precipRateESurface"

        INTEGER(HID_T) :: file_id       ! File identifier
        INTEGER(HID_T) :: dset_id       ! Dataset identifier
        REAL*4, DIMENSION(49,7988) :: precipRateESurface ! Data buffers
        INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
	    INTEGER error 


        ! Initialize FORTRAN interface.
        CALL h5open_f(error)

        ! Open an existing file.
        CALL h5fopen_f (filename, H5F_ACC_RDWR_F, file_id, error)

        ! Open an existing dataset.
        CALL h5dopen_f(file_id, dsetname, dset_id, error)

        ! Read precipRateESurface.
        data_dims(1) = 49 
        data_dims(2) = 7988
        CALL h5dread_f(dset_id, H5T_NATIVE_REAL, precipRateESurface, data_dims, error)

        ! print the value
        write(*,*) "filename=",filename,""
        write(*,*) "dataset name=",dsetname,""
        write(*,*) "precipRateESurface(44,5211)=",precipRateESurface(44,5211), "(mm/hr)" 

        ! Close the dataset.
        CALL h5dclose_f(dset_id, error)

        ! Close the file.
        CALL h5fclose_f(file_id, error)

        ! Close FORTRAN interface.
        CALL h5close_f(error)

	    STOP
END
	
