Changeset 1635 for LMDZ5/trunk/libf/bibio/netcdf95.F90
- Timestamp:
- Jul 12, 2012, 1:37:16 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/bibio/netcdf95.F90
r1279 r1635 3 3 4 4 ! Author: Lionel GUEZ 5 6 ! Three criticisms may be made about the Fortran 90 NetCDF interface: 7 8 ! -- NetCDF procedures are usually functions with side effects. 9 ! First, they have "intent(out)" arguments. 10 ! Furthermore, there is obviously data transfer inside the procedures. 11 ! Any data transfer inside a function is considered as a side effect. 12 13 ! -- The caller of a NetCDF procedure usually has to handle the error 14 ! status. NetCDF procedures would be much friendlier if they behaved 15 ! like the Fortran input/output statements. That is, the error status 16 ! should be an optional output argument. 17 ! If the caller does not request the error status and there is an 18 ! error then the NetCDF procedure should produce an error message 19 ! and stop the program. 20 21 ! -- Some procedures use array arguments with assumed size. 22 ! It would be better to use the pointer attribute. 23 24 ! This module produces a NetCDF interface that answers those three 25 ! criticisms for some (not all) procedures. 26 27 ! "nf95_get_att" is more secure than "nf90_get_att" because it 28 ! checks that the "values" argument is long enough and removes the 29 ! null terminator, if any. 30 31 ! This module replaces some of the official NetCDF procedures. 32 ! This module also provides the procedures "handle_err" and "nf95_gw_var". 33 34 ! This module provides only a partial replacement for some generic 35 ! procedures such as "nf90_def_var". 5 ! See: 6 ! http://www.lmd.jussieu.fr/~lglmd/NetCDF95 36 7 37 8 use nf95_def_var_m 38 9 use nf95_put_var_m 10 use nf95_get_var_m 39 11 use nf95_gw_var_m 40 12 use nf95_put_att_m
Note: See TracChangeset
for help on using the changeset viewer.