source: LMDZ6/trunk/libf/misc/lmdz_netcdf.F90 @ 5073

Last change on this file since 5073 was 5073, checked in by abarral, 4 months ago

Remove all NC_DOUBLE uses outside of lmdz_netcdf.F90 (except in obsolete/, which I hope we'll ditch soon...)
Note: make sure to check convergence at some point, it's possible that we've messed up some when replacing nf_* by nf90_* calls
(lint) replace obsolete logical operators along the way

File size: 905 bytes
RevLine 
[5068]1! ---------------------------------------------
2! This module serves as a wrapper around netcdf.
3! It serves two primary functions:
4!  1) Turn netcdf into a "real" fortran module, without the INCLUDE call
[5073]5!  2) Handle the NC_DOUBLE CPP key. This key should ONLY be used here.
[5069]6! Ideally, the "real" netcdf module/headers should ONLY be called here. (WIP) TODO
[5068]7! ---------------------------------------------
[5069]8! TODO check all uses of `use netcdf` + netcdf.inc
[5068]9
10MODULE lmdz_netcdf
11  USE, INTRINSIC :: ISO_FORTRAN_ENV, ONLY : REAL64, REAL32
12  USE netcdf
13  IMPLICIT NONE
14  ! Note: as we want to expose netcdf through this module, we don't make all PRIVATE by default as usual
15  ! Instead, explicitely make PRIVATE the relevant items.
16
17  INCLUDE 'netcdf.inc'
18
19#ifdef NC_DOUBLE
20  INTEGER, PARAMETER :: NF90_FORMAT = NF90_DOUBLE
21#else
22  INTEGER, PARAMETER :: NF90_FORMAT = NF90_FLOAT
23#endif
[5069]24END MODULE lmdz_netcdf
Note: See TracBrowser for help on using the repository browser.