- Timestamp:
- 2011-11-18T22:41:44+01:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_ubs.F90
r3116 r3159 22 22 USE dynspg_oce ! choice/control of key cpp for surface pressure gradient 23 23 USE trc_oce ! share passive tracers/Ocean variables 24 USE wrk_nemo_2 ! Memory Allocation 25 USE timing ! Timing 24 26 25 27 IMPLICIT NONE … … 73 75 !! Farrow, D.E., Stevens, D.P., 1995, J. Phys. Ocean. 25, 1731Ð1741. 74 76 !!---------------------------------------------------------------------- 75 USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released76 77 USE oce , ONLY: zwx => ua , zwy => va ! (ua,va) used as workspace 77 USE wrk_nemo, ONLY: ztu => wrk_3d_1 , ztv => wrk_3d_2 ! 3D workspace78 USE wrk_nemo, ONLY: zltu => wrk_3d_3 , zltv => wrk_3d_4 ! - -79 USE wrk_nemo, ONLY: zti => wrk_3d_5 , ztw => wrk_3d_6 ! - -80 78 ! 81 79 INTEGER , INTENT(in ) :: kt ! ocean time-step index … … 92 90 REAL(wp) :: zfp_ui, zfm_ui, zcenut, ztak, zfp_wk, zfm_wk ! - - 93 91 REAL(wp) :: zfp_vj, zfm_vj, zcenvt, zeeu, zeev, z_hdivn ! - - 94 !!---------------------------------------------------------------------- 95 96 IF( wrk_in_use(3, 1,2,3,4,5,6) )THEN 97 CALL ctl_stop('tra_adv_ubs: requested workspace arrays unavailable') ; RETURN 98 ENDIF 92 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztu, ztv, zltu, zltv, zti, ztw 93 !!---------------------------------------------------------------------- 94 ! 95 IF( nn_timing == 1 ) CALL timing_start('tra_adv_ubs') 96 ! 97 CALL wrk_alloc( jpi, jpj, jpk, ztu, ztv, zltu, zltv, zti, ztw ) 98 ! 99 99 100 100 IF( kt == kit000 ) THEN … … 269 269 ENDDO 270 270 ! 271 IF( wrk_not_released(3, 1,2,3,4,5,6) ) CALL ctl_stop('tra_adv_ubs: failed to release workspace arrays') 271 CALL wrk_dealloc( jpi, jpj, jpk, ztu, ztv, zltu, zltv, zti, ztw ) 272 ! 273 IF( nn_timing == 1 ) CALL timing_stop('tra_adv_ubs') 272 274 ! 273 275 END SUBROUTINE tra_adv_ubs … … 287 289 !! in-space based differencing for fluid 288 290 !!---------------------------------------------------------------------- 289 USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released290 USE wrk_nemo, ONLY: zbetup => wrk_3d_1, zbetdo => wrk_3d_2 ! 3D workspace291 291 ! 292 292 REAL(wp), INTENT(in ), DIMENSION(jpk) :: p2dt ! vertical profile of tracer time-step … … 298 298 INTEGER :: ikm1 ! local integer 299 299 REAL(wp) :: zpos, zneg, zbt, za, zb, zc, zbig, zrtrn, z2dtt ! local scalars 300 !!---------------------------------------------------------------------- 301 302 IF( wrk_in_use(3, 1,2) ) THEN 303 CALL ctl_stop('nonosc_z: requested workspace arrays unavailable') ; RETURN 304 ENDIF 300 REAL(wp), POINTER, DIMENSION(:,:,:) :: zbetup, zbetdo 301 !!---------------------------------------------------------------------- 302 ! 303 IF( nn_timing == 1 ) CALL timing_start('nonosc_z') 304 ! 305 CALL wrk_alloc( jpi, jpj, jpk, zbetup, zbetdo ) 306 ! 305 307 306 308 zbig = 1.e+40_wp … … 374 376 END DO 375 377 ! 376 IF( wrk_not_released(3, 1,2) ) CALL ctl_stop('nonosc_z: failed to release workspace arrays') 378 CALL wrk_dealloc( jpi, jpj, jpk, zbetup, zbetdo ) 379 ! 380 IF( nn_timing == 1 ) CALL timing_stop('nonosc_z') 377 381 ! 378 382 END SUBROUTINE nonosc_z
Note: See TracChangeset
for help on using the changeset viewer.