- Timestamp:
- 2017-04-13T16:21:08+02:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/DIA/diaar5.F90
r7753 r7910 16 16 USE iom ! I/O manager library 17 17 USE timing ! preformance summary 18 USE wrk_nemo ! working arrays19 18 USE fldread ! type FLD_N 20 19 USE phycst ! physical constant … … 76 75 REAL(wp) :: zaw, zbw, zrw 77 76 ! 78 REAL(wp), POINTER, DIMENSION(:,:) :: zarea_ssh , zbotpres ! 2D workspace79 REAL(wp), POINTER, DIMENSION(:,:) :: zpe ! 2D workspace80 REAL(wp), POINTER, DIMENSION(:,:,:) :: zrhd , zrhop ! 3D workspace81 REAL(wp), POINTER, DIMENSION(:,:,:,:) :: ztsn ! 4D workspace77 REAL(wp), DIMENSION(jpi,jpj) :: zarea_ssh , zbotpres ! 2D workspace 78 REAL(wp), DIMENSION(jpi,jpj) :: zpe ! 2D workspace 79 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zrhd , zrhop ! 3D workspace 80 REAL(wp), DIMENSION(jpi,jpj,jpk,jpts) :: ztsn ! 4D workspace 82 81 !!-------------------------------------------------------------------- 83 82 IF( nn_timing == 1 ) CALL timing_start('dia_ar5') … … 86 85 87 86 IF( l_ar5 ) THEN 88 CALL wrk_alloc( jpi , jpj , zarea_ssh , zbotpres )89 CALL wrk_alloc( jpi , jpj , jpk , zrhd , zrhop )90 CALL wrk_alloc( jpi , jpj , jpk , jpts , ztsn )91 87 zarea_ssh(:,:) = area(:,:) * sshn(:,:) 92 88 ENDIF … … 212 208 ! Exclude points where rn2 is negative as convection kicks in here and 213 209 ! work is not being done against stratification 214 CALL wrk_alloc( jpi, jpj, zpe )215 210 zpe(:,:) = 0._wp 216 211 IF( lk_zdfddm ) THEN … … 242 237 CALL lbc_lnk( zpe, 'T', 1._wp) 243 238 CALL iom_put( 'tnpeo', zpe ) 244 CALL wrk_dealloc( jpi, jpj, zpe )245 239 ENDIF 246 240 ! 247 241 IF( l_ar5 ) THEN 248 CALL wrk_dealloc( jpi , jpj , zarea_ssh , zbotpres )249 CALL wrk_dealloc( jpi , jpj , jpk , zrhd , zrhop )250 CALL wrk_dealloc( jpi , jpj , jpk , jpts , ztsn )251 242 ENDIF 252 243 ! … … 268 259 ! 269 260 INTEGER :: ji, jj, jk 270 REAL(wp), POINTER, DIMENSION(:,:) :: z2d261 REAL(wp), DIMENSION(jpi,jpj) :: z2d 271 262 272 263 273 264 274 CALL wrk_alloc( jpi, jpj, z2d )275 265 z2d(:,:) = pua(:,:,1) 276 266 DO jk = 1, jpkm1 … … 309 299 ENDIF 310 300 311 CALL wrk_dealloc( jpi, jpj, z2d )312 301 313 302 END SUBROUTINE dia_ar5_hst … … 324 313 INTEGER :: ji, jj, jk ! dummy loop indices 325 314 REAL(wp) :: zztmp 326 REAL(wp), POINTER, DIMENSION(:,:,:,:) :: zsaldta ! Jan/Dec levitus salinity315 REAL(wp), DIMENSION(jpi,jpj,jpk,jpts) :: zsaldta ! Jan/Dec levitus salinity 327 316 ! 328 317 !!---------------------------------------------------------------------- … … 337 326 IF( l_ar5 ) THEN 338 327 ! 339 CALL wrk_alloc( jpi , jpj , jpk, jpts, zsaldta )340 328 ! ! allocate dia_ar5 arrays 341 329 IF( dia_ar5_alloc() /= 0 ) CALL ctl_stop( 'STOP', 'dia_ar5_init : unable to allocate arrays' ) … … 372 360 ENDIF 373 361 ! 374 CALL wrk_dealloc( jpi , jpj , jpk, jpts, zsaldta )375 362 ! 376 363 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.