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 6060 for branches/2015/dev_merge_2015/NEMOGCM/NEMO/OPA_SRC/step.F90 – NEMO

Ignore:
Timestamp:
2015-12-16T10:25:22+01:00 (8 years ago)
Author:
timgraham
Message:

Merged dev_r5836_noc2_VVL_BY_DEFAULT into branch

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_merge_2015/NEMOGCM/NEMO/OPA_SRC/step.F90

    r5930 r6060  
    22   !!====================================================================== 
    33   !!                       ***  MODULE step  *** 
    4    !! Time-stepping    : manager of the ocean, tracer and ice time stepping 
     4   !! Time-stepping   : manager of the ocean, tracer and ice time stepping 
    55   !!====================================================================== 
    66   !! History :  OPA  !  1991-03  (G. Madec)  Original code 
     
    3535   !!---------------------------------------------------------------------- 
    3636   USE step_oce         ! time stepping definition modules 
    37    USE iom 
     37   ! 
     38   USE iom              ! xIOs server 
    3839 
    3940   IMPLICIT NONE 
     
    4243   PUBLIC   stp   ! called by nemogcm.F90 
    4344 
    44    !! * Substitutions 
    45 #  include "domzgr_substitute.h90" 
    46 !!gm   #  include "zdfddm_substitute.h90" 
    4745   !!---------------------------------------------------------------------- 
    4846   !! NEMO/OPA 3.7 , NEMO Consortium (2015) 
     
    183181      !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
    184182 
    185                          CALL ssh_nxt       ( kstp )  ! after ssh (includes call to div_hor) 
    186       IF( lk_vvl    )   CALL dom_vvl_sf_nxt( kstp )  ! after vertical scale factors  
    187                          CALL wzv           ( kstp )  ! now cross-level velocity  
     183                            CALL ssh_nxt       ( kstp )  ! after ssh (includes call to div_hor) 
     184      IF(.NOT.ln_linssh )   CALL dom_vvl_sf_nxt( kstp )  ! after vertical scale factors  
     185                            CALL wzv           ( kstp )  ! now cross-level velocity  
    188186 
    189187!!gm : why also here ???? 
    190       IF(ln_sto_eos  )   CALL sto_pts( tsn )                             ! Random T/S fluctuations 
     188      IF( ln_sto_eos    )   CALL sto_pts( tsn )                             ! Random T/S fluctuations 
    191189!!gm 
    192                          CALL eos    ( tsn, rhd, rhop, fsdept_n(:,:,:) ) ! now in situ density for hpg computation 
    193  
     190                            CALL eos    ( tsn, rhd, rhop, gdept_n(:,:,:) ) ! now in situ density for hpg computation 
     191                             
    194192!!jc: fs simplification 
    195 !!jc: lines below are useless if lk_vvl=T. Keep them here (which maintains a bug if lk_vvl=F and ln_zps=T, cf ticket #1636)  
     193!!jc: lines below are useless if ln_linssh=F. Keep them here (which maintains a bug if ln_linssh=T and ln_zps=T, cf ticket #1636)  
    196194!!                                         but ensures reproductible results 
    197195!!                                         with previous versions using split-explicit free surface           
     
    224222      IF( ln_dynspg_ts ) THEN                         ! vertical scale factors and vertical velocity need to be updated 
    225223                            CALL div_hor    ( kstp )              ! Horizontal divergence  (2nd call in time-split case) 
    226          IF( lk_vvl )      CALL dom_vvl_sf_nxt( kstp, kcall=2 )  ! after vertical scale factors (update depth average component) 
     224         IF(.NOT.ln_linssh) CALL dom_vvl_sf_nxt( kstp, kcall=2 )  ! after vertical scale factors (update depth average component) 
    227225                            CALL wzv        ( kstp )              ! now cross-level velocity  
    228226      ENDIF 
     
    297295                         CALL dyn_nxt       ( kstp )  ! finalize (bcs) velocities at next time step and swap 
    298296                         CALL ssh_swp       ( kstp )  ! swap of sea surface height 
    299       IF( lk_vvl     )  CALL dom_vvl_sf_swp( kstp )  ! swap of vertical scale factors 
     297      IF(.NOT.ln_linssh) CALL dom_vvl_sf_swp( kstp )  ! swap of vertical scale factors 
    300298      ! 
    301299 
     
    313311                         CALL Agrif_Integrate_ChildGrids( stp )   
    314312 
    315       IF ( Agrif_NbStepint().EQ.0 ) THEN              ! AGRIF Update  
    316 !!jc in fact update i useless at last time step, but do it for global diagnostics 
     313      IF( Agrif_NbStepint() == 0 ) THEN               ! AGRIF Update  
     314!!jc in fact update is useless at last time step, but do it for global diagnostics 
    317315                         CALL Agrif_Update_Tra()      ! Update active tracers 
    318316                         CALL Agrif_Update_Dyn()      ! Update momentum 
     
    326324      !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
    327325                         CALL stp_ctl       ( kstp, indic ) 
    328       IF( indic < 0  )   THEN 
     326      IF( indic < 0  ) THEN 
    329327                         CALL ctl_stop( 'step: indic < 0' ) 
    330328                         CALL dia_wri_state( 'output.abort', kstp ) 
    331329      ENDIF 
    332       IF( kstp == nit000 )   THEN 
     330      IF( kstp == nit000 ) THEN 
    333331                 CALL iom_close( numror )     ! close input  ocean restart file 
    334332         IF(lwm) CALL FLUSH    ( numond )     ! flush output namelist oce 
Note: See TracChangeset for help on using the changeset viewer.