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 14064 for NEMO/trunk/src/NST/agrif_oce_update.F90 – NEMO

Ignore:
Timestamp:
2020-12-03T18:01:12+01:00 (3 years ago)
Author:
ayoung
Message:

Merging ticket #2506 into trunk.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/src/NST/agrif_oce_update.F90

    r14053 r14064  
    915915      REAL(wp), DIMENSION(i1:i2,j1:j2), INTENT(inout) ::   tabres 
    916916      LOGICAL                         , INTENT(in   ) ::   before 
     917      !! 
     918      REAL(wp), DIMENSION(jpi,jpj) ::   zpgu   ! 2D workspace 
    917919      !!  
    918920      INTEGER  :: ji, jj, jk 
     
    934936               !     
    935937               ! Update "now" 3d velocities: 
    936                spgu(ji,jj) = 0._wp 
     938               zpgu(ji,jj) = 0._wp 
    937939               DO jk=1,jpkm1 
    938                   spgu(ji,jj) = spgu(ji,jj) + e3u(ji,jj,jk,Kmm_a) * uu(ji,jj,jk,Kmm_a) 
     940                  zpgu(ji,jj) = zpgu(ji,jj) + e3u(ji,jj,jk,Kmm_a) * uu(ji,jj,jk,Kmm_a) 
    939941               END DO 
    940942               ! 
    941                zcorr = (tabres(ji,jj) - spgu(ji,jj)) * r1_hu(ji,jj,Kmm_a) 
     943               zcorr = (tabres(ji,jj) - zpgu(ji,jj)) * r1_hu(ji,jj,Kmm_a) 
    942944               DO jk=1,jpkm1               
    943945                  uu(ji,jj,jk,Kmm_a) = uu(ji,jj,jk,Kmm_a) + zcorr * umask(ji,jj,jk)            
     
    954956               !        
    955957               ! Correct "before" velocities to hold correct bt component: 
    956                spgu(ji,jj) = 0.e0 
     958               zpgu(ji,jj) = 0.e0 
    957959               DO jk=1,jpkm1 
    958                   spgu(ji,jj) = spgu(ji,jj) + e3u(ji,jj,jk,Kbb_a) * uu(ji,jj,jk,Kbb_a) 
     960                  zpgu(ji,jj) = zpgu(ji,jj) + e3u(ji,jj,jk,Kbb_a) * uu(ji,jj,jk,Kbb_a) 
    959961               END DO 
    960962               ! 
    961                zcorr = uu_b(ji,jj,Kbb_a) - spgu(ji,jj) * r1_hu(ji,jj,Kbb_a) 
     963               zcorr = uu_b(ji,jj,Kbb_a) - zpgu(ji,jj) * r1_hu(ji,jj,Kbb_a) 
    962964               DO jk=1,jpkm1               
    963965                  uu(ji,jj,jk,Kbb_a) = uu(ji,jj,jk,Kbb_a) + zcorr * umask(ji,jj,jk)            
     
    982984      REAL(wp), DIMENSION(i1:i2,j1:j2), INTENT(inout) ::   tabres 
    983985      LOGICAL                         , INTENT(in   ) ::   before 
     986      ! 
     987      REAL(wp), DIMENSION(jpi,jpj) ::   zpgv   ! 2D workspace 
    984988      !  
    985989      INTEGER  :: ji, jj, jk 
     
    10001004               !     
    10011005               ! Update "now" 3d velocities: 
    1002                spgv(ji,jj) = 0.e0 
     1006               zpgv(ji,jj) = 0.e0 
    10031007               DO jk=1,jpkm1 
    1004                   spgv(ji,jj) = spgv(ji,jj) + e3v(ji,jj,jk,Kmm_a) * vv(ji,jj,jk,Kmm_a) 
     1008                  zpgv(ji,jj) = zpgv(ji,jj) + e3v(ji,jj,jk,Kmm_a) * vv(ji,jj,jk,Kmm_a) 
    10051009               END DO 
    10061010               ! 
    1007                zcorr = (tabres(ji,jj) - spgv(ji,jj)) * r1_hv(ji,jj,Kmm_a) 
     1011               zcorr = (tabres(ji,jj) - zpgv(ji,jj)) * r1_hv(ji,jj,Kmm_a) 
    10081012               DO jk=1,jpkm1               
    10091013                  vv(ji,jj,jk,Kmm_a) = vv(ji,jj,jk,Kmm_a) + zcorr * vmask(ji,jj,jk)            
     
    10201024               !        
    10211025               ! Correct "before" velocities to hold correct bt component: 
    1022                spgv(ji,jj) = 0.e0 
     1026               zpgv(ji,jj) = 0.e0 
    10231027               DO jk=1,jpkm1 
    1024                   spgv(ji,jj) = spgv(ji,jj) + e3v(ji,jj,jk,Kbb_a) * vv(ji,jj,jk,Kbb_a) 
     1028                  zpgv(ji,jj) = zpgv(ji,jj) + e3v(ji,jj,jk,Kbb_a) * vv(ji,jj,jk,Kbb_a) 
    10251029               END DO 
    10261030               ! 
    1027                zcorr = vv_b(ji,jj,Kbb_a) - spgv(ji,jj) * r1_hv(ji,jj,Kbb_a) 
     1031               zcorr = vv_b(ji,jj,Kbb_a) - zpgv(ji,jj) * r1_hv(ji,jj,Kbb_a) 
    10281032               DO jk=1,jpkm1               
    10291033                  vv(ji,jj,jk,Kbb_a) = vv(ji,jj,jk,Kbb_a) + zcorr * vmask(ji,jj,jk)            
Note: See TracChangeset for help on using the changeset viewer.