Changeset 14219 for NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/CRS/crsfld.F90
- Timestamp:
- 2020-12-18T18:52:57+01:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/CRS/crsfld.F90
r13472 r14219 34 34 # include "do_loop_substitute.h90" 35 35 # include "domzgr_substitute.h90" 36 # include "single_precision_substitute.h90" 36 37 !!---------------------------------------------------------------------- 37 38 !! NEMO/OCE 4.0 , NEMO Consortium (2018) … … 101 102 ! Temperature 102 103 zt(:,:,:) = ts(:,:,:,jp_tem,Kmm) ; zt_crs(:,:,:) = 0._wp 103 CALL crs_dom_ope( zt, 'VOL', 'T', tmask, zt_crs, p_e12= e1e2t, p_e3=ze3t, psgn=1.0_wp )104 CALL crs_dom_ope( zt, 'VOL', 'T', tmask, zt_crs, p_e12=CASTWP(e1e2t), p_e3=ze3t, psgn=1.0_wp ) 104 105 tsn_crs(:,:,:,jp_tem) = zt_crs(:,:,:) 105 106 … … 110 111 ! Salinity 111 112 zs(:,:,:) = ts(:,:,:,jp_sal,Kmm) ; zs_crs(:,:,:) = 0._wp 112 CALL crs_dom_ope( zs, 'VOL', 'T', tmask, zs_crs, p_e12= e1e2t, p_e3=ze3t, psgn=1.0_wp )113 CALL crs_dom_ope( zs, 'VOL', 'T', tmask, zs_crs, p_e12=CASTWP(e1e2t), p_e3=ze3t, psgn=1.0_wp ) 113 114 tsn_crs(:,:,:,jp_sal) = zt_crs(:,:,:) 114 115 … … 117 118 118 119 ! U-velocity 119 CALL crs_dom_ope( uu(:,:,:,Kmm), 'SUM', 'U', umask, un_crs, p_e12=e2u, p_e3=ze3u, p_surf_crs=e2e3u_msk, psgn=-1.0_wp )120 CALL crs_dom_ope( CASTWP(uu(:,:,:,Kmm)), 'SUM', 'U', umask, un_crs, p_e12=CASTWP(e2u), p_e3=ze3u, p_surf_crs=e2e3u_msk, psgn=-1.0_wp ) 120 121 ! 121 122 zt(:,:,:) = 0._wp ; zs(:,:,:) = 0._wp ; zt_crs(:,:,:) = 0._wp ; zs_crs(:,:,:) = 0._wp … … 132 133 133 134 ! V-velocity 134 CALL crs_dom_ope( vv(:,:,:,Kmm), 'SUM', 'V', vmask, vn_crs, p_e12=e1v, p_e3=ze3v, p_surf_crs=e1e3v_msk, psgn=-1.0_wp )135 CALL crs_dom_ope( CASTWP(vv(:,:,:,Kmm)), 'SUM', 'V', vmask, vn_crs, p_e12=CASTWP(e1v), p_e3=ze3v, p_surf_crs=e1e3v_msk, psgn=-1.0_wp ) 135 136 ! 136 137 zt(:,:,:) = 0._wp ; zs(:,:,:) = 0._wp ; zt_crs(:,:,:) = 0._wp ; zs_crs(:,:,:) = 0._wp … … 158 159 CALL lbc_lnk( 'crsfld', z3d, 'T', 1.0_wp ) 159 160 ! 160 CALL crs_dom_ope( z3d, 'VOL', 'T', tmask, zt_crs, p_e12= e1e2t, p_e3=ze3t, psgn=1.0_wp )161 CALL crs_dom_ope( z3d, 'VOL', 'T', tmask, zt_crs, p_e12=CASTWP(e1e2t), p_e3=ze3t, psgn=1.0_wp ) 161 162 CALL iom_put( "ke", zt_crs ) 162 163 ENDIF … … 183 184 ! W-velocity 184 185 IF( ln_crs_wn ) THEN 185 CALL crs_dom_ope( ww, 'SUM', 'W', tmask, wn_crs, p_e12= e1e2t, p_surf_crs=e1e2w_msk, psgn=1.0_wp )186 CALL crs_dom_ope( ww, 'SUM', 'W', tmask, wn_crs, p_e12=CASTWP(e1e2t), p_surf_crs=e1e2w_msk, psgn=1.0_wp ) 186 187 ! CALL crs_dom_ope( ww, 'VOL', 'W', tmask, wn_crs, p_e12=e1e2t, p_e3=ze3w ) 187 188 ELSE … … 197 198 SELECT CASE ( nn_crs_kz ) 198 199 CASE ( 0 ) 199 CALL crs_dom_ope( avt, 'VOL', 'W', tmask, avt_crs, p_e12= e1e2t, p_e3=ze3w, psgn=1.0_wp )200 CALL crs_dom_ope( avs, 'VOL', 'W', tmask, avs_crs, p_e12= e1e2t, p_e3=ze3w, psgn=1.0_wp )200 CALL crs_dom_ope( avt, 'VOL', 'W', tmask, avt_crs, p_e12=CASTWP(e1e2t), p_e3=ze3w, psgn=1.0_wp ) 201 CALL crs_dom_ope( avs, 'VOL', 'W', tmask, avs_crs, p_e12=CASTWP(e1e2t), p_e3=ze3w, psgn=1.0_wp ) 201 202 CASE ( 1 ) 202 CALL crs_dom_ope( avt, 'MAX', 'W', tmask, avt_crs, p_e12= e1e2t, p_e3=ze3w, psgn=1.0_wp )203 CALL crs_dom_ope( avs, 'MAX', 'W', tmask, avs_crs, p_e12= e1e2t, p_e3=ze3w, psgn=1.0_wp )203 CALL crs_dom_ope( avt, 'MAX', 'W', tmask, avt_crs, p_e12=CASTWP(e1e2t), p_e3=ze3w, psgn=1.0_wp ) 204 CALL crs_dom_ope( avs, 'MAX', 'W', tmask, avs_crs, p_e12=CASTWP(e1e2t), p_e3=ze3w, psgn=1.0_wp ) 204 205 CASE ( 2 ) 205 CALL crs_dom_ope( avt, 'MIN', 'W', tmask, avt_crs, p_e12= e1e2t, p_e3=ze3w, psgn=1.0_wp )206 CALL crs_dom_ope( avs, 'MIN', 'W', tmask, avs_crs, p_e12= e1e2t, p_e3=ze3w, psgn=1.0_wp )206 CALL crs_dom_ope( avt, 'MIN', 'W', tmask, avt_crs, p_e12=CASTWP(e1e2t), p_e3=ze3w, psgn=1.0_wp ) 207 CALL crs_dom_ope( avs, 'MIN', 'W', tmask, avs_crs, p_e12=CASTWP(e1e2t), p_e3=ze3w, psgn=1.0_wp ) 207 208 END SELECT 208 209 ! … … 211 212 212 213 ! sbc fields 213 CALL crs_dom_ope( ssh(:,:,Kmm) , 'VOL', 'T', tmask, sshn_crs , p_e12=e1e2t, p_e3=ze3t , psgn=1.0_wp )214 CALL crs_dom_ope( CASTWP(ssh(:,:,Kmm)) , 'VOL', 'T', tmask, sshn_crs , p_e12=CASTWP(e1e2t), p_e3=ze3t , psgn=1.0_wp ) 214 215 CALL crs_dom_ope( utau , 'SUM', 'U', umask, utau_crs , p_e12=e2u , p_surf_crs=e2u_crs , psgn=1.0_wp ) 215 216 CALL crs_dom_ope( vtau , 'SUM', 'V', vmask, vtau_crs , p_e12=e1v , p_surf_crs=e1v_crs , psgn=1.0_wp ) 216 CALL crs_dom_ope( wndm , 'SUM', 'T', tmask, wndm_crs , p_e12= e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0_wp )217 CALL crs_dom_ope( wndm , 'SUM', 'T', tmask, wndm_crs , p_e12=CASTWP(e1e2t), p_surf_crs=e1e2t_crs, psgn=1.0_wp ) 217 218 CALL crs_dom_ope( rnf , 'MAX', 'T', tmask, rnf_crs , psgn=1.0_wp ) 218 CALL crs_dom_ope( qsr , 'SUM', 'T', tmask, qsr_crs , p_e12= e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0_wp )219 CALL crs_dom_ope( emp_b, 'SUM', 'T', tmask, emp_b_crs, p_e12= e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0_wp )220 CALL crs_dom_ope( emp , 'SUM', 'T', tmask, emp_crs , p_e12= e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0_wp )221 CALL crs_dom_ope( sfx , 'SUM', 'T', tmask, sfx_crs , p_e12= e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0_wp )222 CALL crs_dom_ope( fr_i , 'SUM', 'T', tmask, fr_i_crs , p_e12= e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0_wp )219 CALL crs_dom_ope( qsr , 'SUM', 'T', tmask, qsr_crs , p_e12=CASTWP(e1e2t), p_surf_crs=e1e2t_crs, psgn=1.0_wp ) 220 CALL crs_dom_ope( emp_b, 'SUM', 'T', tmask, emp_b_crs, p_e12=CASTWP(e1e2t), p_surf_crs=e1e2t_crs, psgn=1.0_wp ) 221 CALL crs_dom_ope( emp , 'SUM', 'T', tmask, emp_crs , p_e12=CASTWP(e1e2t), p_surf_crs=e1e2t_crs, psgn=1.0_wp ) 222 CALL crs_dom_ope( sfx , 'SUM', 'T', tmask, sfx_crs , p_e12=CASTWP(e1e2t), p_surf_crs=e1e2t_crs, psgn=1.0_wp ) 223 CALL crs_dom_ope( fr_i , 'SUM', 'T', tmask, fr_i_crs , p_e12=CASTWP(e1e2t), p_surf_crs=e1e2t_crs, psgn=1.0_wp ) 223 224 224 225 CALL iom_put( "ssh" , sshn_crs ) ! ssh output
Note: See TracChangeset
for help on using the changeset viewer.