From ad416f2e88fdc704d2447e6b71b342aca3689fd8 Mon Sep 17 00:00:00 2001
From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr>
Date: Thu, 22 Feb 2018 15:42:13 +0100
Subject: [PATCH] Philippe 22/02/2018: lfi2cdf: remove support for netCDF-3
 files

---
 LIBTOOLS/tools/lfi2cdf/src/mode_options.f90 | 36 ++++-----------------
 LIBTOOLS/tools/lfi2cdf/src/mode_util.f90    | 24 +++-----------
 2 files changed, 10 insertions(+), 50 deletions(-)

diff --git a/LIBTOOLS/tools/lfi2cdf/src/mode_options.f90 b/LIBTOOLS/tools/lfi2cdf/src/mode_options.f90
index 4a03b4442..84051bd67 100644
--- a/LIBTOOLS/tools/lfi2cdf/src/mode_options.f90
+++ b/LIBTOOLS/tools/lfi2cdf/src/mode_options.f90
@@ -1,14 +1,13 @@
 module mode_options
   implicit none
 
-  integer,parameter :: nbavailoptions = 10
+  integer,parameter :: nbavailoptions = 8
   integer,parameter :: TYPEUNDEF = -1, TYPEINT = 1, TYPELOG = 2, TYPEREAL = 3, TYPECHAR = 4
   integer,parameter :: MODEUNDEF = -11, MODECDF2CDF = 11, MODELFI2CDF = 12, MODECDF2LFI = 13
 
-  integer,parameter :: OPTCDF3   = 1, OPTCDF4   = 2, OPTCOMPRESS = 3
-  integer,parameter :: OPTHELP   = 4, OPTLIST   = 5, OPTMERGE    = 6
-  integer,parameter :: OPTOUTPUT = 7, OPTREDUCE = 8, OPTSPLIT    = 9
-  integer,parameter :: OPTVAR    = 10
+  integer,parameter :: OPTCOMPRESS = 1, OPTHELP   = 2, OPTLIST   = 3
+  integer,parameter :: OPTMERGE    = 4, OPTOUTPUT = 5, OPTREDUCE = 6
+  integer,parameter :: OPTSPLIT    = 7, OPTVAR    = 8
 
   type option
     logical :: set = .false.
@@ -98,14 +97,6 @@ subroutine init_options(options)
 
   allocate(options(nbavailoptions))
 
-  options(OPTCDF3)%long_name    = "cdf3"
-  options(OPTCDF3)%short_name   = '3'
-  options(OPTCDF3)%has_argument = .false.
-
-  options(OPTCDF4)%long_name    = "cdf4"
-  options(OPTCDF4)%short_name   = '4'
-  options(OPTCDF4)%has_argument = .false.
-
   options(OPTCOMPRESS)%long_name    = "compress"
   options(OPTCOMPRESS)%short_name   = 'c'
   options(OPTCOMPRESS)%has_argument = .true.
@@ -234,17 +225,6 @@ subroutine check_options(options,infile,runmode)
     call help()
   end if
 
-  !Use NetCF-4 by default
-  if (.NOT.options(OPTCDF3)%set) then
-    options(OPTCDF4)%set = .true.
-  else
-    if (options(OPTCDF4)%set) then
-      print *,'Warning: NetCDF-3 and NetCDF-4 options are not compatible'
-      print *,'NetCDF-4 is forced'
-      options(OPTCDF3)%set = .false.
-    end if
-  end if
-
   !Check compression level
   if (options(OPTCOMPRESS)%set) then
     if (options(OPTCOMPRESS)%ivalue < 1 .OR. options(OPTCOMPRESS)%ivalue > 9 ) then
@@ -284,19 +264,15 @@ subroutine help()
   implicit none
 
 !TODO: -l option for cdf2cdf and cdf2lfi
-  print *,"Usage : lfi2cdf [-h --help] [--cdf4 -4] [-l] [-v --var var1[,...]] [-r --reduce-precision]"
+  print *,"Usage : lfi2cdf [-h --help] [-l] [-v --var var1[,...]] [-r --reduce-precision]"
   print *,"                [-m --merge number_of_z_levels] [-s --split] [-o --output output-file.nc]"
   print *,"                [-c --compress compression_level] input-file.lfi"
-  print *,"        cdf2cdf [-h --help] [--cdf4 -4] [-v --var var1[,...]] [-r --reduce-precision]"
+  print *,"        cdf2cdf [-h --help] [-v --var var1[,...]] [-r --reduce-precision]"
   print *,"                [-m --merge number_of_z_levels] [-s --split] [-o --output output-file.nc]"
   print *,"                [-c --compress compression_level] input-file.nc"
   print *,"        cdf2lfi [-o --output output-file.lfi] input-file.nc"
   print *,""
   print *,"Options:"
