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 8965 for branches/2017/dev_r8624_AGRIF3_VVL/NEMOGCM/NEMO/NST_SRC/agrif_opa_interp.F90 – NEMO

Ignore:
Timestamp:
2017-12-08T17:42:49+01:00 (6 years ago)
Author:
jchanut
Message:

Add zoom capability in default Gyre, remove bcs velocity update (non reproducible), add option to set clamped obcs - #1965

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2017/dev_r8624_AGRIF3_VVL/NEMOGCM/NEMO/NST_SRC/agrif_opa_interp.F90

    r8741 r8965  
    117117         ENDIF 
    118118         ! 
    119          DO jk=1,jpkm1                 ! Smooth 
    120             DO jj=j1,j2 
    121                ua(2,jj,jk) = 0.25_wp*(ua(1,jj,jk)+2._wp*ua(2,jj,jk)+ua(3,jj,jk)) 
    122                ua(2,jj,jk) = ua(2,jj,jk) * umask(2,jj,jk) 
    123             END DO 
    124          END DO 
     119         IF (.NOT.lk_agrif_clp) THEN 
     120            DO jk=1,jpkm1              ! Smooth 
     121               DO jj=j1,j2 
     122                  ua(2,jj,jk) = 0.25_wp*(ua(1,jj,jk)+2._wp*ua(2,jj,jk)+ua(3,jj,jk)) 
     123                  ua(2,jj,jk) = ua(2,jj,jk) * umask(2,jj,jk) 
     124               END DO 
     125            END DO 
     126         END IF 
    125127         ! 
    126128         zub(2,:) = 0._wp              ! Correct transport 
     
    186188         ENDIF 
    187189 
    188          DO jk = 1, jpkm1              ! Smooth 
    189             DO jj = j1, j2 
    190                ua(nlci-2,jj,jk) = 0.25_wp * umask(nlci-2,jj,jk)      & 
    191                   &             * ( ua(nlci-3,jj,jk) + 2._wp*ua(nlci-2,jj,jk) + ua(nlci-1,jj,jk) ) 
    192             END DO 
    193          END DO 
     190         IF (.NOT.lk_agrif_clp) THEN 
     191            DO jk = 1, jpkm1           ! Smooth 
     192               DO jj = j1, j2 
     193                  ua(nlci-2,jj,jk) = 0.25_wp * umask(nlci-2,jj,jk)      & 
     194                     &             * ( ua(nlci-3,jj,jk) + 2._wp*ua(nlci-2,jj,jk) + ua(nlci-1,jj,jk) ) 
     195               END DO 
     196            END DO 
     197         ENDIF 
    194198 
    195199         zub(nlci-2,:) = 0._wp        ! Correct transport 
     
    255259         ENDIF 
    256260         ! 
    257          DO jk = 1, jpkm1              ! Smooth 
    258             DO ji = i1, i2 
    259                va(ji,2,jk) = 0.25_wp * vmask(ji,2,jk)    & 
    260                   &        * ( va(ji,1,jk) + 2._wp*va(ji,2,jk) + va(ji,3,jk) ) 
    261             END DO 
    262          END DO 
     261         IF (.NOT.lk_agrif_clp) THEN 
     262            DO jk = 1, jpkm1              ! Smooth 
     263               DO ji = i1, i2 
     264                  va(ji,2,jk) = 0.25_wp * vmask(ji,2,jk)    & 
     265                     &        * ( va(ji,1,jk) + 2._wp*va(ji,2,jk) + va(ji,3,jk) ) 
     266               END DO 
     267            END DO 
     268         ENDIF 
    263269         ! 
    264270         zvb(:,2) = 0._wp              ! Correct transport 
     
    324330         ENDIF 
    325331         ! 
    326          DO jk = 1, jpkm1              ! Smooth 
    327             DO ji = i1, i2 
    328                va(ji,nlcj-2,jk) = 0.25_wp * vmask(ji,nlcj-2,jk)   & 
    329                   &             * ( va(ji,nlcj-3,jk) + 2._wp * va(ji,nlcj-2,jk) + va(ji,nlcj-1,jk) ) 
    330             END DO 
    331          END DO 
     332         IF (.NOT.lk_agrif_clp) THEN 
     333            DO jk = 1, jpkm1           ! Smooth 
     334               DO ji = i1, i2 
     335                  va(ji,nlcj-2,jk) = 0.25_wp * vmask(ji,nlcj-2,jk)   & 
     336                     &             * ( va(ji,nlcj-3,jk) + 2._wp * va(ji,nlcj-2,jk) + va(ji,nlcj-1,jk) ) 
     337               END DO 
     338            END DO 
     339         ENDIF 
    332340         ! 
    333341         zvb(:,nlcj-2) = 0._wp         ! Correct transport 
     
    616624         ptab(i1:i2,j1:j2,k1:k2,n1:n2) = tsn(i1:i2,j1:j2,k1:k2,n1:n2) 
    617625      ELSE 
     626         IF (lk_agrif_clp) THEN 
     627            DO jn = 1, jpts 
     628               DO jk = 1, jpkm1 
     629                  DO ji = i1,i2 
     630                     DO jj = j1,j2 
     631                        tsa(ji,jj,jk,jn) = ptab(ji,jj,jk,jn) 
     632                     END DO 
     633                  END DO 
     634               END DO 
     635            END DO            
     636            return 
     637         ENDIF 
    618638         ! 
    619639         western_side  = (nb == 1).AND.(ndir == 1) 
Note: See TracChangeset for help on using the changeset viewer.