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 8563 for branches/2017/dev_r8183_ICEMODEL/NEMOGCM/NEMO/LIM_SRC_3/icethd_dh.F90 – NEMO

Ignore:
Timestamp:
2017-09-26T15:24:17+02:00 (7 years ago)
Author:
clem
Message:

change variable names (ht_s => h_s & ht_i => h_i)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2017/dev_r8183_ICEMODEL/NEMOGCM/NEMO/LIM_SRC_3/icethd_dh.F90

    r8562 r8563  
    121121      DO jk = 1, nlay_i 
    122122         DO ji = 1, nidx 
    123             h_i_old (ji,jk) = ht_i_1d(ji) * r1_nlay_i 
     123            h_i_old (ji,jk) = h_i_1d(ji) * r1_nlay_i 
    124124            eh_i_old(ji,jk) = e_i_1d(ji,jk) * h_i_old(ji,jk) 
    125125         END DO 
     
    145145         IF( t_s_1d(ji,1) > rt0 ) THEN !!! Internal melting 
    146146            ! Contribution to heat flux to the ocean [W.m-2], < 0   
    147             hfx_res_1d(ji) = hfx_res_1d(ji) + e_s_1d(ji,1) * ht_s_1d(ji) * a_i_1d(ji) * r1_rdtice 
     147            hfx_res_1d(ji) = hfx_res_1d(ji) + e_s_1d(ji,1) * h_s_1d(ji) * a_i_1d(ji) * r1_rdtice 
    148148            ! Contribution to mass flux 
    149             wfx_snw_sum_1d(ji) = wfx_snw_sum_1d(ji) + rhosn * ht_s_1d(ji) * a_i_1d(ji) * r1_rdtice 
     149            wfx_snw_sum_1d(ji) = wfx_snw_sum_1d(ji) + rhosn * h_s_1d(ji) * a_i_1d(ji) * r1_rdtice 
    150150            ! updates 
    151             ht_s_1d(ji)   = 0._wp 
     151            h_s_1d(ji)   = 0._wp 
    152152            e_s_1d (ji,1) = 0._wp 
    153153            t_s_1d (ji,1) = rt0 
     
    160160      DO jk = 1, nlay_i 
    161161         DO ji = 1, nidx 
    162             zh_i(ji,jk) = ht_i_1d(ji) * r1_nlay_i 
     162            zh_i(ji,jk) = h_i_1d(ji) * r1_nlay_i 
    163163            zeh_i(ji)   = zeh_i(ji) + e_i_1d(ji,jk) * zh_i(ji,jk) 
    164164         END DO 
     
    216216 
    217217         ! update thickness 
    218          ht_s_1d(ji) = MAX( 0._wp , ht_s_1d(ji) + zdh_s_pre(ji) ) 
     218         h_s_1d(ji) = MAX( 0._wp , h_s_1d(ji) + zdh_s_pre(ji) ) 
    219219      END DO 
    220220 
     
    225225         DO ji = 1, nidx 
    226226            ! thickness change 
    227             rswitch          = 1._wp - MAX( 0._wp, SIGN( 1._wp, - ht_s_1d(ji) ) )  
     227            rswitch          = 1._wp - MAX( 0._wp, SIGN( 1._wp, - h_s_1d(ji) ) )  
    228228            rswitch          = rswitch * ( MAX( 0._wp, SIGN( 1._wp, e_s_1d(ji,jk) - epsi20 ) ) )  
    229229            zdeltah  (ji,jk) = - rswitch * zq_su(ji) / MAX( e_s_1d(ji,jk), epsi20 ) 
    230             zdeltah  (ji,jk) = MAX( zdeltah(ji,jk) , - ht_s_1d(ji) ) ! bound melting 
     230            zdeltah  (ji,jk) = MAX( zdeltah(ji,jk) , - h_s_1d(ji) ) ! bound melting 
    231231            zdh_s_mel(ji)    = zdh_s_mel(ji) + zdeltah(ji,jk)     
    232232            ! heat used to melt snow(W.m-2, >0) 
     
    236236            ! updates available heat + thickness 
    237237            zq_su (ji)  = MAX( 0._wp , zq_su (ji) + zdeltah(ji,jk) * e_s_1d(ji,jk) ) 
    238             ht_s_1d(ji) = MAX( 0._wp , ht_s_1d(ji) + zdeltah(ji,jk) ) 
     238            h_s_1d(ji) = MAX( 0._wp , h_s_1d(ji) + zdeltah(ji,jk) ) 
    239239         END DO 
    240240      END DO 
     
    247247      zdeltah(1:nidx,:) = 0._wp 
    248248      DO ji = 1, nidx 
    249          zdh_s_sub(ji)  = MAX( - ht_s_1d(ji) , - evap_ice_1d(ji) * r1_rhosn * rdt_ice ) 
     249         zdh_s_sub(ji)  = MAX( - h_s_1d(ji) , - evap_ice_1d(ji) * r1_rhosn * rdt_ice ) 
    250250         ! remaining evap in kg.m-2 (used for ice melting later on) 
    251251         zevap_rema(ji)  = evap_ice_1d(ji) * rdt_ice + zdh_s_sub(ji) * rhosn 
     
    258258 
    259259         ! new snow thickness 
    260          ht_s_1d(ji)    =  MAX( 0._wp , ht_s_1d(ji) + zdh_s_sub(ji) ) 
     260         h_s_1d(ji)    =  MAX( 0._wp , h_s_1d(ji) + zdh_s_sub(ji) ) 
    261261         ! update precipitations after sublimation and correct sublimation 
    262262         zdh_s_pre(ji) = zdh_s_pre(ji) + zdeltah(ji,1) 
     
    275275      DO jk = 1, nlay_s 
    276276         DO ji = 1,nidx 
    277             rswitch       = MAX( 0._wp , SIGN( 1._wp, ht_s_1d(ji) - epsi20 ) ) 
    278             e_s_1d(ji,jk) = rswitch / MAX( ht_s_1d(ji), epsi20 ) *           & 
     277            rswitch       = MAX( 0._wp , SIGN( 1._wp, h_s_1d(ji) - epsi20 ) ) 
     278            e_s_1d(ji,jk) = rswitch / MAX( h_s_1d(ji), epsi20 ) *           & 
    279279              &            ( ( zdh_s_pre(ji)               ) * zqprec(ji) +  & 
    280               &              ( ht_s_1d(ji) - zdh_s_pre(ji) ) * rhosn * ( cpic * ( rt0 - t_s_1d(ji,jk) ) + lfus ) ) 
     280              &              ( h_s_1d(ji) - zdh_s_pre(ji) ) * rhosn * ( cpic * ( rt0 - t_s_1d(ji,jk) ) + lfus ) ) 
    281281         END DO 
    282282      END DO 
     
    376376      ! update ice thickness 
    377377      DO ji = 1, nidx 
    378          ht_i_1d(ji) =  MAX( 0._wp , ht_i_1d(ji) + dh_i_surf(ji) + dh_i_sub(ji) ) 
     378         h_i_1d(ji) =  MAX( 0._wp , h_i_1d(ji) + dh_i_surf(ji) + dh_i_sub(ji) ) 
    379379      END DO 
    380380 
     
    555555      !------------------------------------------- 
    556556      DO ji = 1, nidx 
    557          ht_i_1d(ji) =  MAX( 0._wp , ht_i_1d(ji) + dh_i_bott(ji) ) 
     557         h_i_1d(ji) =  MAX( 0._wp , h_i_1d(ji) + dh_i_bott(ji) ) 
    558558      END DO   
    559559 
     
    566566      DO ji = 1, nidx 
    567567         zq_rema(ji)     = zq_su(ji) + zq_bo(ji)  
    568          rswitch         = 1._wp - MAX( 0._wp, SIGN( 1._wp, - ht_s_1d(ji) ) )   ! =1 if snow 
     568         rswitch         = 1._wp - MAX( 0._wp, SIGN( 1._wp, - h_s_1d(ji) ) )   ! =1 if snow 
    569569         rswitch         = rswitch * MAX( 0._wp, SIGN( 1._wp, e_s_1d(ji,1) - epsi20 ) ) 
    570570         zdeltah  (ji,1) = - rswitch * zq_rema(ji) / MAX( e_s_1d(ji,1), epsi20 ) 
    571          zdeltah  (ji,1) = MIN( 0._wp , MAX( zdeltah(ji,1) , - ht_s_1d(ji) ) ) ! bound melting 
     571         zdeltah  (ji,1) = MIN( 0._wp , MAX( zdeltah(ji,1) , - h_s_1d(ji) ) ) ! bound melting 
    572572         dh_s_tot (ji)   = dh_s_tot(ji)  + zdeltah(ji,1) 
    573          ht_s_1d   (ji)  = ht_s_1d(ji)   + zdeltah(ji,1) 
     573         h_s_1d   (ji)  = h_s_1d(ji)   + zdeltah(ji,1) 
    574574         
    575575         zq_rema(ji)     = zq_rema(ji) + zdeltah(ji,1) * e_s_1d(ji,1)                ! update available heat (J.m-2) 
     
    594594      DO ji = 1, nidx 
    595595         ! 
    596          dh_snowice(ji) = MAX(  0._wp , ( rhosn * ht_s_1d(ji) + (rhoic-rau0) * ht_i_1d(ji) ) * z1_rho ) 
    597  
    598          ht_i_1d(ji)    = ht_i_1d(ji) + dh_snowice(ji) 
    599          ht_s_1d(ji)    = ht_s_1d(ji) - dh_snowice(ji) 
     596         dh_snowice(ji) = MAX(  0._wp , ( rhosn * h_s_1d(ji) + (rhoic-rau0) * h_i_1d(ji) ) * z1_rho ) 
     597 
     598         h_i_1d(ji)    = h_i_1d(ji) + dh_snowice(ji) 
     599         h_s_1d(ji)    = h_s_1d(ji) - dh_snowice(ji) 
    600600 
    601601         ! Contribution to energy flux to the ocean [J/m2], >0 (if sst<0) 
     
    632632      !------------------------------------------- 
    633633      DO ji = 1, nidx 
    634          rswitch     =  1.0 - MAX( 0._wp , SIGN( 1._wp , - ht_i_1d(ji) ) )  
     634         rswitch     =  1.0 - MAX( 0._wp , SIGN( 1._wp , - h_i_1d(ji) ) )  
    635635         t_su_1d(ji) =  rswitch * t_su_1d(ji) + ( 1.0 - rswitch ) * rt0 
    636636      END DO 
     
    639639         DO ji = 1,nidx 
    640640            ! mask enthalpy 
    641             rswitch       = 1._wp - MAX(  0._wp , SIGN( 1._wp, - ht_s_1d(ji) )  ) 
     641            rswitch       = 1._wp - MAX(  0._wp , SIGN( 1._wp, - h_s_1d(ji) )  ) 
    642642            e_s_1d(ji,jk) = rswitch * e_s_1d(ji,jk) 
    643643            ! recalculate t_s_1d from e_s_1d 
     
    646646      END DO 
    647647 
    648       ! --- ensure that a_i = 0 where ht_i = 0 --- 
    649       WHERE( ht_i_1d(1:nidx) == 0._wp )   a_i_1d(1:nidx) = 0._wp 
     648      ! --- ensure that a_i = 0 where h_i = 0 --- 
     649      WHERE( h_i_1d(1:nidx) == 0._wp )   a_i_1d(1:nidx) = 0._wp 
    650650      ! 
    651651   END SUBROUTINE ice_thd_dh 
Note: See TracChangeset for help on using the changeset viewer.