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

Ignore:
Timestamp:
2020-12-04T12:37:14+01:00 (4 years ago)
Author:
cetlod
Message:

Adding AGRIF branches into the trunk

File:
1 edited

Legend:

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

    r12377 r14086  
    320320      ! specify methods 
    321321!      opts%edge_meth = p1e_method     ! 1st-order edge interp. 
     322!      opts%cell_meth = pcm_method 
    322323!      opts%cell_meth = plm_method     ! PLM method in cells 
    323324      opts%edge_meth = p3e_method     ! 3rd-order edge interp. 
     
    328329      ! limiter 
    329330!      opts%cell_lims = null_limit     ! no lim. 
     331!      opts%cell_lims = weno_limit 
    330332      opts%cell_lims = mono_limit     ! monotone limiter    
    331333  
     
    376378      DO jkout = 1, kjpk_out !  Loop over destination grid 
    377379         ! 
    378          IF     ( pzout(jkout) <=  pzin(  1    ) ) THEN  ; ptout(jkout,1:kn_var) = ptin(    1    ,1:kn_var)          
    379          ELSEIF ( pzout(jkout) >= pzin(kjpk_in) ) THEN   ; ptout(jkout,1:kn_var) = ptin( kjpk_in ,1:kn_var) 
     380         IF     ( pzout(jkout) <=  pzin(  1    ) ) THEN ! Surface extrapolation   
     381            DO jn = 1, kn_var  
     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) 
     387            END DO 
     388         ELSEIF ( pzout(jkout) >= pzin(kjpk_in) ) THEN ! Bottom extrapolation  
     389            DO jn = 1, kn_var  
     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) 
     395            END DO 
    380396         ELSEIF ( ( pzout(jkout) > pzin(1) ).AND.( pzout(jkout) < pzin(kjpk_in) )) THEN 
    381397            DO jkin = 1, kjpk_in - 1 !  Loop over source grid 
Note: See TracChangeset for help on using the changeset viewer.