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/DOM/domzgr.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/DOM/domzgr.F90

    r13295 r14219  
    4545  !! * Substitutions 
    4646#  include "do_loop_substitute.h90" 
     47#  include "single_precision_substitute.h90" 
    4748   !!---------------------------------------------------------------------- 
    4849   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
     
    125126         zmsk(:,mj0(jpjglo-nn_hls):mj1(jpjglo-nn_hls)  ) = 0._wp   ! last    line of inner global domain at 0 
    126127      ENDIF 
    127       CALL lbc_lnk( 'usrdef_zgr', zmsk, 'T', 1. )             ! set halos 
     128      CALL lbc_lnk( 'usrdef_zgr', zmsk, 'T', 1._wp )             ! set halos 
    128129      k_top(:,:) = k_top(:,:) * NINT( zmsk(:,:) ) 
    129130      ! 
     
    220221      REAL(wp), DIMENSION(:)    , INTENT(out) ::   pe3t_1d , pe3w_1d           ! 1D vertical scale factors [m] 
    221222      REAL(wp), DIMENSION(:,:,:), INTENT(out) ::   pdept, pdepw                ! grid-point depth          [m] 
    222       REAL(wp), DIMENSION(:,:,:), INTENT(out) ::   pe3t , pe3u , pe3v , pe3f   ! vertical scale factors    [m] 
     223      REAL(dp), DIMENSION(:,:,:), INTENT(out) ::   pe3t 
     224      REAL(wp), DIMENSION(:,:,:), INTENT(out) ::   pe3u , pe3v , pe3f          ! vertical scale factors    [m] 
    223225      REAL(wp), DIMENSION(:,:,:), INTENT(out) ::   pe3w , pe3uw, pe3vw         !    -       -      - 
    224226      INTEGER , DIMENSION(:,:)  , INTENT(out) ::   k_top , k_bot               ! first & last ocean level 
     
    277279      ELSE                                !- depths computed from e3. scale factors 
    278280         CALL e3_to_depth( pe3t_1d, pe3w_1d, pdept_1d, pdepw_1d )    ! 1D reference depth 
    279          CALL e3_to_depth( pe3t   , pe3w   , pdept   , pdepw    )    ! 3D depths 
     281CALL e3_to_depth( CASTWP(pe3t)   , pe3w   , pdept   , pdepw    ) 
    280282         IF(lwp) THEN 
    281283            WRITE(numout,*) 
Note: See TracChangeset for help on using the changeset viewer.