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 14219 for NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/DYN/dynkeg.F90 – NEMO

Ignore:
Timestamp:
2020-12-18T18:52:57+01:00 (4 years ago)
Author:
mcastril
Message:

Add Mixed Precision support by Oriol Tintó

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/DYN/dynkeg.F90

    r13497 r14219  
    3737   !! * Substitutions 
    3838#  include "do_loop_substitute.h90" 
     39#  include "single_precision_substitute.h90" 
    3940   !!---------------------------------------------------------------------- 
    4041   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
     
    7475      INTEGER                             , INTENT( in )  ::  kscheme          ! =0/1   type of KEG scheme  
    7576      INTEGER                             , INTENT( in )  ::  Kmm, Krhs        ! ocean time level indices 
    76       REAL(wp), DIMENSION(jpi,jpj,jpk,jpt), INTENT(inout) ::  puu, pvv         ! ocean velocities and RHS of momentum equation 
     77      REAL(dp), DIMENSION(jpi,jpj,jpk,jpt), INTENT(inout) ::  puu, pvv         ! ocean velocities and RHS of momentum equation 
    7778      ! 
    7879      INTEGER  ::   ji, jj, jk             ! dummy loop indices 
    7980      REAL(wp) ::   zu, zv                   ! local scalars 
    8081      REAL(wp), DIMENSION(jpi,jpj,jpk)        ::   zhke 
    81       REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) ::   ztrdu, ztrdv  
     82      REAL(dp), ALLOCATABLE, DIMENSION(:,:,:) ::   ztrdu, ztrdv  
    8283      !!---------------------------------------------------------------------- 
    8384      ! 
     
    137138      ENDIF 
    138139      ! 
    139       IF(sn_cfctl%l_prtctl)   CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' keg  - Ua: ', mask1=umask,   & 
    140          &                                  tab3d_2=pvv(:,:,:,Krhs), clinfo2=       ' Va: ', mask2=vmask, clinfo3='dyn' ) 
     140      IF(sn_cfctl%l_prtctl)   CALL prt_ctl( tab3d_1=CASTWP(puu(:,:,:,Krhs)), clinfo1=' keg  - Ua: ', mask1=umask,   & 
     141         &                                  tab3d_2=CASTWP(pvv(:,:,:,Krhs)), clinfo2=       ' Va: ', mask2=vmask, clinfo3='dyn' ) 
    141142      ! 
    142143      IF( ln_timing )   CALL timing_stop('dyn_keg') 
Note: See TracChangeset for help on using the changeset viewer.