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 9923 for NEMO/branches/2018/dev_r9838_ENHANCE04_MLF/src/OCE/SBC/updtide.F90 – NEMO

Ignore:
Timestamp:
2018-07-11T10:24:17+02:00 (6 years ago)
Author:
gm
Message:

#1911 (ENHANCE-04): step I.2: dev_r9838_ENHANCE04_MLF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2018/dev_r9838_ENHANCE04_MLF/src/OCE/SBC/updtide.F90

    r9598 r9923  
    66   !! History :  9.0  !  07  (O. Le Galloudec)  Original code 
    77   !!---------------------------------------------------------------------- 
    8    !!   upd_tide       : update tidal potential 
     8 
    99   !!---------------------------------------------------------------------- 
    10    USE oce             ! ocean dynamics and tracers variables 
    11    USE dom_oce         ! ocean space and time domain 
    12    USE in_out_manager  ! I/O units 
    13    USE phycst          ! physical constant 
    14    USE sbctide         ! tide potential variable 
    15    USE tideini, ONLY: ln_tide_ramp, rdttideramp 
     10   !!   upd_tide      : update tidal potential 
     11   !!---------------------------------------------------------------------- 
     12   USE oce            ! ocean dynamics and tracers variables 
     13   USE dom_oce        ! ocean space and time domain 
     14   USE in_out_manager ! I/O units 
     15   USE phycst         ! physical constant 
     16   USE sbctide        ! tide potential variable 
     17   USE tideini , ONLY : ln_tide_ramp, rn_ramp 
    1618 
    1719   IMPLICIT NONE 
     
    3739      !! ** Action  :   pot_astro   actronomical potential 
    3840      !!----------------------------------------------------------------------       
    39       INTEGER, INTENT(in)           ::   kt      ! ocean time-step index 
    40       INTEGER, INTENT(in), OPTIONAL ::   kit     ! external mode sub-time-step index (lk_dynspg_ts=T) 
    41       INTEGER, INTENT(in), OPTIONAL ::   time_offset ! time offset in number  
    42                                                      ! of internal steps             (lk_dynspg_ts=F) 
    43                                                      ! of external steps             (lk_dynspg_ts=T) 
     41      INTEGER, INTENT(in)           ::   kt          ! ocean time-step index 
     42      INTEGER, INTENT(in), OPTIONAL ::   kit         ! external mode sub-time-step index (lk_dynspg_ts=T) 
     43      INTEGER, INTENT(in), OPTIONAL ::   time_offset ! time offset in number  of internal steps (lk_dynspg_ts=F) 
     44      !                                              !                        of external steps (lk_dynspg_ts=T) 
    4445      ! 
     46      INTEGER  ::   ji, jj, jk   ! dummy loop indices 
    4547      INTEGER  ::   joffset      ! local integer 
    46       INTEGER  ::   ji, jj, jk   ! dummy loop indices 
    4748      REAL(wp) ::   zt, zramp    ! local scalar 
    4849      REAL(wp), DIMENSION(nb_harmo) ::   zwt  
     
    5051      ! 
    5152      !                               ! tide pulsation at model time step (or sub-time-step) 
    52       zt = ( kt - kt_tide ) * rdt 
     53      zt = ( kt - kt_tide ) * rn_Dt 
    5354      ! 
    5455      joffset = 0 
     
    5657      ! 
    5758      IF( PRESENT( kit ) )   THEN 
    58          zt = zt + ( kit +  joffset - 1 ) * rdt / REAL( nn_baro, wp ) 
     59         zt = zt + ( kit +  joffset - 1 ) * rn_Dt / REAL( nn_e, wp ) 
    5960      ELSE 
    60          zt = zt + joffset * rdt 
     61         zt = zt + joffset * rn_Dt 
    6162      ENDIF 
    6263      ! 
     
    6970      ! 
    7071      IF( ln_tide_ramp ) THEN         ! linear increase if asked 
    71          zt = ( kt - nit000 ) * rdt 
    72          IF( PRESENT( kit ) )   zt = zt + ( kit + joffset -1) * rdt / REAL( nn_baro, wp ) 
    73          zramp = MIN(  MAX( zt / (rdttideramp*rday) , 0._wp ) , 1._wp  ) 
     72         zt = ( kt - nit000 ) * rn_Dt 
     73         IF( PRESENT( kit ) )   zt = zt + ( kit + joffset -1) * rn_Dt / REAL( nn_e, wp ) 
     74         zramp = MIN(  MAX( 0._wp , zt / (rn_ramp*rday) ) , 1._wp  ) 
    7475         pot_astro(:,:) = zramp * pot_astro(:,:) 
    7576      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.