- Timestamp:
- 2017-02-06T16:21:14+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/GO6_dyn_vrt_diag/NEMOGCM/NEMO/OPA_SRC/DYN/dynzad.F90
r6486 r7649 18 18 USE trd_oce ! trends: ocean variables 19 19 USE trddyn ! trend manager: dynamics 20 USE divcur ! for dyn_vrt_dia 20 21 ! 21 22 USE in_out_manager ! I/O manager … … 59 60 INTEGER, INTENT(in) :: kt ! ocean time-step inedx 60 61 ! 61 INTEGER :: ji, jj, jk ! dummy loop indices 62 REAL(wp) :: zua, zva ! temporary scalars 62 INTEGER :: id_dia_vrt_zad_int = 1 ! TODO remove once flags set properly 63 INTEGER :: id_dia_vrt_zad_mean = 1 ! TODO remove once flags set properly 64 INTEGER :: ji, jj, jk ! dummy loop indices 63 65 REAL(wp), POINTER, DIMENSION(:,:,:) :: zwuw , zwvw 64 66 REAL(wp), POINTER, DIMENSION(:,: ) :: zww 65 67 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztrdu, ztrdv 68 REAL(wp), POINTER, DIMENSION(:,:,:) :: zua, zva 66 69 !!---------------------------------------------------------------------- 67 70 ! … … 69 72 ! 70 73 CALL wrk_alloc( jpi,jpj, zww ) 71 CALL wrk_alloc( jpi,jpj,jpk, zwuw , zwvw )74 CALL wrk_alloc( jpi,jpj,jpk, zwuw , zwvw, zua, zva ) 72 75 ! 73 76 IF( kt == nit000 ) THEN … … 121 124 DO ji = fs_2, fs_jpim1 ! vector opt. 122 125 ! ! vertical momentum advective trends 123 zua = - ( zwuw(ji,jj,jk) + zwuw(ji,jj,jk+1) ) / ( e1u(ji,jj) * e2u(ji,jj) * fse3u(ji,jj,jk) ) 124 zva = - ( zwvw(ji,jj,jk) + zwvw(ji,jj,jk+1) ) / ( e1v(ji,jj) * e2v(ji,jj) * fse3v(ji,jj,jk) ) 126 zua(ji,jj,jk) = - ( zwuw(ji,jj,jk) + zwuw(ji,jj,jk+1) ) / & 127 & ( e1u(ji,jj) * e2u(ji,jj) * fse3u(ji,jj,jk) ) 128 zva(ji,jj,jk) = - ( zwvw(ji,jj,jk) + zwvw(ji,jj,jk+1) ) / & 129 & ( e1v(ji,jj) * e2v(ji,jj) * fse3v(ji,jj,jk) ) 125 130 ! ! add the trends to the general momentum trends 126 ua(ji,jj,jk) = ua(ji,jj,jk) + zua 127 va(ji,jj,jk) = va(ji,jj,jk) + zva 131 ua(ji,jj,jk) = ua(ji,jj,jk) + zua(ji,jj,jk) 132 va(ji,jj,jk) = va(ji,jj,jk) + zva(ji,jj,jk) 128 133 END DO 129 134 END DO … … 140 145 & tab3d_2=va, clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 141 146 ! 147 IF ( ( id_dia_vrt_zad_int == 1 ) .or. ( id_dia_vrt_zad_mean == 1 ) ) THEN 148 CALL dyn_vrt_dia(zua, zva, id_dia_vrt_zad_int, id_dia_vrt_zad_mean) 149 END IF 150 ! 142 151 CALL wrk_dealloc( jpi,jpj, zww ) 143 CALL wrk_dealloc( jpi,jpj,jpk, zwuw , zwvw )152 CALL wrk_dealloc( jpi,jpj,jpk, zwuw , zwvw, zua, zva ) 144 153 ! 145 154 IF( nn_timing == 1 ) CALL timing_stop('dyn_zad')
Note: See TracChangeset
for help on using the changeset viewer.