Changeset 7698 for trunk/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfevd.F90
- Timestamp:
- 2017-02-18T10:02:03+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfevd.F90
r7646 r7698 70 70 CALL wrk_alloc( jpi,jpj,jpk, zavt_evd, zavm_evd ) 71 71 ! 72 zavt_evd(:,:,:) = avt(:,:,:) ! set avt prior to evd application 72 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji) 73 DO jk = 1, jpk 74 DO jj = 1, jpj 75 DO ji = 1, jpi 76 zavt_evd(ji,jj,jk) = avt(ji,jj,jk) ! set avt prior to evd application 77 END DO 78 END DO 79 END DO 73 80 ! 74 81 SELECT CASE ( nn_evdm ) … … 76 83 CASE ( 1 ) ! enhance vertical eddy viscosity and diffusivity (if rn2<-1.e-12) 77 84 ! 78 zavm_evd(:,:,:) = avm(:,:,:) ! set avm prior to evd application 85 !$OMP PARALLEL 86 !$OMP DO schedule(static) private(jk, jj, ji) 87 DO jk = 1, jpk 88 DO jj = 1, jpj 89 DO ji = 1, jpi 90 zavm_evd(ji,jj,jk) = avm(ji,jj,jk) ! set avm prior to evd application 91 END DO 92 END DO 93 END DO 79 94 ! 95 !$OMP DO schedule(static) private(jk, jj, ji) 80 96 DO jk = 1, jpkm1 81 97 DO jj = 2, jpj ! no vector opt. … … 92 108 END DO 93 109 END DO 110 !$OMP END PARALLEL 94 111 CALL lbc_lnk( avt , 'W', 1. ) ; CALL lbc_lnk( avm , 'W', 1. ) ! Lateral boundary conditions 95 112 CALL lbc_lnk( avmu, 'U', 1. ) ; CALL lbc_lnk( avmv, 'V', 1. ) 96 113 ! 97 zavm_evd(:,:,:) = avm(:,:,:) - zavm_evd(:,:,:) ! change in avm due to evd 114 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji) 115 DO jk = 1, jpk 116 DO jj = 1, jpj 117 DO ji = 1, jpi 118 zavm_evd(ji,jj,jk) = avm(ji,jj,jk) - zavm_evd(ji,jj,jk) ! change in avm due to evd 119 END DO 120 END DO 121 END DO 98 122 CALL iom_put( "avm_evd", zavm_evd ) ! output this change 99 123 ! 100 124 CASE DEFAULT ! enhance vertical eddy diffusivity only (if rn2<-1.e-12) 125 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji) 101 126 DO jk = 1, jpkm1 102 127 !!! WHERE( rn2(:,:,jk) <= -1.e-12 ) avt(:,:,jk) = tmask(:,:,jk) * avevd ! agissant sur T SEUL! … … 111 136 END SELECT 112 137 113 zavt_evd(:,:,:) = avt(:,:,:) - zavt_evd(:,:,:) ! change in avt due to evd 138 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji) 139 DO jk = 1, jpk 140 DO jj = 1, jpj 141 DO ji = 1, jpi 142 zavt_evd(ji,jj,jk) = avt(ji,jj,jk) - zavt_evd(ji,jj,jk) ! change in avt due to evd 143 END DO 144 END DO 145 END DO 114 146 CALL iom_put( "avt_evd", zavt_evd ) ! output this change 115 147 IF( l_trdtra ) CALL trd_tra( kt, 'TRA', jp_tem, jptra_evd, zavt_evd )
Note: See TracChangeset
for help on using the changeset viewer.