Changeset 10777


Ignore:
Timestamp:
2019-03-19T16:39:00+01:00 (17 months ago)
Author:
smueller
Message:

Removal of module updtide and inclusion of its contents into module tide_mod (ticket #2194)

Location:
NEMO/branches/2019/dev_r10742_ENHANCE-12_SimonM-Tides/src/OCE
Files:
1 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r10742_ENHANCE-12_SimonM-Tides/src/OCE/DYN/dynspg.F90

    r10773 r10777  
    2222   USE dynspg_ts      ! surface pressure gradient     (dyn_spg_ts  routine) 
    2323   USE sbctide        !  
    24    USE updtide        !  
    2524   USE tide_mod       ! 
    2625   USE trd_oce        ! trends: ocean variables 
  • NEMO/branches/2019/dev_r10742_ENHANCE-12_SimonM-Tides/src/OCE/DYN/dynspg_ts.F90

    r10773 r10777  
    4545   USE bdydyn2d        ! open boundary conditions on barotropic variables 
    4646   USE sbctide         ! tides 
    47    USE updtide         ! tide potential 
    4847   USE tide_mod        ! 
    4948   USE sbcwave         ! surface wave 
  • NEMO/branches/2019/dev_r10742_ENHANCE-12_SimonM-Tides/src/OCE/TDE/tide_mod.F90

    r10773 r10777  
    2424   PUBLIC   tide_init_load 
    2525   PUBLIC   tide_init_potential 
     26   PUBLIC   upd_tide         ! called in dynspg_... modules 
    2627 
    2728   INTEGER, PUBLIC, PARAMETER ::   jpmax_harmo = 19   !: maximum number of harmonic 
     
    601602   END FUNCTION dayjul 
    602603 
     604 
     605   SUBROUTINE upd_tide( kt, kit, time_offset ) 
     606      !!---------------------------------------------------------------------- 
     607      !!                 ***  ROUTINE upd_tide  *** 
     608      !! 
     609      !! ** Purpose :   provide at each time step the astronomical potential 
     610      !! 
     611      !! ** Method  :   computed from pulsation and amplitude of all tide components 
     612      !! 
     613      !! ** Action  :   pot_astro   actronomical potential 
     614      !!----------------------------------------------------------------------       
     615      INTEGER, INTENT(in)           ::   kt      ! ocean time-step index 
     616      INTEGER, INTENT(in), OPTIONAL ::   kit     ! external mode sub-time-step index (lk_dynspg_ts=T) 
     617      INTEGER, INTENT(in), OPTIONAL ::   time_offset ! time offset in number  
     618                                                     ! of internal steps             (lk_dynspg_ts=F) 
     619                                                     ! of external steps             (lk_dynspg_ts=T) 
     620      ! 
     621      INTEGER  ::   joffset      ! local integer 
     622      INTEGER  ::   ji, jj, jk   ! dummy loop indices 
     623      REAL(wp) ::   zt, zramp    ! local scalar 
     624      REAL(wp), DIMENSION(nb_harmo) ::   zwt  
     625      !!----------------------------------------------------------------------       
     626      ! 
     627      !                               ! tide pulsation at model time step (or sub-time-step) 
     628      zt = ( kt - kt_tide ) * rdt 
     629      ! 
     630      joffset = 0 
     631      IF( PRESENT( time_offset ) )   joffset = time_offset 
     632      ! 
     633      IF( PRESENT( kit ) )   THEN 
     634         zt = zt + ( kit +  joffset - 1 ) * rdt / REAL( nn_baro, wp ) 
     635      ELSE 
     636         zt = zt + joffset * rdt 
     637      ENDIF 
     638      ! 
     639      zwt(:) = omega_tide(:) * zt 
     640 
     641      pot_astro(:,:) = 0._wp          ! update tidal potential (sum of all harmonics) 
     642      DO jk = 1, nb_harmo    
     643         pot_astro(:,:) = pot_astro(:,:) + amp_pot(:,:,jk) * COS( zwt(jk) + phi_pot(:,:,jk) )       
     644      END DO 
     645      ! 
     646      IF( ln_tide_ramp ) THEN         ! linear increase if asked 
     647         zt = ( kt - nit000 ) * rdt 
     648         IF( PRESENT( kit ) )   zt = zt + ( kit + joffset -1) * rdt / REAL( nn_baro, wp ) 
     649         zramp = MIN(  MAX( zt / (rdttideramp*rday) , 0._wp ) , 1._wp  ) 
     650         pot_astro(:,:) = zramp * pot_astro(:,:) 
     651      ENDIF 
     652      ! 
     653   END SUBROUTINE upd_tide 
     654 
    603655   !!====================================================================== 
    604656END MODULE tide_mod 
Note: See TracChangeset for help on using the changeset viewer.