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 4634 for branches/2013/dev_r4028_CNRS_LIM3/NEMOGCM/NEMO/OPA_SRC/step.F90 – NEMO

Ignore:
Timestamp:
2014-05-12T22:46:18+02:00 (10 years ago)
Author:
clem
Message:

major changes in heat budget

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_r4028_CNRS_LIM3/NEMOGCM/NEMO/OPA_SRC/step.F90

    r4345 r4634  
    109109      ! 
    110110      !  VERTICAL PHYSICS 
     111      ! bg jchanut tschanges 
     112      ! One need bottom friction parameter in ssh_wzv routine with time splitting. 
     113      ! The idea could be to move the call below before ssh_wzv. However, "now" scale factors 
     114      ! at U-V points (which are set thanks to sshu_n, sshv_n) are actually available in sshwzv. 
     115      ! These are needed for log bottom friction... 
     116#if ! defined key_dynspg_ts 
    111117                         CALL zdf_bfr( kstp )         ! bottom friction 
     118#endif 
     119      ! end jchanut tschanges 
    112120 
    113121      !                                               ! Vertical eddy viscosity and diffusivity coefficients 
     
    207215            &                                          rhd, gru , grv  )      ! of t, s, rd at the last ocean level 
    208216 
    209       ELSE                                                  ! centered hpg  (eos then time stepping) 
     217      ELSE    
     218                                               ! centered hpg  (eos then time stepping) 
     219      ! bg jchanut tschanges 
     220#if ! defined key_dynspg_ts 
     221      ! eos already called 
    210222                             CALL eos    ( tsn, rhd, rhop )      ! now in situ density for hpg computation 
    211223         IF( ln_zps      )   CALL zps_hde( kstp, jpts, tsn, gtsu, gtsv,  &    ! zps: now hor. derivative 
    212224            &                                          rhd, gru , grv  )      ! of t, s, rd at the last ocean level 
     225#endif 
     226      ! end jchanut tschanges 
    213227         IF( ln_zdfnpc   )   CALL tra_npc( kstp )                ! update after fields by non-penetrative convection 
    214228                             CALL tra_nxt( kstp )                ! tracer fields at next time step 
     
    218232      ! Dynamics                                    (tsa used as workspace) 
    219233      !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
     234      ! bg jchanut tschanges 
     235#if defined key_dynspg_ts       
     236! revert to previously computed tendencies: 
     237! (not using ua, va as temporary arrays during tracers' update could avoid that) 
     238                               ua(:,:,:) = ua_bak(:,:,:)             
     239                               va(:,:,:) = va_bak(:,:,:) 
     240                               CALL dyn_bfr( kstp )         ! bottom friction 
     241                               CALL dyn_zdf( kstp )         ! vertical diffusion 
     242#else 
     243      ! end jchanut tschanges 
    220244                               ua(:,:,:) = 0.e0             ! set dynamics trends to zero 
    221245                               va(:,:,:) = 0.e0 
     
    237261                               CALL dyn_zdf( kstp )         ! vertical diffusion 
    238262                               CALL dyn_spg( kstp, indic )  ! surface pressure gradient 
     263      ! bg jchanut tschanges 
     264#endif 
     265      ! end jchanut tschanges 
    239266                               CALL dyn_nxt( kstp )         ! lateral velocity at next time step 
    240267 
Note: See TracChangeset for help on using the changeset viewer.