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 4902 for branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim.F90 – NEMO

Ignore:
Timestamp:
2014-11-27T17:13:38+01:00 (9 years ago)
Author:
cetlod
Message:

2014/dev_CNRS_2014 : Merge in the trunk changes between 4728 and 4879, see ticket #1415

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim.F90

    r4900 r4902  
    160160      IF( lk_cpl ) THEN 
    161161         IF ( ln_iceflx_ave .OR. ln_iceflx_linear ) & 
    162             &   CALL wrk_alloc( jpi,jpj, ztem_ice_all, zalb_ice_all, z_qsr_ice_all, z_qns_ice_all, z_qla_ice_all, z_dqns_ice_all, z_dqla_ice_all) 
     162            &   CALL wrk_alloc( jpi, jpj, ztem_ice_all , zalb_ice_all  , z_qsr_ice_all, z_qns_ice_all,   & 
     163            &                             z_qla_ice_all, z_dqns_ice_all, z_dqla_ice_all) 
    163164      ENDIF 
    164165 
     
    288289         ! 
    289290         !                                           ! Store previous ice values 
    290 !!gm : remark   old_...   should becomes ...b  as tn versus tb   
    291          old_a_i  (:,:,:)   = a_i  (:,:,:)     ! ice area 
    292          old_e_i  (:,:,:,:) = e_i  (:,:,:,:)   ! ice thermal energy 
    293          old_v_i  (:,:,:)   = v_i  (:,:,:)     ! ice volume 
    294          old_v_s  (:,:,:)   = v_s  (:,:,:)     ! snow volume  
    295          old_e_s  (:,:,:,:) = e_s  (:,:,:,:)   ! snow thermal energy 
    296          old_smv_i(:,:,:)   = smv_i(:,:,:)     ! salt content 
    297          old_oa_i (:,:,:)   = oa_i (:,:,:)     ! areal age content 
    298          old_u_ice(:,:)     = u_ice(:,:) 
    299          old_v_ice(:,:)     = v_ice(:,:) 
     291         a_i_b  (:,:,:)   = a_i  (:,:,:)     ! ice area 
     292         e_i_b  (:,:,:,:) = e_i  (:,:,:,:)   ! ice thermal energy 
     293         v_i_b  (:,:,:)   = v_i  (:,:,:)     ! ice volume 
     294         v_s_b  (:,:,:)   = v_s  (:,:,:)     ! snow volume  
     295         e_s_b  (:,:,:,:) = e_s  (:,:,:,:)   ! snow thermal energy 
     296         smv_i_b(:,:,:)   = smv_i(:,:,:)     ! salt content 
     297         oa_i_b (:,:,:)   = oa_i (:,:,:)     ! areal age content 
     298         u_ice_b(:,:)     = u_ice(:,:) 
     299         v_ice_b(:,:)     = v_ice(:,:) 
    300300 
    301301         ! trends    !!gm is it truly necessary ??? 
     
    311311         ! salt, heat and mass fluxes 
    312312         sfx    (:,:) = 0._wp   ; 
    313          sfx_bri(:,:) = 0._wp   ;   sfx_dyn(:,:) = 0._wp  
     313         sfx_bri(:,:) = 0._wp   ;  
    314314         sfx_sni(:,:) = 0._wp   ;   sfx_opw(:,:) = 0._wp 
    315315         sfx_bog(:,:) = 0._wp   ;   sfx_dyn(:,:) = 0._wp 
     
    370370         ENDIF 
    371371!                         !- Change old values for new values 
    372                           old_u_ice(:,:)   = u_ice (:,:) 
    373                           old_v_ice(:,:)   = v_ice (:,:) 
    374                           old_a_i(:,:,:)   = a_i (:,:,:) 
    375                           old_v_s(:,:,:)   = v_s (:,:,:) 
    376                           old_v_i(:,:,:)   = v_i (:,:,:) 
    377                           old_e_s(:,:,:,:) = e_s (:,:,:,:) 
    378                           old_e_i(:,:,:,:) = e_i (:,:,:,:) 
    379                           old_oa_i(:,:,:)  = oa_i(:,:,:) 
    380                           old_smv_i(:,:,:) = smv_i (:,:,:) 
     372                          u_ice_b(:,:)     = u_ice(:,:) 
     373                          v_ice_b(:,:)     = v_ice(:,:) 
     374                          a_i_b  (:,:,:)   = a_i (:,:,:) 
     375                          v_s_b  (:,:,:)   = v_s (:,:,:) 
     376                          v_i_b  (:,:,:)   = v_i (:,:,:) 
     377                          e_s_b  (:,:,:,:) = e_s (:,:,:,:) 
     378                          e_i_b  (:,:,:,:) = e_i (:,:,:,:) 
     379                          oa_i_b (:,:,:)   = oa_i (:,:,:) 
     380                          smv_i_b(:,:,:)   = smv_i(:,:,:) 
    381381  
    382382         ! ---------------------------------------------- 
     
    434434      IF( lk_cpl ) THEN 
    435435         IF ( ln_iceflx_ave .OR. ln_iceflx_linear ) & 
    436             &    CALL wrk_dealloc( jpi,jpj, ztem_ice_all, zalb_ice_all, z_qsr_ice_all, z_qns_ice_all, z_qla_ice_all, z_dqns_ice_all, z_dqla_ice_all) 
     436            &    CALL wrk_dealloc( jpi, jpj, ztem_ice_all , zalb_ice_all , z_qsr_ice_all, z_qns_ice_all,   & 
     437            &                                z_qla_ice_all, z_dqns_ice_all, z_dqla_ice_all) 
    437438      ENDIF 
    438439      ! 
     
    471472                  !WRITE(numout,*) ' at_i     ', at_i(ji,jj) 
    472473                  !WRITE(numout,*) ' Point - category', ji, jj, jl 
    473                   !WRITE(numout,*) ' a_i *** a_i_old ', a_i      (ji,jj,jl), old_a_i  (ji,jj,jl) 
    474                   !WRITE(numout,*) ' v_i *** v_i_old ', v_i      (ji,jj,jl), old_v_i  (ji,jj,jl) 
     474                  !WRITE(numout,*) ' a_i *** a_i_b   ', a_i      (ji,jj,jl), a_i_b  (ji,jj,jl) 
     475                  !WRITE(numout,*) ' v_i *** v_i_b   ', v_i      (ji,jj,jl), v_i_b  (ji,jj,jl) 
    475476                  !WRITE(numout,*) ' d_a_i_thd/trp   ', d_a_i_thd(ji,jj,jl), d_a_i_trp(ji,jj,jl) 
    476477                  !WRITE(numout,*) ' d_v_i_thd/trp   ', d_v_i_thd(ji,jj,jl), d_v_i_trp(ji,jj,jl) 
     
    582583               !DO jl = 1, jpl 
    583584                  !WRITE(numout,*) ' Category no: ', jl 
    584                   !WRITE(numout,*) ' a_i        : ', a_i      (ji,jj,jl) , ' old_a_i    : ', old_a_i  (ji,jj,jl)    
     585                  !WRITE(numout,*) ' a_i        : ', a_i      (ji,jj,jl) , ' a_i_b      : ', a_i_b  (ji,jj,jl)    
    585586                  !WRITE(numout,*) ' d_a_i_trp  : ', d_a_i_trp(ji,jj,jl) , ' d_a_i_thd  : ', d_a_i_thd(ji,jj,jl)  
    586                   !WRITE(numout,*) ' v_i        : ', v_i      (ji,jj,jl) , ' old_v_i    : ', old_v_i  (ji,jj,jl)    
     587                  !WRITE(numout,*) ' v_i        : ', v_i      (ji,jj,jl) , ' v_i_b      : ', v_i_b  (ji,jj,jl)    
    587588                  !WRITE(numout,*) ' d_v_i_trp  : ', d_v_i_trp(ji,jj,jl) , ' d_v_i_thd  : ', d_v_i_thd(ji,jj,jl)  
    588589                  !WRITE(numout,*) ' ' 
     
    760761               WRITE(numout,*) ' strength      : ', strength(ji,jj) 
    761762               WRITE(numout,*) ' d_u_ice_dyn   : ', d_u_ice_dyn(ji,jj), ' d_v_ice_dyn   : ', d_v_ice_dyn(ji,jj) 
    762                WRITE(numout,*) ' old_u_ice     : ', old_u_ice(ji,jj)  , ' old_v_ice     : ', old_v_ice(ji,jj)   
     763               WRITE(numout,*) ' u_ice_b       : ', u_ice_b(ji,jj)    , ' v_ice_b       : ', v_ice_b(ji,jj)   
    763764               WRITE(numout,*) 
    764765                
     
    770771                  WRITE(numout,*) ' t_su       : ', t_su(ji,jj,jl)             , ' t_s        : ', t_s(ji,jj,1,jl) 
    771772                  WRITE(numout,*) ' sm_i       : ', sm_i(ji,jj,jl)             , ' o_i        : ', o_i(ji,jj,jl) 
    772                   WRITE(numout,*) ' a_i        : ', a_i(ji,jj,jl)              , ' old_a_i    : ', old_a_i(ji,jj,jl)    
     773                  WRITE(numout,*) ' a_i        : ', a_i(ji,jj,jl)              , ' a_i_b      : ', a_i_b(ji,jj,jl)    
    773774                  WRITE(numout,*) ' d_a_i_trp  : ', d_a_i_trp(ji,jj,jl)        , ' d_a_i_thd  : ', d_a_i_thd(ji,jj,jl)  
    774                   WRITE(numout,*) ' v_i        : ', v_i(ji,jj,jl)              , ' old_v_i    : ', old_v_i(ji,jj,jl)    
     775                  WRITE(numout,*) ' v_i        : ', v_i(ji,jj,jl)              , ' v_i_b      : ', v_i_b(ji,jj,jl)    
    775776                  WRITE(numout,*) ' d_v_i_trp  : ', d_v_i_trp(ji,jj,jl)        , ' d_v_i_thd  : ', d_v_i_thd(ji,jj,jl)  
    776                   WRITE(numout,*) ' v_s        : ', v_s(ji,jj,jl)              , ' old_v_s    : ', old_v_s(ji,jj,jl)   
     777                  WRITE(numout,*) ' v_s        : ', v_s(ji,jj,jl)              , ' v_s_b      : ', v_s_b(ji,jj,jl)   
    777778                  WRITE(numout,*) ' d_v_s_trp  : ', d_v_s_trp(ji,jj,jl)        , ' d_v_s_thd  : ', d_v_s_thd(ji,jj,jl) 
    778                   WRITE(numout,*) ' e_i1       : ', e_i(ji,jj,1,jl)/1.0e9      , ' old_ei1    : ', old_e_i(ji,jj,1,jl)/1.0e9  
     779                  WRITE(numout,*) ' e_i1       : ', e_i(ji,jj,1,jl)/1.0e9      , ' ei1        : ', e_i_b(ji,jj,1,jl)/1.0e9  
    779780                  WRITE(numout,*) ' de_i1_trp  : ', d_e_i_trp(ji,jj,1,jl)/1.0e9, ' de_i1_thd  : ', d_e_i_thd(ji,jj,1,jl)/1.0e9 
    780                   WRITE(numout,*) ' e_i2       : ', e_i(ji,jj,2,jl)/1.0e9      , ' old_ei2    : ', old_e_i(ji,jj,2,jl)/1.0e9   
     781                  WRITE(numout,*) ' e_i2       : ', e_i(ji,jj,2,jl)/1.0e9      , ' ei2_b      : ', e_i_b(ji,jj,2,jl)/1.0e9   
    781782                  WRITE(numout,*) ' de_i2_trp  : ', d_e_i_trp(ji,jj,2,jl)/1.0e9, ' de_i2_thd  : ', d_e_i_thd(ji,jj,2,jl)/1.0e9 
    782                   WRITE(numout,*) ' e_snow     : ', e_s(ji,jj,1,jl)            , ' old_e_snow : ', old_e_s(ji,jj,1,jl)  
     783                  WRITE(numout,*) ' e_snow     : ', e_s(ji,jj,1,jl)            , ' e_snow_b   : ', e_s_b(ji,jj,1,jl)  
    783784                  WRITE(numout,*) ' d_e_s_trp  : ', d_e_s_trp(ji,jj,1,jl)      , ' d_e_s_thd  : ', d_e_s_thd(ji,jj,1,jl) 
    784                   WRITE(numout,*) ' smv_i      : ', smv_i(ji,jj,jl)            , ' old_smv_i  : ', old_smv_i(ji,jj,jl)    
     785                  WRITE(numout,*) ' smv_i      : ', smv_i(ji,jj,jl)            , ' smv_i_b    : ', smv_i_b(ji,jj,jl)    
    785786                  WRITE(numout,*) ' d_smv_i_trp: ', d_smv_i_trp(ji,jj,jl)      , ' d_smv_i_thd: ', d_smv_i_thd(ji,jj,jl)  
    786                   WRITE(numout,*) ' oa_i       : ', oa_i(ji,jj,jl)             , ' old_oa_i   : ', old_oa_i(ji,jj,jl) 
     787                  WRITE(numout,*) ' oa_i       : ', oa_i(ji,jj,jl)             , ' oa_i_b     : ', oa_i_b(ji,jj,jl) 
    787788                  WRITE(numout,*) ' d_oa_i_trp : ', d_oa_i_trp(ji,jj,jl)       , ' d_oa_i_thd : ', d_oa_i_thd(ji,jj,jl) 
    788789               END DO !jl 
     
    792793               WRITE(numout,*) '   ~~~~~~~~~~~~~~~~ ' 
    793794               WRITE(numout,*) ' - Heat fluxes in and out the ice ***' 
    794                WRITE(numout,*) ' qsr_ini       : ', pfrld(ji,jj) * qsr(ji,jj) + SUM( old_a_i(ji,jj,:) * qsr_ice(ji,jj,:) ) 
    795                WRITE(numout,*) ' qns_ini       : ', pfrld(ji,jj) * qns(ji,jj) + SUM( old_a_i(ji,jj,:) * qns_ice(ji,jj,:) ) 
     795               WRITE(numout,*) ' qsr_ini       : ', pfrld(ji,jj) * qsr(ji,jj) + SUM( a_i_b(ji,jj,:) * qsr_ice(ji,jj,:) ) 
     796               WRITE(numout,*) ' qns_ini       : ', pfrld(ji,jj) * qns(ji,jj) + SUM( a_i_b(ji,jj,:) * qns_ice(ji,jj,:) ) 
    796797               WRITE(numout,*) 
    797798               WRITE(numout,*)  
Note: See TracChangeset for help on using the changeset viewer.