-  print *,"  --cdf3, -3"
-  print *,"     Write netCDF file in netCDF-3 format (cdf2cdf and lfi2cdf only)"
-  print *,"  --cdf4, -4 (by default)"
-  print *,"     Write netCDF file in netCDF-4 format (HDF5 compatible) (cdf2cdf and lfi2cdf only)"
   print *,"  --compress, -c compression_level"
   print *,"     Compress data. The compression level should be in the 1 to 9 interval."
   print *,"     Only supported with the netCDF-4 format (cdf2cdf and lfi2cdf only)"
diff --git a/LIBTOOLS/tools/lfi2cdf/src/mode_util.f90 b/LIBTOOLS/tools/lfi2cdf/src/mode_util.f90
index 550debc64..5614e45ee 100644
--- a/LIBTOOLS/tools/lfi2cdf/src/mode_util.f90
+++ b/LIBTOOLS/tools/lfi2cdf/src/mode_util.f90
@@ -1211,12 +1211,7 @@ END DO
          idx = outfiles%nbfiles
          outfiles%files(idx)%format = NETCDF_FORMAT
          outfiles%files(idx)%status = WRITING
-         IF (options(OPTCDF4)%set) THEN
-            status = NF90_CREATE(TRIM(houtfile)//'.nc', IOR(NF90_CLOBBER,NF90_NETCDF4), outfiles%files(idx)%lun_id)
-         ELSE
-            status = NF90_CREATE(TRIM(houtfile)//'.nc', IOR(NF90_CLOBBER,NF90_64BIT_OFFSET), outfiles%files(idx)%lun_id)
-         END IF
-       
+         status = NF90_CREATE(TRIM(houtfile)//'.nc', IOR(NF90_CLOBBER,NF90_NETCDF4), outfiles%files(idx)%lun_id)
          IF (status /= NF90_NOERR) CALL HANDLE_ERR(status,__LINE__)
          outfiles%files(idx)%opened  = .TRUE.
 
@@ -1250,13 +1245,7 @@ END DO
        IF (.NOT.options(OPTSPLIT)%set) THEN
          outfiles%nbfiles = outfiles%nbfiles + 1
          idx = outfiles%nbfiles
-
-         IF (options(OPTCDF4)%set) THEN
-            status = NF90_CREATE(houtfile, IOR(NF90_CLOBBER,NF90_NETCDF4), outfiles%files(idx)%lun_id)
-         ELSE
-            status = NF90_CREATE(houtfile, IOR(NF90_CLOBBER,NF90_64BIT_OFFSET), outfiles%files(idx)%lun_id)
-         END IF
-
+         status = NF90_CREATE(houtfile, IOR(NF90_CLOBBER,NF90_NETCDF4), outfiles%files(idx)%lun_id)
          IF (status /= NF90_NOERR) CALL HANDLE_ERR(status,__LINE__)
          outfiles%files(idx)%opened  = .TRUE.
          outfiles%files(idx)%format = NETCDF_FORMAT
@@ -1362,13 +1351,8 @@ END DO
       IF (.NOT.tpreclist(ji)%tbw) CYCLE
       outfiles%files(idx)%var_id = ji
 
-      IF (options(OPTCDF4)%set) THEN
-        filename = trim(houtfile)//'.'//trim(tpreclist(ji)%name)//'.nc'
-        status = NF90_CREATE(trim(filename), IOR(NF90_CLOBBER,NF90_NETCDF4), outfiles%files(idx)%lun_id)
-      ELSE
-        filename = trim(houtfile)//'.'//trim(tpreclist(ji)%name)//'.nc'
-        status = NF90_CREATE(trim(filename), IOR(NF90_CLOBBER,NF90_64BIT_OFFSET), outfiles%files(idx)%lun_id)
-      END IF
+      filename = trim(houtfile)//'.'//trim(tpreclist(ji)%name)//'.nc'
+      status = NF90_CREATE(trim(filename), IOR(NF90_CLOBBER,NF90_NETCDF4), outfiles%files(idx)%lun_id)
       IF (status /= NF90_NOERR) CALL HANDLE_ERR(status,__LINE__)
 
       status = NF90_SET_FILL(outfiles%files(idx)%lun_id,NF90_NOFILL,omode)
-- 
GitLab