- Timestamp:
- 2010-11-09T16:38:45+01:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/nemo_v3_3_beta/NEMOGCM/NEMO/OPA_SRC/IOM/iom_nf90.F90
r2364 r2368 40 40 END INTERFACE 41 41 42 #if ! defined key_netcdf443 !!--------------------------------------------------------------------44 !! NOT 'key_netcdf4' Defines dummy routines for netcdf445 !! calls when compiling without netcdf4 libraries46 !!--------------------------------------------------------------------47 PUBLIC NF90_DEF_VAR_CHUNKING, NF90_DEF_VAR_DEFLATE ! contained below48 INTEGER :: NF90_HDF549 #endif50 42 !!---------------------------------------------------------------------- 51 43 !! NEMO/OPA 3.3 , NEMO Consortium (2010) … … 77 69 INTEGER :: ichunk ! temporary storage of nn_chunksz 78 70 INTEGER :: imode ! creation mode flag: NF90_CLOBBER or NF90_NOCLOBBER or NF90_HDF5 71 INTEGER :: ihdf5 ! local variable for retrieval of value for NF90_HDF5 79 72 LOGICAL :: llclobber ! local definition of ln_clobber 80 73 !--------------------------------------------------------------------- … … 116 109 IF( snc4set%luse ) THEN 117 110 IF(lwp) WRITE(numout,*) TRIM(clinfo)//' creating file: '//TRIM(cdname)//' in hdf5 (netcdf4) mode' 118 IF( llclobber ) THEN ; imode = IOR(NF90_HDF5, NF90_CLOBBER) 119 ELSE ; imode = IOR(NF90_HDF5, NF90_NOCLOBBER) 111 CALL GET_NF90_SYMBOL("NF90_HDF5", ihdf5) 112 IF( llclobber ) THEN ; imode = IOR(ihdf5, NF90_CLOBBER) 113 ELSE ; imode = IOR(ihdf5, NF90_NOCLOBBER) 120 114 ENDIF 121 115 CALL iom_nf90_check(NF90_CREATE( TRIM(cdname), imode, if90id ), clinfo) … … 496 490 ichunksz(4) = 1 ! Do not allow chunks to span the 497 491 ! unlimited dimension 498 CALL iom_nf90_check( NF90_DEF_VAR_CHUNKING(if90id, idvar, ichunkalg, ichunksz), clinfo)499 CALL iom_nf90_check( NF90_DEF_VAR_DEFLATE(if90id, idvar, ishuffle, ideflate, ideflate_level), clinfo)492 CALL iom_nf90_check(SET_NF90_DEF_VAR_CHUNKING(if90id, idvar, ichunkalg, ichunksz), clinfo) 493 CALL iom_nf90_check(SET_NF90_DEF_VAR_DEFLATE(if90id, idvar, ishuffle, ideflate, ideflate_level), clinfo) 500 494 IF(lwp) WRITE(numout,*) TRIM(clinfo)//' chunked ok. Chunks sizes: ', ichunksz 501 495 ENDIF … … 579 573 END SUBROUTINE iom_nf90_check 580 574 581 #if ! defined key_netcdf4582 583 !!--------------------------------------------------------------------584 !! NOT 'key_netcdf4' Defines dummy routines for netcdf4585 !! calls when compiling without netcdf4 libraries586 !!--------------------------------------------------------------------587 588 INTEGER FUNCTION NF90_DEF_VAR_CHUNKING(idum1, idum2, idum3, iarr1)589 !!--------------------------------------------------------------------590 !! *** SUBROUTINE NF90_DEF_VAR_CHUNKING ***591 !!592 !! ** Purpose : Dummy NetCDF4 routine to enable compiling with NetCDF3 libraries593 !!--------------------------------------------------------------------594 INTEGER, INTENT(in) :: idum1, idum2, idum3595 INTEGER, DIMENSION(4), INTENT(in) :: iarr1596 IF(lwp) WRITE(numout,*) 'Warning: Attempt to chunk output variable without NetCDF4 support'597 NF90_DEF_VAR_CHUNKING = -1598 END FUNCTION NF90_DEF_VAR_CHUNKING599 600 INTEGER FUNCTION NF90_DEF_VAR_DEFLATE(idum1, idum2, idum3, idum4, idum5)601 !!--------------------------------------------------------------------602 !! *** SUBROUTINE NF90_DEF_VAR_DEFLATE ***603 !!604 !! ** Purpose : Dummy NetCDF4 routine to enable compiling with NetCDF3 libraries605 !!--------------------------------------------------------------------606 INTEGER, INTENT(in) :: idum1, idum2, idum3, idum4, idum5607 IF(lwp) WRITE(numout,*) 'Warning: Attempt to compress output variable without NetCDF4 support'608 NF90_DEF_VAR_DEFLATE = -1609 END FUNCTION NF90_DEF_VAR_DEFLATE610 #endif611 612 575 !!====================================================================== 613 576 END MODULE iom_nf90
Note: See TracChangeset
for help on using the changeset viewer.