- Timestamp:
- 2011-02-18T13:49:27+01:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/OPA_SRC/DYN/dynldf_iso.F90
r2528 r2590 30 30 !! * Routine accessibility 31 31 PUBLIC dyn_ldf_iso ! called by step.F90 32 PUBLIC dyn_ldf_iso_alloc ! called by nemogcm.F90 33 34 ! These are just workspace arrays but because they are (jpi,jpk) in extent 35 ! we can't use the arrays in wrk_nemo for them 36 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: zfuw, zdiu, zdju, zdj1u 37 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: zfvw, zdiv, zdjv, zdj1v 32 38 33 39 !! * Substitutions … … 42 48 43 49 CONTAINS 50 51 FUNCTION dyn_ldf_iso_alloc() 52 !!---------------------------------------------------------------------- 53 !! *** ROUTINE dyn_ldf_iso_alloc *** 54 !!---------------------------------------------------------------------- 55 INTEGER :: dyn_ldf_iso_alloc 56 !!---------------------------------------------------------------------- 57 58 ALLOCATE(zfuw(jpi,jpk), zdiu(jpi,jpk), zdju(jpi,jpk), zdj1u(jpi,jpk), & 59 zfvw(jpi,jpk), zdiv(jpi,jpk), zdjv(jpi,jpk), zdj1v(jpi,jpk), & 60 Stat=dyn_ldf_iso_alloc) 61 62 IF(dyn_ldf_iso_alloc /= 0)THEN 63 CALL ctl_warn('dyn_ldf_iso_alloc: array allocate failed.') 64 END IF 65 66 END FUNCTION dyn_ldf_iso_alloc 67 44 68 45 69 SUBROUTINE dyn_ldf_iso( kt ) … … 93 117 !! ! 05-11 (G. Madec) s-coordinate: horizontal diffusion 94 118 !!---------------------------------------------------------------------- 119 USE wrk_nemo, ONLY: wrk_use, wrk_release 120 USE wrk_nemo, ONLY: ziut => wrk_2d_1, zjuf => wrk_2d_2, & ! temporary workspace 121 zjvt => wrk_2d_3, zivf => wrk_2d_4, & 122 zdku => wrk_2d_5, zdk1u => wrk_2d_6, & 123 zdkv => wrk_2d_7, zdk1v => wrk_2d_8 124 !! 95 125 !! * Arguments 96 126 INTEGER, INTENT( in ) :: kt ! ocean time-step index … … 102 132 zmskt, zmskf, zbu, zbv, & 103 133 zuah, zvah 104 REAL(wp), DIMENSION(jpi,jpj) :: &105 ziut, zjuf, zjvt, zivf, & ! temporary workspace106 zdku, zdk1u, zdkv, zdk1v107 134 108 135 REAL(wp) :: & 109 136 zcoef0, zcoef3, zcoef4, zmkt, zmkf, & 110 137 zuav, zvav, zuwslpi, zuwslpj, zvwslpi, zvwslpj 111 REAL(wp), DIMENSION(jpi,jpk) :: & 112 zfuw, zdiu, zdju, zdj1u, & ! " " 113 zfvw, zdiv, zdjv, zdj1v 114 115 !!---------------------------------------------------------------------- 138 139 !!---------------------------------------------------------------------- 140 141 IF( .NOT. wrk_use(2, 1,2,3,4,5,6,7,8))THEN 142 CALL ctl_stop('dyn_ldf_iso: requested workspace arrays unavailable.') 143 RETURN 144 END IF 116 145 117 146 IF( kt == nit000 ) THEN … … 420 449 ! ! =============== 421 450 451 IF( .NOT. wrk_release(2, 1,2,3,4,5,6,7,8))THEN 452 CALL ctl_stop('dyn_ldf_iso: failed to release workspace arrays.') 453 END IF 454 422 455 END SUBROUTINE dyn_ldf_iso 423 456 … … 428 461 CONTAINS 429 462 SUBROUTINE dyn_ldf_iso( kt ) ! Empty routine 463 INTEGER, INTENT(in) :: kt 430 464 WRITE(*,*) 'dyn_ldf_iso: You should not have seen this print! error?', kt 431 465 END SUBROUTINE dyn_ldf_iso
Note: See TracChangeset
for help on using the changeset viewer.