- Timestamp:
- 2010-11-09T16:38:45+01:00 (13 years ago)
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
branches/nemo_v3_3_beta/NEMOGCM/EXTERNAL/IOIPSL/src/nc4interface.F90
r2366 r2368 1 MODULE nc4 dummy1 MODULE nc4interface 2 2 !- 3 3 !- … … 10 10 !! calls when compiling without netcdf4 libraries 11 11 !!-------------------------------------------------------------------- 12 INTEGER, PUBLIC :: NF90_HDF5 12 !- netcdf4 chunking control structure 13 !- (optional on histbeg and histend calls) 14 TYPE, PUBLIC :: snc4_ctl 15 SEQUENCE 16 INTEGER :: ni 17 INTEGER :: nj 18 INTEGER :: nk 19 LOGICAL :: luse 20 END TYPE snc4_ctl 21 13 22 CONTAINS 14 23 !=== 15 INTEGER FUNCTION NF90_DEF_VAR_CHUNKING(idum1, idum2, idum3, iarr1) 24 SUBROUTINE GET_NF90_SYMBOL(sym_name, ivalue) 25 CHARACTER(len=*), INTENT(in) :: sym_name 26 INTEGER, INTENT(out) :: ivalue 27 ivalue = -999 28 END SUBROUTINE GET_NF90_SYMBOL 29 INTEGER FUNCTION SET_NF90_DEF_VAR_CHUNKING(idum1, idum2, idum3, iarr1) 16 30 !!-------------------------------------------------------------------- 17 31 !! *** SUBROUTINE NF90_DEF_VAR_CHUNKING *** … … 21 35 INTEGER, INTENT(in) :: idum1, idum2, idum3 22 36 INTEGER, DIMENSION(4), INTENT(in) :: iarr1 23 IF(lwp) WRITE(numout,*) 'Warning: Attempt to chunk output variable without NetCDF4 support'24 NF90_DEF_VAR_CHUNKING = -125 END FUNCTION NF90_DEF_VAR_CHUNKING37 WRITE(*,*) 'Warning: Attempt to chunk output variable without NetCDF4 support' 38 SET_NF90_DEF_VAR_CHUNKING = -1 39 END FUNCTION SET_NF90_DEF_VAR_CHUNKING 26 40 27 INTEGER FUNCTION NF90_DEF_VAR_DEFLATE(idum1, idum2, idum3, idum4, idum5)41 INTEGER FUNCTION SET_NF90_DEF_VAR_DEFLATE(idum1, idum2, idum3, idum4, idum5) 28 42 !!-------------------------------------------------------------------- 29 43 !! *** SUBROUTINE NF90_DEF_VAR_DEFLATE *** … … 32 46 !!-------------------------------------------------------------------- 33 47 INTEGER, INTENT(in) :: idum1, idum2, idum3, idum4, idum5 34 IF(lwp) WRITE(numout,*) 'Warning: Attempt to compress output variable without NetCDF4 support'35 NF90_DEF_VAR_DEFLATE = -136 END FUNCTION NF90_DEF_VAR_DEFLATE48 WRITE(*,*) 'Warning: Attempt to compress output variable without NetCDF4 support' 49 SET_NF90_DEF_VAR_DEFLATE = -1 50 END FUNCTION SET_NF90_DEF_VAR_DEFLATE 37 51 #else 38 52 !!-------------------------------------------------------------------- … … 40 54 !! calls when compiling without netcdf4 libraries 41 55 !!-------------------------------------------------------------------- 56 57 USE netcdf 58 59 !- netcdf4 chunking control structure 60 !- (optional on histbeg and histend calls) 61 !$AGRIF_DO_NOT_TREAT 62 TYPE, PUBLIC :: snc4_ctl 63 SEQUENCE 64 INTEGER :: ni 65 INTEGER :: nj 66 INTEGER :: nk 67 LOGICAL :: luse 68 END TYPE snc4_ctl 69 !$AGRIF_END_DO_NOT_TREAT 70 71 CONTAINS 72 INTEGER FUNCTION SET_NF90_DEF_VAR_CHUNKING(nfid, nvid, ichunkalg, ichunksz) 73 !!-------------------------------------------------------------------- 74 !! *** SUBROUTINE NF90_DEF_VAR_CHUNKING *** 75 !! 76 !! ** Purpose : Interface NetCDF4 routine to enable compiling with NetCDF4 libraries 77 !! but no key_netcdf4 78 !!-------------------------------------------------------------------- 79 INTEGER, INTENT(in) :: nfid 80 INTEGER, INTENT(in) :: nvid 81 INTEGER, INTENT(in) :: ichunkalg 82 INTEGER, DIMENSION(:), INTENT(in) :: ichunksz 83 !! 84 INTEGER :: iret 85 !! 86 iret = NF90_DEF_VAR_CHUNKING(nfid, nvid, ichunkalg, ichunksz) 87 SET_NF90_DEF_VAR_CHUNKING = iret 88 END FUNCTION SET_NF90_DEF_VAR_CHUNKING 89 90 INTEGER FUNCTION SET_NF90_DEF_VAR_DEFLATE(nfid, nvid, ishuffle, ideflate, ideflate_level) 91 !!-------------------------------------------------------------------- 92 !! *** SUBROUTINE NF90_DEF_VAR_DEFLATE *** 93 !! 94 !! ** Purpose : Interface NetCDF4 routine to enable compiling with NetCDF4 libraries 95 !! but no key_netcdf4 96 !!-------------------------------------------------------------------- 97 INTEGER, INTENT(in) :: nfid 98 INTEGER, INTENT(in) :: nvid 99 INTEGER, INTENT(in) :: ishuffle 100 INTEGER, INTENT(in) :: ideflate 101 INTEGER, INTENT(in) :: ideflate_level 102 !! 103 INTEGER :: iret 104 !! 105 iret = NF90_DEF_VAR_DEFLATE(nfid, nvid, ishuffle, ideflate, ideflate_level) 106 SET_NF90_DEF_VAR_DEFLATE = iret 107 END FUNCTION SET_NF90_DEF_VAR_DEFLATE 108 109 SUBROUTINE GET_NF90_SYMBOL(sym_name, ivalue) 110 CHARACTER(len=*), INTENT(in) :: sym_name 111 INTEGER, INTENT(out) :: ivalue 112 SELECT CASE (sym_name) 113 CASE ("NF90_HDF5") 114 ivalue = NF90_HDF5 115 CASE DEFAULT 116 WRITE(*,*) "Warning: unknown case in GET_NF90_SYMBOL" 117 END SELECT 118 END SUBROUTINE GET_NF90_SYMBOL 42 119 #endif 43 120 44 121 !------------------ 45 END MODULE nc4 dummy122 END MODULE nc4interface
Note: See TracChangeset
for help on using the changeset viewer.