Changeset 2232 for palm/trunk/SOURCE/advec_s_up.f90
- Timestamp:
- May 30, 2017 5:47:52 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/advec_s_up.f90
r2101 r2232 20 20 ! Current revisions: 21 21 ! ----------------- 22 ! 22 ! topography representation via flags 23 23 ! 24 24 ! Former revisions: … … 104 104 105 105 USE indices, & 106 ONLY: nxl, nxlg, nxr, nxrg, nyn, nyng, nys, nysg, nzb, nz b_s_inner,&107 nzt106 ONLY: nxl, nxlg, nxr, nxrg, nyn, nyng, nys, nysg, nzb, nzt, & 107 wall_flags_0 108 108 109 109 USE kinds … … 128 128 DO i = nxl, nxr 129 129 DO j = nys, nyn 130 DO k = nzb _s_inner(j,i)+1, nzt130 DO k = nzb+1, nzt 131 131 ! 132 132 !-- x-direction … … 134 134 IF ( ukomp > 0.0_wp ) THEN 135 135 tend(k,j,i) = tend(k,j,i) - ukomp * & 136 ( sk(k,j,i) - sk(k,j,i-1) ) * ddx 136 ( sk(k,j,i) - sk(k,j,i-1) ) * ddx & 137 * MERGE( 1.0_wp, 0.0_wp, & 138 BTEST( wall_flags_0(k,j,i), 0 ) ) 137 139 ELSE 138 140 tend(k,j,i) = tend(k,j,i) - ukomp * & 139 ( sk(k,j,i+1) - sk(k,j,i) ) * ddx 141 ( sk(k,j,i+1) - sk(k,j,i) ) * ddx & 142 * MERGE( 1.0_wp, 0.0_wp, & 143 BTEST( wall_flags_0(k,j,i), 0 ) ) 140 144 ENDIF 141 145 ! … … 144 148 IF ( vkomp > 0.0_wp ) THEN 145 149 tend(k,j,i) = tend(k,j,i) - vkomp * & 146 ( sk(k,j,i) - sk(k,j-1,i) ) * ddy 150 ( sk(k,j,i) - sk(k,j-1,i) ) * ddy & 151 * MERGE( 1.0_wp, 0.0_wp, & 152 BTEST( wall_flags_0(k,j,i), 0 ) ) 147 153 ELSE 148 154 tend(k,j,i) = tend(k,j,i) - vkomp * & 149 ( sk(k,j+1,i) - sk(k,j,i) ) * ddy 155 ( sk(k,j+1,i) - sk(k,j,i) ) * ddy & 156 * MERGE( 1.0_wp, 0.0_wp, & 157 BTEST( wall_flags_0(k,j,i), 0 ) ) 150 158 ENDIF 151 159 ! … … 154 162 IF ( wkomp > 0.0_wp ) THEN 155 163 tend(k,j,i) = tend(k,j,i) - wkomp * & 156 ( sk(k,j,i) - sk(k-1,j,i) ) * ddzu(k) 164 ( sk(k,j,i) - sk(k-1,j,i) ) * ddzu(k) & 165 * MERGE( 1.0_wp, 0.0_wp, & 166 BTEST( wall_flags_0(k,j,i), 0 ) ) 157 167 ELSE 158 168 tend(k,j,i) = tend(k,j,i) - wkomp * & 159 ( sk(k+1,j,i)-sk(k,j,i) ) * ddzu(k+1) 169 ( sk(k+1,j,i)-sk(k,j,i) ) * ddzu(k+1) & 170 * MERGE( 1.0_wp, 0.0_wp, & 171 BTEST( wall_flags_0(k,j,i), 0 ) ) 160 172 ENDIF 161 173 … … 184 196 185 197 USE indices, & 186 ONLY: nxlg, nxrg, nyng, nysg, nzb, nz b_s_inner, nzt198 ONLY: nxlg, nxrg, nyng, nysg, nzb, nzt, wall_flags_0 187 199 188 200 USE kinds … … 206 218 207 219 208 DO k = nzb _s_inner(j,i)+1, nzt220 DO k = nzb+1, nzt 209 221 ! 210 222 !-- x-direction … … 212 224 IF ( ukomp > 0.0_wp ) THEN 213 225 tend(k,j,i) = tend(k,j,i) - ukomp * & 214 ( sk(k,j,i) - sk(k,j,i-1) ) * ddx 226 ( sk(k,j,i) - sk(k,j,i-1) ) * ddx & 227 * MERGE( 1.0_wp, 0.0_wp, & 228 BTEST( wall_flags_0(k,j,i), 0 ) ) 215 229 ELSE 216 230 tend(k,j,i) = tend(k,j,i) - ukomp * & 217 ( sk(k,j,i+1) - sk(k,j,i) ) * ddx 231 ( sk(k,j,i+1) - sk(k,j,i) ) * ddx & 232 * MERGE( 1.0_wp, 0.0_wp, & 233 BTEST( wall_flags_0(k,j,i), 0 ) ) 218 234 ENDIF 219 235 ! … … 222 238 IF ( vkomp > 0.0_wp ) THEN 223 239 tend(k,j,i) = tend(k,j,i) - vkomp * & 224 ( sk(k,j,i) - sk(k,j-1,i) ) * ddy 240 ( sk(k,j,i) - sk(k,j-1,i) ) * ddy & 241 * MERGE( 1.0_wp, 0.0_wp, & 242 BTEST( wall_flags_0(k,j,i), 0 ) ) 225 243 ELSE 226 244 tend(k,j,i) = tend(k,j,i) - vkomp * & 227 ( sk(k,j+1,i) - sk(k,j,i) ) * ddy 245 ( sk(k,j+1,i) - sk(k,j,i) ) * ddy & 246 * MERGE( 1.0_wp, 0.0_wp, & 247 BTEST( wall_flags_0(k,j,i), 0 ) ) 228 248 ENDIF 229 249 ! … … 232 252 IF ( wkomp > 0.0_wp ) THEN 233 253 tend(k,j,i) = tend(k,j,i) - wkomp * & 234 ( sk(k,j,i) - sk(k-1,j,i) ) * ddzu(k) 254 ( sk(k,j,i) - sk(k-1,j,i) ) * ddzu(k) & 255 * MERGE( 1.0_wp, 0.0_wp, & 256 BTEST( wall_flags_0(k,j,i), 0 ) ) 235 257 ELSE 236 258 tend(k,j,i) = tend(k,j,i) - wkomp * & 237 ( sk(k+1,j,i)-sk(k,j,i) ) * ddzu(k+1) 259 ( sk(k+1,j,i)-sk(k,j,i) ) * ddzu(k+1) & 260 * MERGE( 1.0_wp, 0.0_wp, & 261 BTEST( wall_flags_0(k,j,i), 0 ) ) 238 262 ENDIF 239 263
Note: See TracChangeset
for help on using the changeset viewer.