New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 6225 for branches/2014/dev_r4704_NOC5_MPP_BDY_UPDATE/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfini.F90 – NEMO

Ignore:
Timestamp:
2016-01-08T10:35:19+01:00 (8 years ago)
Author:
jamesharle
Message:

Update MPP_BDY_UPDATE branch to be consistent with head of trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2014/dev_r4704_NOC5_MPP_BDY_UPDATE/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfini.F90

    r4677 r6225  
    66   !! History :  8.0  ! 1997-06  (G. Madec)  Original code from inimix 
    77   !!            1.0  ! 2002-08  (G. Madec)  F90 : free form 
    8    !!             -   ! 2005-06  (C. Ethe) KPP parameterization 
     8   !!             -   ! 2005-06  (C. Ethe) KPP scheme 
    99   !!             -   ! 2009-07  (G. Madec) add avmb, avtb in restart for cen2 advection 
     10   !!            3.7  ! 2014-12  (G. Madec) remove KPP scheme 
    1011   !!---------------------------------------------------------------------- 
    1112 
     
    1415   !!---------------------------------------------------------------------- 
    1516   USE par_oce         ! mesh and scale factors 
    16    USE ldftra_oce      ! ocean active tracers: lateral physics 
    17    USE ldfdyn_oce      ! ocean dynamics lateral physics 
    1817   USE zdf_oce         ! TKE vertical mixing           
    19    USE lib_mpp         ! distribued memory computing 
     18   USE sbc_oce         ! surface module (only for nn_isf in the option compatibility test) 
    2019   USE zdftke          ! TKE vertical mixing 
    2120   USE zdfgls          ! GLS vertical mixing 
    22    USE zdfkpp          ! KPP vertical mixing           
     21   USE zdfric          ! Richardson vertical mixing    
    2322   USE zdfddm          ! double diffusion mixing       
    2423   USE zdfevd          ! enhanced vertical diffusion   
    25    USE zdfric          ! Richardson vertical mixing    
    2624   USE tranpc          ! convection: non penetrative adjustment 
    2725   USE ldfslp          ! iso-neutral slopes 
    28  
     26   ! 
    2927   USE in_out_manager  ! I/O manager 
    3028   USE iom             ! IOM library 
     29   USE lib_mpp         ! distribued memory computing 
    3130 
    3231   IMPLICIT NONE 
     
    5049      !! ** Method  :   Read namelist namzdf, control logicals  
    5150      !!---------------------------------------------------------------------- 
    52       INTEGER ::   ioptio       ! temporary scalar 
    53       INTEGER ::   ios 
     51      INTEGER ::   ioptio, ios       ! local integers 
    5452      !! 
    5553      NAMELIST/namzdf/ rn_avm0, rn_avt0, nn_avb, nn_havtb, ln_zdfexp, nn_zdfexp,   & 
     
    111109         ioptio = ioptio+1 
    112110      ENDIF 
    113       IF( lk_zdfkpp ) THEN 
    114          IF(lwp) WRITE(numout,*) '      KPP dependent eddy coefficients' 
    115          ioptio = ioptio+1 
    116       ENDIF 
    117       IF( ioptio == 0 .OR. ioptio > 1 .AND. .NOT. lk_esopa )   & 
     111      IF( ioptio == 0 .OR. ioptio > 1 )   & 
    118112         &   CALL ctl_stop( ' one and only one vertical diffusion option has to be defined ' ) 
     113      IF( ( lk_zdfric .OR. lk_zdfgls ) .AND. ln_isfcav )   & 
     114         &   CALL ctl_stop( ' only zdfcst and zdftke were tested with ice shelves cavities ' ) 
    119115      ! 
    120116      !                               ! ... Convection 
     
    122118      IF(lwp) WRITE(numout,*) '   convection :' 
    123119      ! 
    124       IF( ln_zdfnpc )   CALL ctl_stop( ' zdf_init: non penetrative convective scheme is not working',   & 
    125          &                                       ' set ln_zdfnpc to FALSE' ) 
     120#if defined key_top 
     121      IF( ln_zdfnpc )   CALL ctl_stop( ' zdf_init: npc scheme is not working with key_top' ) 
     122#endif 
    126123      ! 
    127124      ioptio = 0 
     
    140137         IF(lwp) WRITE(numout,*) '      use the GLS closure scheme' 
    141138      ENDIF 
    142       IF( lk_zdfkpp ) THEN 
    143          IF(lwp) WRITE(numout,*) '      use the KPP closure scheme' 
    144          IF(lk_mpp) THEN 
    145             IF(lwp) WRITE(numout,cform_err) 
    146             IF(lwp) WRITE(numout,*) 'The KPP scheme is not ready to run in MPI' 
    147          ENDIF 
    148       ENDIF 
    149       IF ( ioptio > 1 .AND. .NOT. lk_esopa )   CALL ctl_stop( ' chose between ln_zdfnpc and ln_zdfevd' ) 
    150       IF( ioptio == 0 .AND. .NOT.( lk_zdftke .OR. lk_zdfgls .OR. lk_zdfkpp ) )           & 
    151          CALL ctl_stop( ' except for TKE, GLS or KPP physics, a convection scheme is',   & 
     139      IF ( ioptio > 1 )   CALL ctl_stop( ' chose between ln_zdfnpc and ln_zdfevd' ) 
     140      IF( ioptio == 0 .AND. .NOT.( lk_zdftke .OR. lk_zdfgls ) )           & 
     141         CALL ctl_stop( ' except for TKE or GLS physics, a convection scheme is',   & 
    152142         &              ' required: ln_zdfevd or ln_zdfnpc logicals' ) 
    153143 
Note: See TracChangeset for help on using the changeset viewer.