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 5167 for trunk/NEMOGCM/NEMO/LIM_SRC_3/limupdate1.F90 – NEMO

Ignore:
Timestamp:
2015-03-24T18:35:00+01:00 (9 years ago)
Author:
clem
Message:

LIM3 bug fix. see ticket #1492 (forthcoming update) which also solve ticket #1497

File:
1 edited

Legend:

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

    r5134 r5167  
    6969      IF( ln_limdiahsb ) CALL lim_cons_hsm(0, 'limupdate1', zvi_b, zsmv_b, zei_b, zfw_b, zfs_b, zft_b) 
    7070 
    71       CALL lim_var_glo2eqv 
    7271      !---------------------------------------------------- 
    7372      ! ice concentration should not exceed amax  
     
    8887      END DO 
    8988     
    90       !---------------------------------------------------- 
    91       ! Rebin categories with thickness out of bounds 
    92       !---------------------------------------------------- 
    93       IF ( jpl > 1 ) CALL lim_itd_th_reb(1, jpl) 
    94  
    95       !----------------- 
    96       ! zap small values 
    97       !----------------- 
    98       CALL lim_var_zapsmall 
    99  
    10089      !--------------------- 
    10190      ! Ice salinity bounds 
     
    10695               DO ji = 1, jpi 
    10796                  zsal            = smv_i(ji,jj,jl) 
    108                   smv_i(ji,jj,jl) = sm_i(ji,jj,jl) * v_i(ji,jj,jl) 
    10997                  ! salinity stays in bounds 
    11098                  rswitch         = 1._wp - MAX( 0._wp, SIGN( 1._wp, - v_i(ji,jj,jl) ) ) 
     
    117105      ENDIF 
    118106 
     107      !---------------------------------------------------- 
     108      ! Rebin categories with thickness out of bounds 
     109      !---------------------------------------------------- 
     110      IF ( jpl > 1 ) CALL lim_itd_th_reb(1, jpl) 
     111 
     112      !----------------- 
     113      ! zap small values 
     114      !----------------- 
     115      CALL lim_var_zapsmall 
     116 
     117      ! ------------------------------------------------- 
     118      ! Diagnostics 
     119      ! ------------------------------------------------- 
     120      DO jl  = 1, jpl 
     121         afx_dyn(:,:) = afx_dyn(:,:) + ( a_i(:,:,jl) - a_i_b(:,:,jl) ) * r1_rdtice 
     122      END DO 
     123 
     124      DO jj = 1, jpj 
     125         DO ji = 1, jpi             
     126            ! heat content variation (W.m-2) 
     127            diag_heat(ji,jj) = - ( SUM( e_i(ji,jj,1:nlay_i,:) - e_i_b(ji,jj,1:nlay_i,:) ) +  &  
     128               &                   SUM( e_s(ji,jj,1:nlay_s,:) - e_s_b(ji,jj,1:nlay_s,:) )    & 
     129               &                 ) * r1_rdtice 
     130            ! salt, volume 
     131            diag_smvi(ji,jj) = SUM( smv_i(ji,jj,:) - smv_i_b(ji,jj,:) ) * rhoic * r1_rdtice 
     132            diag_vice(ji,jj) = SUM( v_i  (ji,jj,:) - v_i_b  (ji,jj,:) ) * rhoic * r1_rdtice 
     133            diag_vsnw(ji,jj) = SUM( v_s  (ji,jj,:) - v_s_b  (ji,jj,:) ) * rhosn * r1_rdtice 
     134         END DO 
     135      END DO 
     136 
    119137      ! conservation test 
    120138      IF( ln_limdiahsb ) CALL lim_cons_hsm(1, 'limupdate1', zvi_b, zsmv_b, zei_b, zfw_b, zfs_b, zft_b) 
    121  
    122       ! ------------------------------------------------- 
    123       ! Diagnostics 
    124       ! ------------------------------------------------- 
    125       DO jl  = 1, jpl 
    126          afx_dyn(:,:) = afx_dyn(:,:) + ( a_i(:,:,jl) - a_i_b(:,:,jl) ) * r1_rdtice 
    127       END DO 
    128  
    129       ! heat content variation (W.m-2) 
    130       DO jj = 1, jpj 
    131          DO ji = 1, jpi             
    132             diag_heat_dhc(ji,jj) = - ( SUM( e_i(ji,jj,1:nlay_i,:) - e_i_b(ji,jj,1:nlay_i,:) ) +  &  
    133                &                       SUM( e_s(ji,jj,1:nlay_s,:) - e_s_b(ji,jj,1:nlay_s,:) )    & 
    134                &                     ) * r1_rdtice    
    135          END DO 
    136       END DO 
    137139 
    138140      ! ------------------------------------------------- 
Note: See TracChangeset for help on using the changeset viewer.