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

Changeset 14035


Ignore:
Timestamp:
2020-12-03T12:18:31+01:00 (3 years ago)
Author:
jchanut
Message:

#2222, remove linear vertical extrapolation over partial cells + correct initial state interp for top

Location:
NEMO/branches/2020/dev_r13312_AGRIF-03-04_jchanut_vinterp_tstep/src/NST
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r13312_AGRIF-03-04_jchanut_vinterp_tstep/src/NST/agrif_top_interp.F90

    r14013 r14035  
    125125                   
    126126                  ! Intermediate grid: 
    127                   DO jk = 1, N_in 
    128                      h_in_i(jk) = e3t0_parent(ji,jj,jk) * &  
    129                        &       (1._wp + ptab(ji,jj,k2,n2)/(ht0_parent(ji,jj)*ssmask(ji,jj) + 1._wp - ssmask(ji,jj))) 
    130                   END DO 
    131                   z_in_i(1) = 0.5_wp * h_in_i(1) 
    132                   DO jk=2,N_in 
    133                      z_in_i(jk) = z_in_i(jk-1) + 0.5_wp * ( h_in_i(jk) + h_in_i(jk-1) ) 
    134                   END DO 
    135                   z_in_i(1:N_in) = z_in_i(1:N_in)  - ptab(ji,jj,k2,n2) 
     127                  IF ( l_vremap ) THEN 
     128                     DO jk = 1, N_in 
     129                        h_in_i(jk) = e3t0_parent(ji,jj,jk) * &  
     130                          &       (1._wp + ptab(ji,jj,k2,n2)/(ht0_parent(ji,jj)*ssmask(ji,jj) + 1._wp - ssmask(ji,jj))) 
     131                     END DO 
     132                     z_in_i(1) = 0.5_wp * h_in_i(1) 
     133                     DO jk=2,N_in 
     134                        z_in_i(jk) = z_in_i(jk-1) + 0.5_wp * ( h_in_i(jk) + h_in_i(jk-1) ) 
     135                     END DO 
     136                     z_in_i(1:N_in) = z_in_i(1:N_in)  - ptab(ji,jj,k2,n2) 
     137                  ENDIF 
    136138 
    137139                  ! Output (Child) grid: 
  • NEMO/branches/2020/dev_r13312_AGRIF-03-04_jchanut_vinterp_tstep/src/NST/vremap.F90

    r13939 r14035  
    380380         IF     ( pzout(jkout) <=  pzin(  1    ) ) THEN ! Surface extrapolation   
    381381            DO jn = 1, kn_var  
    382                ptout(jkout,jn) = ptin(1 ,jn) + & 
    383                                & (pzout(jkout) - pzin(1)) / (pzin(2)    - pzin(1)) & 
    384                                &                          * (ptin(2,jn) - ptin(1,jn)) 
     382! linear 
     383!               ptout(jkout,jn) = ptin(1 ,jn) + & 
     384!                               & (pzout(jkout) - pzin(1)) / (pzin(2)    - pzin(1)) & 
     385!                               &                          * (ptin(2,jn) - ptin(1,jn)) 
     386               ptout(jkout,jn) = ptin(1,jn) 
    385387            END DO 
    386388         ELSEIF ( pzout(jkout) >= pzin(kjpk_in) ) THEN ! Bottom extrapolation  
    387389            DO jn = 1, kn_var  
    388                ptout(jkout,jn) = ptin(kjpk_in ,jn) + & 
    389                                & (pzout(jkout) - pzin(kjpk_in)) / (pzin(kjpk_in)    - pzin(kjpk_in-1)) & 
    390                                &                                * (ptin(kjpk_in,jn) - ptin(kjpk_in-1,jn)) 
     390! linear 
     391!               ptout(jkout,jn) = ptin(kjpk_in ,jn) + & 
     392!                               & (pzout(jkout) - pzin(kjpk_in)) / (pzin(kjpk_in)    - pzin(kjpk_in-1)) & 
     393!                               &                                * (ptin(kjpk_in,jn) - ptin(kjpk_in-1,jn)) 
     394               ptout(jkout,jn) = ptin(kjpk_in ,jn) 
    391395            END DO 
    392396         ELSEIF ( ( pzout(jkout) > pzin(1) ).AND.( pzout(jkout) < pzin(kjpk_in) )) THEN 
Note: See TracChangeset for help on using the changeset viewer.