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 7311 for branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO – NEMO

Ignore:
Timestamp:
2016-11-23T07:30:18+01:00 (7 years ago)
Author:
cbricaud
Message:

changes in CRS branch for traldf to allow to run CRS only for output of physics ( no key_top and no use of TOP_SRC

Location:
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra_substitute.h90

    r7256 r7311  
    3535#      define   fsahtw(i,j,k)   rldf * aht0 
    3636#endif 
     37 
     38   !!---------------------------------------------------------------------- 
     39 
     40#if defined key_crs 
     41#if defined key_traldf_c3d 
     42!   'key_traldf_c3d' :                 aht: 3D coefficient 
     43#       define   fsahtt_crs(i,j,k)   rldf * ahtt_crs(i,j,k) 
     44#       define   fsahtu_crs(i,j,k)   rldf * ahtu_crs(i,j,k) * r_fact_lap_crs(i,j,k) 
     45#       define   fsahtv_crs(i,j,k)   rldf * ahtv_crs(i,j,k) 
     46#       define   fsahtw_crs(i,j,k)   rldf * ahtw_crs(i,j,k) 
     47#elif defined key_traldf_c2d 
     48!   'key_traldf_c2d' :                 aht: 2D coefficient 
     49#       define   fsahtt_crs(i,j,k)   rldf * ahtt_crs(i,j) 
     50#       define   fsahtu_crs(i,j,k)   rldf * ahtu_crs(i,j) * r_fact_lap_crs(i,j,k) 
     51#       define   fsahtv_crs(i,j,k)   rldf * ahtv_crs(i,j) 
     52#       define   fsahtw_crs(i,j,k)   rldf * ahtw_crs(i,j) 
     53#elif defined key_traldf_c1d 
     54!   'key_traldf_c1d' :                aht: 1D coefficient 
     55#       define   fsahtt_crs(i,j,k)   rldf * ahtt_crs(k) 
     56#       define   fsahtu_crs(i,j,k)   rldf * ahtu_crs(k) * r_fact_lap_crs(i,j,k) 
     57#       define   fsahtv_crs(i,j,k)   rldf * ahtv_crs(k) 
     58#       define   fsahtw_crs(i,j,k)   rldf * ahtw_crs(k) 
     59#else 
     60!   Default option :             aht: Constant coefficient 
     61#      define   fsahtt_crs(i,j,k)   rldf * aht0 
     62#      define   fsahtu_crs(i,j,k)   rldf * aht0 * r_fact_lap_crs(i,j,k) 
     63#      define   fsahtv_crs(i,j,k)   rldf * aht0 
     64#      define   fsahtw(_crsi,j,k)   rldf * aht0 
     65#endif 
     66#endif 
  • branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_iso_crs.F90

    r6772 r7311  
    2929   USE wrk_nemo        ! Memory Allocation 
    3030   USE timing          ! Timing 
    31    USE oce_trc 
     31!cbr   USE oce_trc 
     32   USE ldftra_oce, ONLY: rldf 
    3233   USE iom, ONLY : iom_put,iom_swap 
     34   USE crs 
    3335 
    3436   IMPLICIT NONE 
     
    173175            DO jj = 1 , jpjm1 
    174176               DO ji = 1, fs_jpim1   ! vector opt. 
    175                   zabe1 = ( fsahtu(ji,jj,jk) + pahtb0 ) * e2e3u_msk(ji,jj,jk) / e1u_crs(ji,jj) 
    176                   zabe2 = ( fsahtv(ji,jj,jk) + pahtb0 ) * e1e3v_msk(ji,jj,jk) / e2v_crs(ji,jj) 
     177                  zabe1 = ( fsahtu_crs(ji,jj,jk) + pahtb0 ) * e2e3u_msk(ji,jj,jk) / e1u_crs(ji,jj) 
     178                  zabe2 = ( fsahtv_crs(ji,jj,jk) + pahtb0 ) * e1e3v_msk(ji,jj,jk) / e2v_crs(ji,jj) 
    177179 
    178180                  zmsku = 1. / MAX(  tmask_crs(ji+1,jj,jk  ) + tmask_crs(ji,jj,jk+1)   & 
     
    182184                     &             + tmask_crs(ji,jj+1,jk+1) + tmask_crs(ji,jj,jk  ), 1. ) 
    183185                  ! 
    184                   zcof1 = - fsahtu(ji,jj,jk) * e2e3u_msk(ji,jj,jk) * uslp_crs(ji,jj,jk) * zmsku / MAX( 1._wp , fse3u_max_crs(ji,jj,jk)) 
    185                   zcof2 = - fsahtv(ji,jj,jk) * e1e3v_msk(ji,jj,jk) * vslp_crs(ji,jj,jk) * zmskv / MAX( 1._wp , fse3v_max_crs(ji,jj,jk)) 
     186                  zcof1 = - fsahtu_crs(ji,jj,jk) * e2e3u_msk(ji,jj,jk) * uslp_crs(ji,jj,jk) * zmsku / MAX( 1._wp , fse3u_max_crs(ji,jj,jk)) 
     187                  zcof2 = - fsahtv_crs(ji,jj,jk) * e1e3v_msk(ji,jj,jk) * vslp_crs(ji,jj,jk) * zmskv / MAX( 1._wp , fse3v_max_crs(ji,jj,jk)) 
    186188                  ! 
    187189                  zftu(ji,jj,jk ) = ( zabe1 * zdit(ji,jj,jk)   & 
     
    260262            DO jj = 2, jpjm1 
    261263               DO ji = fs_2, fs_jpim1   ! vector opt. 
    262                   zcoef0 = - fsahtw(ji,jj,jk) * tmask_crs(ji,jj,jk) 
     264                  zcoef0 = - fsahtw_crs(ji,jj,jk) * tmask_crs(ji,jj,jk) 
    263265                  ! 
    264266                  zmsku = 1./MAX(   umask_crs(ji  ,jj,jk-1) + umask_crs(ji-1,jj,jk)      & 
Note: See TracChangeset for help on using the changeset viewer.