我正在使用在 h5files 中写入 REAL 类型变量的 Fortran 代码,因此它使用此代码
call h5dcreate_f(file_id,varn,H5T_NATIVE_REAL, filespace,dset_id, hdferr)
当然还有其他 h5 函数,例如geth5dims
.
但是我很困惑为什么当我使用 R 或 HDFview 打开 h5 文件时,REAL 变量的精度高达 20+ 位,而不是我期望的 fortran REAL 的 7 位。示例:在 fortran 中,当我打印出一个变量时,我有 0.1662154,但在我的 h5file 中,相同的变量是 0.166215423415234653524...
为什么所有这些额外的数字,这些数字只是噪音?这很重要,因为我将进行对舍入误差敏感的进一步计算。
在 Fortran 中使用 write 语句FORMAT(F30.25)
我得到 0.0006564661744050681591034 但在 RI 中得到 0.00065646617440506816,如果在 Fortran 中我只使用 write( , ) var 或 print *,var 而我只得到 6.565466E-4