Ignore:
Timestamp:
2017-03-20T17:17:45+01:00 (4 years ago)
Author:
clem
Message:

synchronize trunk with 3.6

Location:
trunk/NEMOGCM/NEMO/LIM_SRC_3
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/LIM_SRC_3/ice.F90

    r7646 r7813  
    232232   LOGICAL , PUBLIC ::   ln_it_qnsice     !: iterate surface flux with changing surface temperature or not (F) 
    233233   INTEGER , PUBLIC ::   nn_monocat       !: virtual ITD mono-category parameterizations (1) or not (0) 
     234   REAL(wp), PUBLIC ::   rn_cdsn          !: thermal conductivity of the snow [W/m/K] 
    234235                                          ! -- limthd_dh -- ! 
    235236   LOGICAL , PUBLIC ::   ln_limdH         !: activate ice thickness change from growing/melting (T) or not (F) 
     
    458459   FUNCTION ice_alloc() 
    459460      !!----------------------------------------------------------------- 
    460       !!               *** Routine ice_alloc_2 *** 
     461      !!               *** Routine ice_alloc *** 
    461462      !!----------------------------------------------------------------- 
    462463      INTEGER :: ice_alloc 
  • trunk/NEMOGCM/NEMO/LIM_SRC_3/limrst.F90

    r7753 r7813  
    147147         z2d(:,:) = t_su(:,:,jl) 
    148148         CALL iom_rstput( iter, nitrst, numriw, znam , z2d ) 
    149       END DO 
    150  
    151       DO jl = 1, jpl  
    152          WRITE(zchar,'(I2.2)') jl 
    153149         znam = 'tempt_sl1'//'_htc'//zchar 
    154150         z2d(:,:) = e_s(:,:,1,jl) 
    155151         CALL iom_rstput( iter, nitrst, numriw, znam , z2d ) 
    156       END DO 
    157  
    158       DO jl = 1, jpl  
    159          WRITE(zchar,'(I2.2)') jl 
    160152         DO jk = 1, nlay_i  
    161153            WRITE(zchar1,'(I2.2)') jk 
     
    376368         CALL iom_get( numrir, jpdom_autoglo, znam , z2d ) 
    377369         t_su(:,:,jl) = z2d(:,:) 
    378       END DO 
    379  
    380       DO jl = 1, jpl  
    381          WRITE(zchar,'(I2.2)') jl 
    382370         znam = 'tempt_sl1'//'_htc'//zchar 
    383371         CALL iom_get( numrir, jpdom_autoglo, znam , z2d ) 
    384372         e_s(:,:,1,jl) = z2d(:,:) 
    385       END DO 
    386  
    387       DO jl = 1, jpl  
    388          WRITE(zchar,'(I2.2)') jl 
    389373         DO jk = 1, nlay_i  
    390374            WRITE(zchar1,'(I2.2)') jk 
  • trunk/NEMOGCM/NEMO/LIM_SRC_3/limthd.F90

    r7753 r7813  
    571571      !!------------------------------------------------------------------- 
    572572      INTEGER  ::   ios                 ! Local integer output status for namelist read 
    573       NAMELIST/namicethd/ rn_kappa_i, nn_conv_dif, rn_terr_dif, nn_ice_thcon,ln_it_qnsice,nn_monocat,  & 
    574          &                ln_limdH, rn_betas,                                                          & 
    575          &                ln_limdA, rn_beta, rn_dmin,                                                  & 
     573      NAMELIST/namicethd/ rn_kappa_i, nn_conv_dif, rn_terr_dif, nn_ice_thcon, ln_it_qnsice, nn_monocat, rn_cdsn,  & 
     574         &                ln_limdH, rn_betas,                                                                     & 
     575         &                ln_limdA, rn_beta, rn_dmin,                                                             & 
    576576         &                ln_limdO, rn_hnewice, ln_frazil, rn_maxfrazb, rn_vfrazb, rn_Cfrazb, rn_himin 
    577577      !!------------------------------------------------------------------- 
     
    585585902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicethd in configuration namelist', lwp ) 
    586586      IF(lwm) WRITE ( numoni, namicethd ) 
     587      ! 
     588      IF ( ( jpl > 1 ) .AND. ( nn_monocat == 1 ) ) THEN  
     589         nn_monocat = 0 
     590         IF(lwp) WRITE(numout,*) 
     591         IF(lwp) WRITE(numout,*) '   nn_monocat forced to 0 as jpl>1, i.e. multi-category case is chosen' 
     592      ENDIF 
    587593      ! 
    588594      IF(lwp) THEN                          ! control print 
     
    596602         WRITE(numout,*)'      iterate the surface non-solar flux (T) or not (F)       ln_it_qnsice = ', ln_it_qnsice 
    597603         WRITE(numout,*)'      virtual ITD mono-category parameterizations (1) or not  nn_monocat   = ', nn_monocat 
     604         WRITE(numout,*)'      thermal conductivity of the snow                        rn_cdsn      = ', rn_cdsn 
    598605         WRITE(numout,*)'   -- limthd_dh --' 
    599606         WRITE(numout,*)'      activate ice thick change from top/bot (T) or not (F)   ln_limdH     = ', ln_limdH 
     
    614621         WRITE(numout,*)'      check heat conservation in the ice/snow                 con_i        = ', con_i 
    615622      ENDIF 
    616       IF( jpl > 1 .AND. nn_monocat == 1 ) THEN  
    617          nn_monocat = 0 
    618          IF(lwp) WRITE(numout,*) 
    619          IF(lwp) WRITE(numout,*) '   nn_monocat forced to 0 as jpl>1, i.e. multi-category case is chosen' 
    620       ENDIF 
    621623      ! 
    622624   END SUBROUTINE lim_thd_init 
  • trunk/NEMOGCM/NEMO/LIM_SRC_3/limthd_dif.F90

    r7646 r7813  
    376376 
    377377               ! Effective thickness he (zhe) 
    378                zfac     = 1._wp / ( rcdsn + zkimean ) 
    379                zratio_s = rcdsn   * zfac 
     378               zfac     = 1._wp / ( rn_cdsn + zkimean ) 
     379               zratio_s = rn_cdsn   * zfac 
    380380               zratio_i = zkimean * zfac 
    381381               zhe      = zratio_s * ht_i_1d(ji) + zratio_i * ht_s_1d(ji) 
     
    400400         DO ji = kideb, kiut 
    401401            zfac                  =  1. / MAX( epsi10 , zh_s(ji) ) 
    402             zkappa_s(ji,0)        = zghe(ji) * rcdsn * zfac 
    403             zkappa_s(ji,nlay_s)   = zghe(ji) * rcdsn * zfac 
     402            zkappa_s(ji,0)        = zghe(ji) * rn_cdsn * zfac 
     403            zkappa_s(ji,nlay_s)   = zghe(ji) * rn_cdsn * zfac 
    404404         END DO 
    405405 
    406406         DO jk = 1, nlay_s-1 
    407407            DO ji = kideb , kiut 
    408                zkappa_s(ji,jk)    = zghe(ji) * 2.0 * rcdsn / MAX( epsi10, 2.0 * zh_s(ji) ) 
     408               zkappa_s(ji,jk)    = zghe(ji) * 2.0 * rn_cdsn / MAX( epsi10, 2.0 * zh_s(ji) ) 
    409409            END DO 
    410410         END DO 
     
    422422            zkappa_i(ji,0)        = zghe(ji) * ztcond_i(ji,0) * zfac 
    423423            zkappa_i(ji,nlay_i)   = zghe(ji) * ztcond_i(ji,nlay_i) * zfac 
    424             zkappa_s(ji,nlay_s)   = zghe(ji) * zghe(ji) * 2.0 * rcdsn * ztcond_i(ji,0) / &  
    425            &                        MAX( epsi10, ( zghe(ji) * ztcond_i(ji,0) * zh_s(ji) + zghe(ji) * rcdsn * zh_i(ji) ) ) 
     424            zkappa_s(ji,nlay_s)   = zghe(ji) * zghe(ji) * 2.0 * rn_cdsn * ztcond_i(ji,0) / &  
     425           &                        MAX( epsi10, ( zghe(ji) * ztcond_i(ji,0) * zh_s(ji) + zghe(ji) * rn_cdsn * zh_i(ji) ) ) 
    426426            zkappa_i(ji,0)        = zkappa_s(ji,nlay_s) * isnow(ji) + zkappa_i(ji,0) * ( 1._wp - isnow(ji) ) 
    427427         END DO 
  • trunk/NEMOGCM/NEMO/LIM_SRC_3/limvar.F90

    r7753 r7813  
    677677               zht_i(ji,1:jpl) = 0._wp 
    678678               za_i (ji,1:jpl) = 0._wp 
    679                itest(:)        = 0            
     679               itest(:)        = 0       
    680680                
    681681               ! *** case very thin ice: fill only category 1 
     
    722722                
    723723               ENDIF ! case ice is thick or thin 
    724                 
     724             
    725725               !--------------------- 
    726726               ! Compatibility tests 
     
    747747         ENDIF ! if zhti > 0 
    748748      END DO ! i loop 
    749        
     749 
    750750      ! ------------------------------------------------ 
    751751      ! Adding Snow in each category where za_i is not 0 
Note: See TracChangeset for help on using the changeset viewer.