Changeset 2775 for branches/2011/dev_r2769_LOCEAN_dynamic_mem
- Timestamp:
- 2011-06-03T14:55:09+02:00 (13 years ago)
- Location:
- branches/2011/dev_r2769_LOCEAN_dynamic_mem/NEMOGCM/NEMO/OPA_SRC
- Files:
-
- 1 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2011/dev_r2769_LOCEAN_dynamic_mem/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_tvd.F90
r2771 r2775 33 33 USE trc_oce ! share passive tracers/Ocean variables 34 34 USE timing ! preformance summary 35 USE wrk_nemo_2 ! working arrays 35 36 36 37 IMPLICIT NONE … … 66 67 !! - save the trends 67 68 !!---------------------------------------------------------------------- 68 USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released69 69 USE oce , ONLY: zwx => ua , zwy => va ! (ua,va) used as workspace 70 USE wrk_nemo, ONLY: zwi => wrk_3d_12 , zwz => wrk_3d_13 ! 3D workspace71 70 ! 72 71 INTEGER , INTENT(in ) :: kt ! ocean time-step index … … 82 81 REAL(wp) :: zfp_ui, zfp_vj, zfp_wk ! - - 83 82 REAL(wp) :: zfm_ui, zfm_vj, zfm_wk ! - - 83 REAL(wp), DIMENSION (:,:,:), POINTER :: zwi, zwz 84 84 REAL(wp), DIMENSION (:,:,:), ALLOCATABLE :: ztrdx, ztrdy, ztrdz 85 85 !!---------------------------------------------------------------------- … … 87 87 IF( ln_timing ) CALL timing_start('traadv_tvd') 88 88 89 IF( wrk_in_use(3, 12,13) ) THEN 90 CALL ctl_stop('tra_adv_tvd: requested workspace arrays unavailable') ; RETURN 91 ENDIF 92 89 ! IF( wrk_in_use(3, 12,13) ) THEN 90 ! CALL ctl_stop('tra_adv_tvd: requested workspace arrays unavailable') ; RETURN 91 ! ENDIF 92 93 CALL nemo_allocate(zwi) ; CALL nemo_allocate(zwz) 94 93 95 IF( kt == nit000 ) THEN 94 96 IF(lwp) WRITE(numout,*) … … 247 249 END IF 248 250 ! 249 IF( wrk_not_released(3, 12,13) ) CALL ctl_stop('tra_adv_tvd: failed to release workspace arrays') 251 ! IF( wrk_not_released(3, 12,13) ) CALL ctl_stop('tra_adv_tvd: failed to release workspace arrays') 252 CALL nemo_deallocate(zwi) ; CALL nemo_deallocate(zwz) 250 253 ! 251 254 IF( ln_timing ) CALL timing_stop('traadv_tvd') … … 267 270 !! in-space based differencing for fluid 268 271 !!---------------------------------------------------------------------- 269 USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released270 USE wrk_nemo, ONLY: zbetup => wrk_3d_8 , zbetdo => wrk_3d_9 ! 3D workspace271 USE wrk_nemo, ONLY: zbup => wrk_3d_10 , zbdo => wrk_3d_11 ! - -272 ! USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released 273 ! USE wrk_nemo, ONLY: zbetup => wrk_3d_8 , zbetdo => wrk_3d_9 ! 3D workspace 274 ! USE wrk_nemo, ONLY: zbup => wrk_3d_10 , zbdo => wrk_3d_11 ! - - 272 275 ! 273 276 REAL(wp), DIMENSION(jpk) , INTENT(in ) :: p2dt ! vertical profile of tracer time-step … … 279 282 REAL(wp) :: zpos, zneg, zbt, za, zb, zc, zbig, zrtrn, z2dtt ! local scalars 280 283 REAL(wp) :: zau, zbu, zcu, zav, zbv, zcv, zup, zdo ! - - 284 REAL(wp), DIMENSION(:,:,:), POINTER :: zbetup, zbetdo, zbup, zbdo 281 285 !!---------------------------------------------------------------------- 282 286 283 287 IF( ln_timing ) CALL timing_start('nonosc') 284 288 285 IF( wrk_in_use(3, 8,9,10,11) ) THEN 286 CALL ctl_stop('nonosc: requested workspace array unavailable') ; RETURN 287 ENDIF 289 CALL nemo_allocate(zbetup) ; CALL nemo_allocate(zbetdo) 290 CALL nemo_allocate(zbup ) ; CALL nemo_allocate(zbdo ) 291 292 ! IF( wrk_in_use(3, 8,9,10,11) ) THEN 293 ! CALL ctl_stop('nonosc: requested workspace array unavailable') ; RETURN 294 ! ENDIF 288 295 289 296 zbig = 1.e+40_wp … … 365 372 CALL lbc_lnk( paa, 'U', -1. ) ; CALL lbc_lnk( pbb, 'V', -1. ) ! lateral boundary condition (changed sign) 366 373 ! 367 IF( wrk_not_released(3, 8,9,10,11) ) CALL ctl_stop('nonosc: failed to release workspace arrays') 374 !RB IF( wrk_not_released(3, 8,9,10,11) ) CALL ctl_stop('nonosc: failed to release workspace arrays') 375 ! 376 CALL nemo_deallocate(zbetup) ; CALL nemo_deallocate(zbetdo) 377 CALL nemo_deallocate(zbup ) ; CALL nemo_deallocate(zbdo ) 368 378 ! 369 379 IF( ln_timing ) CALL timing_stop('nonosc') -
branches/2011/dev_r2769_LOCEAN_dynamic_mem/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90
r2771 r2775 482 482 !! ** Method : 483 483 !!---------------------------------------------------------------------- 484 USE diawri , ONLY: dia_wri_alloc 485 USE dom_oce , ONLY: dom_oce_alloc 486 USE ldfdyn_oce, ONLY: ldfdyn_oce_alloc 487 USE ldftra_oce, ONLY: ldftra_oce_alloc 488 USE trc_oce , ONLY: trc_oce_alloc 489 USE wrk_nemo , ONLY: wrk_alloc 484 USE diawri , ONLY: dia_wri_alloc 485 USE dom_oce , ONLY: dom_oce_alloc 486 USE ldfdyn_oce , ONLY: ldfdyn_oce_alloc 487 USE ldftra_oce , ONLY: ldftra_oce_alloc 488 USE trc_oce , ONLY: trc_oce_alloc 489 USE wrk_nemo , ONLY: wrk_alloc 490 USE wrk_nemo_2 , ONLY: wrk_alloc_2 490 491 ! 491 492 INTEGER :: ierr … … 503 504 ! 504 505 ierr = ierr + wrk_alloc(numout, lwp) ! workspace 506 ierr = ierr + wrk_alloc_2(numout, lwp) ! workspace 505 507 ! 506 508 IF( lk_mpp ) CALL mpp_sum( ierr )
Note: See TracChangeset
for help on using the changeset viewer.