Changeset 15540 for NEMO/branches/2021/dev_r14116_HPC-10_mcastril_Mixed_Precision_implementation/src/OCE/DIA/diahth.F90
- Timestamp:
- 2021-11-26T12:27:56+01:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2021/dev_r14116_HPC-10_mcastril_Mixed_Precision_implementation/src/OCE/DIA/diahth.F90
r14219 r15540 31 31 32 32 ! note: following variables should move to local variables once iom_put is always used 33 REAL( wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hth !: depth of the max vertical temperature gradient [m]34 REAL( wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hd20 !: depth of 20 C isotherm [m]35 REAL( wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hd26 !: depth of 26 C isotherm [m]36 REAL( wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hd28 !: depth of 28 C isotherm [m]37 REAL( wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: htc3 !: heat content of first 300 m [W]38 REAL( wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: htc7 !: heat content of first 700 m [W]39 REAL( wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: htc20 !: heat content of first 2000 m [W]33 REAL(dp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hth !: depth of the max vertical temperature gradient [m] 34 REAL(dp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hd20 !: depth of 20 C isotherm [m] 35 REAL(dp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hd26 !: depth of 26 C isotherm [m] 36 REAL(dp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hd28 !: depth of 28 C isotherm [m] 37 REAL(dp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: htc3 !: heat content of first 300 m [W] 38 REAL(dp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: htc7 !: heat content of first 700 m [W] 39 REAL(dp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: htc20 !: heat content of first 2000 m [W] 40 40 41 41 … … 262 262 IF( iom_use ('hc300') ) THEN 263 263 zzdep = 300. 264 CALL dia_hth_htc( Kmm, zzdep, CASTWP(ts(:,:,:,jp_tem,Kmm)), htc3 )264 CALL dia_hth_htc( Kmm, zzdep, ts(:,:,:,jp_tem,Kmm), htc3 ) 265 265 CALL iom_put( 'hc300', rho0_rcp * htc3 ) ! vertically integrated heat content (J/m2) 266 266 ENDIF … … 271 271 IF( iom_use ('hc700') ) THEN 272 272 zzdep = 700. 273 CALL dia_hth_htc( Kmm, zzdep, CASTWP(ts(:,:,:,jp_tem,Kmm)), htc7 )273 CALL dia_hth_htc( Kmm, zzdep, ts(:,:,:,jp_tem,Kmm), htc7 ) 274 274 CALL iom_put( 'hc700', rho0_rcp * htc7 ) ! vertically integrated heat content (J/m2) 275 275 … … 281 281 IF( iom_use ('hc2000') ) THEN 282 282 zzdep = 2000. 283 CALL dia_hth_htc( Kmm, zzdep, CASTWP(ts(:,:,:,jp_tem,Kmm)), htc20 )283 CALL dia_hth_htc( Kmm, zzdep, ts(:,:,:,jp_tem,Kmm), htc20 ) 284 284 CALL iom_put( 'hc2000', rho0_rcp * htc20 ) ! vertically integrated heat content (J/m2) 285 285 ENDIF … … 296 296 INTEGER , INTENT(in) :: Kmm ! ocean time level index 297 297 REAL(wp), INTENT(in) :: ptem 298 REAL( wp), DIMENSION(jpi,jpj), INTENT(out) :: pdept298 REAL(dp), DIMENSION(jpi,jpj), INTENT(out) :: pdept 299 299 ! 300 300 INTEGER :: ji, jj, jk, iid 301 REAL( wp) :: zztmp, zzdep301 REAL(dp) :: zztmp, zzdep 302 302 INTEGER, DIMENSION(jpi,jpj) :: iktem 303 303 … … 337 337 INTEGER , INTENT(in) :: Kmm ! ocean time level index 338 338 REAL(wp), INTENT(in) :: pdep ! depth over the heat content 339 REAL( wp), DIMENSION(jpi,jpj,jpk), INTENT(in) :: pt340 REAL( wp), DIMENSION(jpi,jpj), INTENT(inout) :: phtc339 REAL(dp), DIMENSION(jpi,jpj,jpk), INTENT(in) :: pt 340 REAL(dp), DIMENSION(jpi,jpj), INTENT(inout) :: phtc 341 341 ! 342 342 INTEGER :: ji, jj, jk, ik 343 REAL( wp), DIMENSION(jpi,jpj) :: zthick343 REAL(dp), DIMENSION(jpi,jpj) :: zthick 344 344 INTEGER , DIMENSION(jpi,jpj) :: ilevel 345 345
Note: See TracChangeset
for help on using the changeset viewer.