Changeset 10946 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/OCE/TRD/trddyn.F90
- Timestamp:
- 2019-05-08T10:56:14+02:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/OCE/TRD/trddyn.F90
r10425 r10946 44 44 CONTAINS 45 45 46 SUBROUTINE trd_dyn( putrd, pvtrd, ktrd, kt )46 SUBROUTINE trd_dyn( putrd, pvtrd, ktrd, kt, Kmm ) 47 47 !!--------------------------------------------------------------------- 48 48 !! *** ROUTINE trd_mod *** … … 55 55 INTEGER , INTENT(in ) :: ktrd ! trend index 56 56 INTEGER , INTENT(in ) :: kt ! time step 57 INTEGER , INTENT(in ) :: Kmm ! time level index 57 58 !!---------------------------------------------------------------------- 58 59 ! … … 66 67 ! 3D output of momentum and/or tracers trends using IOM interface 67 68 !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 68 IF( ln_dyn_trd ) CALL trd_dyn_iom( putrd, pvtrd, ktrd, kt )69 IF( ln_dyn_trd ) CALL trd_dyn_iom( putrd, pvtrd, ktrd, kt, Kmm ) 69 70 70 71 !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 71 72 ! Integral Constraints Properties for momentum and/or tracers trends 72 73 !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 73 IF( ln_glo_trd ) CALL trd_glo( putrd, pvtrd, ktrd, 'DYN', kt )74 IF( ln_glo_trd ) CALL trd_glo( putrd, pvtrd, ktrd, 'DYN', kt, Kmm ) 74 75 75 76 !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 76 77 ! Kinetic Energy trends 77 78 !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 78 IF( ln_KE_trd ) CALL trd_ken( putrd, pvtrd, ktrd, kt )79 IF( ln_KE_trd ) CALL trd_ken( putrd, pvtrd, ktrd, kt, Kmm ) 79 80 80 81 !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 81 82 ! Vorticity trends 82 83 !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 83 IF( ln_vor_trd ) CALL trd_vor( putrd, pvtrd, ktrd, kt )84 IF( ln_vor_trd ) CALL trd_vor( putrd, pvtrd, ktrd, kt, Kmm ) 84 85 85 86 !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> … … 91 92 92 93 93 SUBROUTINE trd_dyn_iom( putrd, pvtrd, ktrd, kt )94 SUBROUTINE trd_dyn_iom( putrd, pvtrd, ktrd, kt, Kmm ) 94 95 !!--------------------------------------------------------------------- 95 96 !! *** ROUTINE trd_dyn_iom *** … … 100 101 INTEGER , INTENT(in ) :: ktrd ! trend index 101 102 INTEGER , INTENT(in ) :: kt ! time step 103 INTEGER , INTENT(in ) :: Kmm ! time level index 102 104 ! 103 105 INTEGER :: ji, jj, jk ! dummy loop indices … … 124 126 DO jj = 2, jpjm1 125 127 DO ji = 2, jpim1 126 z3dx(ji,jj,jk) = u n(ji,jj,jk) * ( un(ji+1,jj,jk) - un(ji-1,jj,jk) ) / ( 2._wp * e1u(ji,jj) )127 z3dy(ji,jj,jk) = v n(ji,jj,jk) * ( vn(ji,jj+1,jk) - vn(ji,jj-1,jk) ) / ( 2._wp * e2v(ji,jj) )128 z3dx(ji,jj,jk) = uu(ji,jj,jk,Kmm) * ( uu(ji+1,jj,jk,Kmm) - uu(ji-1,jj,jk,Kmm) ) / ( 2._wp * e1u(ji,jj) ) 129 z3dy(ji,jj,jk) = vv(ji,jj,jk,Kmm) * ( vv(ji,jj+1,jk,Kmm) - vv(ji,jj-1,jk,Kmm) ) / ( 2._wp * e2v(ji,jj) ) 128 130 END DO 129 131 END DO … … 142 144 ! ! wind stress trends 143 145 ALLOCATE( z2dx(jpi,jpj) , z2dy(jpi,jpj) ) 144 z2dx(:,:) = ( utau_b(:,:) + utau(:,:) ) / ( e3u _n(:,:,1) * rau0 )145 z2dy(:,:) = ( vtau_b(:,:) + vtau(:,:) ) / ( e3v _n(:,:,1) * rau0 )146 z2dx(:,:) = ( utau_b(:,:) + utau(:,:) ) / ( e3u(:,:,1,Kmm) * rau0 ) 147 z2dy(:,:) = ( vtau_b(:,:) + vtau(:,:) ) / ( e3v(:,:,1,Kmm) * rau0 ) 146 148 CALL iom_put( "utrd_tau", z2dx ) 147 149 CALL iom_put( "vtrd_tau", z2dy ) … … 159 161 ! ikbv = mbkv(ji,jj) 160 162 ! z3dx(ji,jj,jk) = 0.5 * ( rCdU_bot(ji+1,jj) + rCdU_bot(ji,jj) ) & 161 ! & * u n(ji,jj,ikbu) / e3u_n(ji,jj,ikbu)163 ! & * uu(ji,jj,ikbu,Kmm) / e3u(ji,jj,ikbu,Kmm) 162 164 ! z3dy(ji,jj,jk) = 0.5 * ( rCdU_bot(ji,jj+1) + rCdU_bot(ji,jj) ) & 163 ! & * v n(ji,jj,ikbv) / e3v_n(ji,jj,ikbv)165 ! & * vv(ji,jj,ikbv,Kmm) / e3v(ji,jj,ikbv,Kmm) 164 166 ! END DO 165 167 ! END DO
Note: See TracChangeset
for help on using the changeset viewer.