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 12151 – NEMO

Changeset 12151


Ignore:
Timestamp:
2019-12-10T15:34:58+01:00 (4 years ago)
Author:
jchanut
Message:

#2222: fixes linear vertical interpolation of viscosities

Location:
NEMO/branches/2019/dev_AGRIF-01-05_merged/src/NST
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_AGRIF-01-05_merged/src/NST/agrif_oce_interp.F90

    r12123 r12151  
    12311231                    tabin(jk) = ptab(ji,jj,jk,1) 
    12321232               END DO 
    1233                N_out = 0 
    1234           z_out(1) = 0._wp  
    1235                DO jk = 2, jpk       ! Child vertical grid 
    1236                   IF (tmask(ji,jj,jk) == 0._wp) EXIT  
    1237                   N_out = N_out + 1 
    1238                   z_out(jk) = z_out(jk-1) + e3t_n(ji,jj,jk-1) 
     1233               N_out = mbkt(ji,jj)  
     1234               DO jk = 1, N_out        ! Child vertical grid 
     1235                  z_out(jk) = gdepw_n(ji,jj,jk) 
    12391236               ENDDO 
    12401237               IF (N_in*N_out > 0) THEN 
  • NEMO/branches/2019/dev_AGRIF-01-05_merged/src/NST/vremap.F90

    r12123 r12151  
    374374      DO jkout = 1, kjpk_out !  Loop over destination grid 
    375375         ! 
    376          IF     ( pzout(jkout) < pzin(  1    ) ) THEN    ; ptout(jkout,1:kn_var) = ptin(    1    ,1:kn_var)          
    377          ELSEIF ( pzout(jkout) > pzin(kjpk_in) ) THEN    ; ptout(jkout,1:kn_var) = ptin( kjpk_in ,1:kn_var) 
    378          ELSEIF ( ( pzout(jkout) >= pzin(1) ).AND.( pzout(jkout) <= pzin(kjpk_in) )) THEN 
     376         IF     ( pzout(jkout) <= pzin(  1    ) ) THEN  ; ptout(jkout,1:kn_var) = ptin(    1    ,1:kn_var)          
     377         ELSEIF ( pzout(jkout) >= pzin(kjpk_in) ) THEN   ; ptout(jkout,1:kn_var) = ptin( kjpk_in ,1:kn_var) 
     378         ELSEIF ( ( pzout(jkout) > pzin(1) ).AND.( pzout(jkout) < pzin(kjpk_in) )) THEN 
    379379            DO jkin = 1, kjpk_in - 1 !  Loop over source grid 
    380                IF ( pzout(jkout) >=  pzin(jkin) ) THEN 
     380               IF ( pzout(jkout) < pzin(jkin+1) ) THEN 
    381381                  DO jn = 1, kn_var 
    382382                     ptout(jkout,jn) =  ptin(jkin,jn) + & 
     
    390390         ! 
    391391      END DO 
    392              
     392 
    393393   END SUBROUTINE remap_linear 
    394394 
Note: See TracChangeset for help on using the changeset viewer.