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 5534 for branches/UKMO/dev_r5107_mld_zint/NEMOGCM/NEMO/LIM_SRC_3 – NEMO

Ignore:
Timestamp:
2015-07-02T15:57:10+02:00 (9 years ago)
Author:
davestorkey
Message:

Update UKMO/dev_r5107_mld_zint branch to rev 5518 of trunk
(= branching point of NEMO 3.6_stable).

Location:
branches/UKMO/dev_r5107_mld_zint/NEMOGCM/NEMO/LIM_SRC_3
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5107_mld_zint/NEMOGCM/NEMO/LIM_SRC_3/limthd_dh.F90

    r5447 r5534  
    3030 
    3131   PUBLIC   lim_thd_dh      ! called by lim_thd 
    32    PUBLIC   lim_thd_snwblow ! called in sbcblk/sbccpl and here 
     32   PUBLIC   lim_thd_snwblow ! called in sbcblk/sbcclio/sbccpl and here 
    3333 
    3434   INTERFACE lim_thd_snwblow 
     
    122122      END SELECT 
    123123 
    124       CALL wrk_alloc( jpij, zqprec, zq_su, zq_bo, zf_tt, zq_rema ) 
    125       CALL wrk_alloc( jpij, zdh_s_mel, zdh_s_pre, zdh_s_sub, zqh_i, zqh_s, zq_s, zsnw ) 
     124      CALL wrk_alloc( jpij, zqprec, zq_su, zq_bo, zf_tt, zq_rema, zsnw ) 
     125      CALL wrk_alloc( jpij, zdh_s_mel, zdh_s_pre, zdh_s_sub, zqh_i, zqh_s, zq_s ) 
    126126      CALL wrk_alloc( jpij, nlay_i, zdeltah, zh_i ) 
    127127      CALL wrk_alloc( jpij, nlay_i, icount ) 
    128        
     128        
    129129      dh_i_surf  (:) = 0._wp ; dh_i_bott  (:) = 0._wp ; dh_snowice(:) = 0._wp 
    130130      dsm_i_se_1d(:) = 0._wp ; dsm_i_si_1d(:) = 0._wp    
    131   
    132       zqprec (:) = 0._wp ; zq_su  (:) = 0._wp ; zq_bo  (:) = 0._wp ; zf_tt  (:) = 0._wp 
    133       zq_rema(:) = 0._wp 
    134  
    135       zdh_s_pre(:) = 0._wp 
    136       zdh_s_mel(:) = 0._wp 
    137       zdh_s_sub(:) = 0._wp 
    138       zqh_s    (:) = 0._wp       
    139       zqh_i    (:) = 0._wp    
    140  
    141       zh_i      (:,:) = 0._wp        
    142       zdeltah   (:,:) = 0._wp        
    143       icount    (:,:) = 0 
     131 
     132      zqprec   (:) = 0._wp ; zq_su    (:) = 0._wp ; zq_bo    (:) = 0._wp ; zf_tt(:) = 0._wp 
     133      zq_rema  (:) = 0._wp ; zsnw     (:) = 0._wp 
     134      zdh_s_mel(:) = 0._wp ; zdh_s_pre(:) = 0._wp ; zdh_s_sub(:) = 0._wp ; zqh_i(:) = 0._wp 
     135      zqh_s    (:) = 0._wp ; zq_s     (:) = 0._wp      
     136 
     137      zdeltah(:,:) = 0._wp ; zh_i(:,:) = 0._wp        
     138      icount (:,:) = 0 
     139 
    144140 
    145141      ! Initialize enthalpy at nlay_i+1 
     
    223219      ! Martin Vancoppenolle, December 2006 
    224220 
     221      CALL lim_thd_snwblow( 1. - at_i_1d(kideb:kiut), zsnw(kideb:kiut) ) ! snow distribution over ice after wind blowing 
     222 
    225223      zdeltah(:,:) = 0._wp 
    226       CALL lim_thd_snwblow( 1. - at_i_1d, zsnw ) ! snow distribution over ice after wind blowing 
    227224      DO ji = kideb, kiut 
    228225         !----------- 
     
    689686      WHERE( ht_i_1d == 0._wp ) a_i_1d = 0._wp 
    690687       
    691       CALL wrk_dealloc( jpij, zqprec, zq_su, zq_bo, zf_tt, zq_rema ) 
    692       CALL wrk_dealloc( jpij, zdh_s_mel, zdh_s_pre, zdh_s_sub, zqh_i, zqh_s, zq_s, zsnw ) 
     688      CALL wrk_dealloc( jpij, zqprec, zq_su, zq_bo, zf_tt, zq_rema, zsnw ) 
     689      CALL wrk_dealloc( jpij, zdh_s_mel, zdh_s_pre, zdh_s_sub, zqh_i, zqh_s, zq_s ) 
    693690      CALL wrk_dealloc( jpij, nlay_i, zdeltah, zh_i ) 
    694691      CALL wrk_dealloc( jpij, nlay_i, icount ) 
     
    703700   !!-------------------------------------------------------------------------- 
    704701   SUBROUTINE lim_thd_snwblow_2d( pin, pout ) 
    705       REAL(wp), DIMENSION(:,:), INTENT(in) :: pin   ! previous fraction lead ( pfrld or (1. - a_i_b) ) 
    706       REAL(wp), DIMENSION(:,:), INTENT(out) :: pout 
     702      REAL(wp), DIMENSION(:,:), INTENT(in   ) :: pin   ! previous fraction lead ( pfrld or (1. - a_i_b) ) 
     703      REAL(wp), DIMENSION(:,:), INTENT(inout) :: pout 
    707704      pout = ( 1._wp - ( pin )**rn_betas ) 
    708705   END SUBROUTINE lim_thd_snwblow_2d 
    709706 
    710707   SUBROUTINE lim_thd_snwblow_1d( pin, pout ) 
    711       REAL(wp), DIMENSION(:), INTENT(in) :: pin 
    712       REAL(wp), DIMENSION(:), INTENT(out) :: pout 
     708      REAL(wp), DIMENSION(:), INTENT(in   ) :: pin 
     709      REAL(wp), DIMENSION(:), INTENT(inout) :: pout 
    713710      pout = ( 1._wp - ( pin )**rn_betas ) 
    714711   END SUBROUTINE lim_thd_snwblow_1d 
  • branches/UKMO/dev_r5107_mld_zint/NEMOGCM/NEMO/LIM_SRC_3/limthd_dif.F90

    r5447 r5534  
    756756 
    757757      ! --- diagnose the change in non-solar flux due to surface temperature change --- ! 
    758       IF ( ln_it_qnsice ) hfx_err_dif_1d(:) = hfx_err_dif_1d(:) - ( qns_ice_1d(:)  - zqns_ice_b(:) ) * a_i_1d(:)  
     758      IF ( ln_it_qnsice ) THEN 
     759         DO ji = kideb, kiut 
     760            hfx_err_dif_1d(ji) = hfx_err_dif_1d(ji) - ( qns_ice_1d(ji)  - zqns_ice_b(ji) ) * a_i_1d(ji)  
     761         END DO 
     762      END IF 
    759763 
    760764      ! --- diag conservation imbalance on heat diffusion - PART 2 --- ! 
     
    790794      CALL wrk_dealloc( jpij, numeqmin, numeqmax ) 
    791795      CALL wrk_dealloc( jpij, isnow, ztsub, ztsubit, zh_i, zh_s, zfsw ) 
    792       CALL wrk_dealloc( jpij, zf, dzf, zerrit, zdifcase, zftrice, zihic, zghe ) 
     796      CALL wrk_dealloc( jpij, zf, dzf, zqns_ice_b, zerrit, zdifcase, zftrice, zihic, zghe ) 
    793797      CALL wrk_dealloc( jpij,nlay_i+1, ztcond_i, zradtr_i, zradab_i, zkappa_i, ztib, zeta_i, ztitemp, z_i, zspeche_i, kjstart = 0 ) 
    794798      CALL wrk_dealloc( jpij,nlay_s+1,           zradtr_s, zradab_s, zkappa_s, ztsb, zeta_s, ztstemp, z_s, kjstart = 0 ) 
  • branches/UKMO/dev_r5107_mld_zint/NEMOGCM/NEMO/LIM_SRC_3/limwri.F90

    r5447 r5534  
    6060      REAL(wp) ::  z1_365 
    6161      REAL(wp) ::  ztmp 
    62       REAL(wp), POINTER, DIMENSION(:,:,:) ::  zoi, zei 
     62      REAL(wp), POINTER, DIMENSION(:,:,:) ::  zoi, zei, zt_i, zt_s 
    6363      REAL(wp), POINTER, DIMENSION(:,:)   ::  z2d, z2da, z2db, zswi    ! 2D workspace 
    6464      !!------------------------------------------------------------------- 
     
    6666      IF( nn_timing == 1 )  CALL timing_start('limwri') 
    6767 
    68       CALL wrk_alloc( jpi, jpj, jpl, zoi, zei ) 
     68      CALL wrk_alloc( jpi, jpj, jpl, zoi, zei, zt_i, zt_s ) 
    6969      CALL wrk_alloc( jpi, jpj     , z2d, z2da, z2db, zswi ) 
    7070 
     
    243243      CALL iom_put( "snowthic_cat"     , ht_s        )        ! snow depth for categories 
    244244      CALL iom_put( "salinity_cat"     , sm_i        )        ! salinity for categories 
     245 
     246      ! ice temperature 
     247      IF ( iom_use( "icetemp_cat" ) ) THEN  
     248         zt_i(:,:,:) = SUM( t_i(:,:,:,:), dim=3 ) * r1_nlay_i 
     249         CALL iom_put( "icetemp_cat"   , zt_i - rt0  ) 
     250      ENDIF 
     251       
     252      ! snow temperature 
     253      IF ( iom_use( "snwtemp_cat" ) ) THEN  
     254         zt_s(:,:,:) = SUM( t_s(:,:,:,:), dim=3 ) * r1_nlay_s 
     255         CALL iom_put( "snwtemp_cat"   , zt_s - rt0  ) 
     256      ENDIF 
    245257 
    246258      ! Compute ice age 
     
    280292      !     not yet implemented 
    281293       
    282       CALL wrk_dealloc( jpi, jpj, jpl, zoi, zei ) 
     294      CALL wrk_dealloc( jpi, jpj, jpl, zoi, zei, zt_i, zt_s ) 
    283295      CALL wrk_dealloc( jpi, jpj     , z2d, zswi, z2da, z2db ) 
    284296 
Note: See TracChangeset for help on using the changeset viewer.