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 10954 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/OCE/step.F90 – NEMO

Ignore:
Timestamp:
2019-05-09T18:12:29+02:00 (5 years ago)
Author:
acc
Message:

2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps : Convert TRA modules and all knock on effects of these conversions. SETTE tested

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/OCE/step.F90

    r10946 r10954  
    131131      !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
    132132      !  THERMODYNAMICS 
    133                          CALL eos_rab( tsb, rab_b )       ! before local thermal/haline expension ratio at T-points 
    134                          CALL eos_rab( tsn, rab_n )       ! now    local thermal/haline expension ratio at T-points 
    135                          CALL bn2    ( tsb, rab_b, rn2b ) ! before Brunt-Vaisala frequency 
    136                          CALL bn2    ( tsn, rab_n, rn2  ) ! now    Brunt-Vaisala frequency 
     133                         CALL eos_rab( tsb, rab_b, Nnn )       ! before local thermal/haline expension ratio at T-points 
     134                         CALL eos_rab( tsn, rab_n, Nnn )       ! now    local thermal/haline expension ratio at T-points 
     135                         CALL bn2    ( tsb, rab_b, rn2b, Nnn ) ! before Brunt-Vaisala frequency 
     136                         CALL bn2    ( tsn, rab_n, rn2, Nnn  ) ! now    Brunt-Vaisala frequency 
    137137 
    138138      !  VERTICAL PHYSICS 
     
    144144                         CALL eos( tsb, rhd, gdept_0(:,:,:) )               ! before in situ density 
    145145 
    146          IF( ln_zps .AND. .NOT. ln_isfcav)                               & 
    147             &            CALL zps_hde    ( kstp, jpts, tsb, gtsu, gtsv,  &  ! Partial steps: before horizontal gradient 
    148             &                                          rhd, gru , grv    )  ! of t, s, rd at the last ocean level 
    149  
    150          IF( ln_zps .AND.       ln_isfcav)                               & 
    151             &            CALL zps_hde_isf( kstp, jpts, tsb, gtsu, gtsv, gtui, gtvi,  &  ! Partial steps for top cell (ISF) 
    152             &                                          rhd, gru , grv , grui, grvi   )  ! of t, s, rd at the first ocean level 
     146         IF( ln_zps .AND. .NOT. ln_isfcav)                                    & 
     147            &            CALL zps_hde    ( kstp, Nnn, jpts, tsb, gtsu, gtsv,  &  ! Partial steps: before horizontal gradient 
     148            &                                          rhd, gru , grv    )       ! of t, s, rd at the last ocean level 
     149 
     150         IF( ln_zps .AND.       ln_isfcav)                                                & 
     151            &            CALL zps_hde_isf( kstp, Nnn, jpts, tsb, gtsu, gtsv, gtui, gtvi,  &  ! Partial steps for top cell (ISF) 
     152            &                                          rhd, gru , grv , grui, grvi   )       ! of t, s, rd at the first ocean level 
    153153         IF( ln_traldf_triad ) THEN  
    154154                         CALL ldf_slp_triad( kstp, Nbb, Nnn )             ! before slope for triad operator 
     
    175175!!                                         but ensures reproductible results 
    176176!!                                         with previous versions using split-explicit free surface           
    177             IF( ln_zps .AND. .NOT. ln_isfcav )                               & 
    178                &            CALL zps_hde    ( kstp, jpts, tsn, gtsu, gtsv,   &  ! Partial steps: before horizontal gradient 
    179                &                                          rhd, gru , grv     )  ! of t, s, rd at the last ocean level 
    180             IF( ln_zps .AND.       ln_isfcav )                                          & 
    181                &            CALL zps_hde_isf( kstp, jpts, tsn, gtsu, gtsv, gtui, gtvi,  &  ! Partial steps for top cell (ISF) 
    182                &                                          rhd, gru , grv , grui, grvi   )  ! of t, s, rd at the first ocean level 
     177            IF( ln_zps .AND. .NOT. ln_isfcav )                                    & 
     178               &            CALL zps_hde    ( kstp, Nnn, jpts, tsn, gtsu, gtsv,   &  ! Partial steps: before horizontal gradient 
     179               &                                          rhd, gru , grv     )       ! of t, s, rd at the last ocean level 
     180            IF( ln_zps .AND.       ln_isfcav )                                               & 
     181               &            CALL zps_hde_isf( kstp, Nnn, jpts, tsn, gtsu, gtsv, gtui, gtvi,  &  ! Partial steps for top cell (ISF) 
     182               &                                          rhd, gru , grv , grui, grvi   )       ! of t, s, rd at the first ocean level 
    183183!!jc: fs simplification 
    184184                             
     
    241241 
    242242      IF(  lk_asminc .AND. ln_asmiau .AND. & 
    243          & ln_trainc )   CALL tra_asm_inc   ( kstp )  ! apply tracer assimilation increment 
     243         & ln_trainc )   CALL tra_asm_inc   ( kstp, Nnn      )  ! apply tracer assimilation increment 
    244244                         CALL tra_sbc       ( kstp, Nnn, Nrhs )  ! surface boundary condition 
    245245      IF( ln_traqsr  )   CALL tra_qsr       ( kstp, Nnn, Nrhs )  ! penetrative solar radiation qsr 
    246246      IF( ln_trabbc  )   CALL tra_bbc       ( kstp, Nnn, Nrhs )  ! bottom heat flux 
    247       IF( ln_trabbl  )   CALL tra_bbl       ( kstp, Nnn, Nrhs )  ! advective (and/or diffusive) bottom boundary layer scheme 
    248       IF( ln_tradmp  )   CALL tra_dmp       ( kstp, Nnn, Nrhs )  ! internal damping trends 
     247      IF( ln_trabbl  )   CALL tra_bbl       ( kstp, Nbb, Nnn, Nrhs )  ! advective (and/or diffusive) bottom boundary layer scheme 
     248      IF( ln_tradmp  )   CALL tra_dmp       ( kstp, Nbb, Nnn, Nrhs )  ! internal damping trends 
    249249      IF( ln_bdy     )   CALL bdy_tra_dmp   ( kstp )  ! bdy damping trends 
    250250#if defined key_agrif 
     
    255255      IF( ln_zdfosm  )   CALL tra_osm( kstp,      Nnn      , ts, Nrhs )  ! OSMOSIS non-local tracer fluxes ==> RHS 
    256256      IF( lrst_oce .AND. ln_zdfosm ) & 
    257            &             CALL osm_rst( kstp, Nnn, 'WRITE' )! write OSMOSIS outputs + wn (so must do here) to restarts 
    258                          CALL tra_ldf( kstp, Nnn, Nrhs )   ! lateral mixing 
     257           &             CALL osm_rst( kstp,      Nnn, 'WRITE' )         ! write OSMOSIS outputs + wn (so must do here) to restarts 
     258                         CALL tra_ldf( kstp, Nbb, Nnn, Nrhs )            ! lateral mixing 
    259259 
    260260!!gm : why CALL to dia_ptr has been moved here??? (use trends info?) 
     
    281281!!  
    282282!!jc2: dynnxt must be the latest call. e3t_b are indeed updated in that routine 
    283                          CALL tra_nxt       ( kstp, Nnn, Nrhs )  ! finalize (bcs) tracer fields at next time step and swap 
    284                          CALL dyn_nxt       ( kstp, Nnn )        ! finalize (bcs) velocities at next time step and swap (always called after tra_nxt) 
     283                         CALL tra_nxt       ( kstp, Nbb, Nnn, Nrhs )  ! finalize (bcs) tracer fields at next time step and swap 
     284                         CALL dyn_nxt       ( kstp,      Nnn )        ! finalize (bcs) velocities at next time step and swap (always called after tra_nxt) 
    285285                         CALL ssh_swp       ( kstp )  ! swap of sea surface height 
    286286      IF(.NOT.ln_linssh) CALL dom_vvl_sf_swp( kstp )  ! swap of vertical scale factors 
Note: See TracChangeset for help on using the changeset viewer.