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/OPA_SRC/SBC – 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/OPA_SRC/SBC/sbcice_lim.F90

    r5146 r5167  
    184184         numit = numit + nn_fsbc                     ! Ice model time step 
    185185         !                                                    
    186          CALL sbc_lim_update                ! Store previous ice values 
     186         CALL sbc_lim_bef                   ! Store previous ice values 
    187187 
    188188         CALL sbc_lim_diag0                 ! set diag of mass, heat and salt fluxes to 0 
     
    202202 
    203203#if defined key_bdy 
    204             CALL lim_var_glo2eqv 
    205204            CALL bdy_ice_lim( kt )         ! bdy ice thermo  
    206             CALL lim_var_zapsmall 
    207             CALL lim_var_agg(1) 
    208205            IF( ln_icectl )   CALL lim_prt( kt, iiceprt, jiceprt, 1, ' - ice thermo bdy - ' ) 
    209206#endif 
     
    212209         ENDIF 
    213210          
    214          CALL sbc_lim_update                ! Store previous ice values 
     211         CALL sbc_lim_bef                  ! Store previous ice values 
    215212  
    216213         ! ---------------------------------------------- 
    217214         ! ice thermodynamics 
    218215         ! ---------------------------------------------- 
    219          CALL lim_var_glo2eqv 
    220216         CALL lim_var_agg(1) 
    221217          
     
    248244         ! 
    249245         IF( lrst_ice )   CALL lim_rst_write( kt )  ! Ice restart file  
    250          CALL lim_var_glo2eqv                       ! ??? 
    251          ! 
    252          IF( ln_icectl )   CALL lim_ctl( kt )        ! alerts in case of model crash 
     246         ! 
     247         IF( ln_icectl )  CALL lim_ctl( kt )        ! alerts in case of model crash 
    253248         ! 
    254249         CALL wrk_dealloc( jpi,jpj,jpl, zalb_os, zalb_cs, zalb_ice ) 
     
    389384      r1_nlay_s = 1._wp / REAL( nlay_s, wp ) 
    390385      ! 
     386#if defined key_bdy 
     387      IF( lwp .AND. ln_limdiahsb )  CALL ctl_warn('online conservation check activated but it does not work with BDY') 
     388#endif 
     389      ! 
    391390   END SUBROUTINE ice_run 
    392391 
     
    555554   END SUBROUTINE ice_lim_flx 
    556555 
    557    SUBROUTINE sbc_lim_update 
    558       !!---------------------------------------------------------------------- 
    559       !!                  ***  ROUTINE sbc_lim_update  *** 
     556   SUBROUTINE sbc_lim_bef 
     557      !!---------------------------------------------------------------------- 
     558      !!                  ***  ROUTINE sbc_lim_bef  *** 
    560559      !! 
    561560      !! ** purpose :  store ice variables at "before" time step  
     
    571570      v_ice_b(:,:)     = v_ice(:,:) 
    572571       
    573    END SUBROUTINE sbc_lim_update 
     572   END SUBROUTINE sbc_lim_bef 
    574573 
    575574   SUBROUTINE sbc_lim_diag0 
     
    602601      hfx_spr(:,:) = 0._wp   ;   hfx_dif(:,:) = 0._wp  
    603602      hfx_err(:,:) = 0._wp   ;   hfx_err_rem(:,:) = 0._wp 
    604       hfx_err_dif(:,:) = 0._wp 
     603      hfx_err_dif(:,:) = 0._wp   ; 
    605604 
    606605      afx_tot(:,:) = 0._wp   ; 
    607606      afx_dyn(:,:) = 0._wp   ;   afx_thd(:,:) = 0._wp 
    608607 
    609       diag_heat_dhc(:,:) = 0._wp ; 
     608      diag_heat(:,:) = 0._wp ;   diag_smvi(:,:) = 0._wp ; 
     609      diag_vice(:,:) = 0._wp ;   diag_vsnw(:,:) = 0._wp ; 
    610610       
    611611   END SUBROUTINE sbc_lim_diag0 
     
    636636 
    637637      fice_ice_ave (:,:) = 0.0_wp 
    638       WHERE ( at_i (:,:) .GT. 0.0_wp ) fice_ice_ave (:,:) = fice_cell_ave ( ptab (:,:,:)) / at_i (:,:) 
     638      WHERE ( at_i (:,:) > 0.0_wp ) fice_ice_ave (:,:) = fice_cell_ave ( ptab (:,:,:)) / at_i (:,:) 
    639639 
    640640   END FUNCTION fice_ice_ave 
Note: See TracChangeset for help on using the changeset viewer.