Changeset 4183 for palm/trunk/SOURCE/inflow_turbulence.f90
- Timestamp:
- Aug 23, 2019 7:33:16 AM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/inflow_turbulence.f90
r4182 r4183 25 25 ! ----------------- 26 26 ! $Id$ 27 ! simplified steering of recycling of absolute values by initialization 28 ! parameter recycling_method_for_thermodynamic_quantities 29 ! 30 ! 4182 2019-08-22 15:20:23Z scharf 27 31 ! Corrected "Former revisions" section 28 32 ! … … 47 51 48 52 USE control_parameters, & 49 ONLY: humidity, passive_scalar, recycling_plane, recycling_yshift, raq 53 ONLY: humidity, passive_scalar, recycling_plane, recycling_yshift, & 54 recycling_method_for_thermodynamic_quantities 50 55 51 56 USE cpulog, & … … 156 161 DO j = nysg, nyng 157 162 DO k = nzb, nzt + 1 158 159 163 inflow_dist(k,j,1,l) = u(k,j,i+1) - avpr(k,1,l) 160 164 inflow_dist(k,j,2,l) = v(k,j,i) - avpr(k,2,l) 161 165 inflow_dist(k,j,3,l) = w(k,j,i) - avpr(k,3,l) 162 IF ( raq(4) ) THEN 166 IF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 167 == 'turbulent_fluctuation' ) THEN 168 inflow_dist(k,j,4,l) = pt(k,j,i) - avpr(k,4,l) 169 ELSEIF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 170 == 'absolute_value' ) THEN 163 171 inflow_dist(k,j,4,l) = pt(k,j,i) 164 ELSE165 inflow_dist(k,j,4,l) = pt(k,j,i) - avpr(k,4,l)166 172 ENDIF 167 173 inflow_dist(k,j,5,l) = e(k,j,i) - avpr(k,5,l) 168 174 IF ( humidity ) THEN 169 IF ( raq(6) ) THEN 175 IF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 176 == 'turbulent_fluctuation' ) THEN 177 inflow_dist(k,j,6,l) = q(k,j,i) - avpr(k,6,l) 178 ELSEIF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 179 == 'absolute_value' ) THEN 170 180 inflow_dist(k,j,6,l) = q(k,j,i) 171 ELSE172 inflow_dist(k,j,6,l) = q(k,j,i) - avpr(k,6,l)173 181 ENDIF 174 182 ENDIF … … 188 196 inflow_dist(k,j,2,l) = v(k,j,i) - avpr(k,2,l) 189 197 inflow_dist(k,j,3,l) = w(k,j,i) - avpr(k,3,l) 190 IF ( raq(4) ) THEN 198 IF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 199 == 'turbulent_fluctuation' ) THEN 200 inflow_dist(k,j,4,l) = pt(k,j,i) - avpr(k,4,l) 201 ELSEIF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 202 == 'absolute_value' ) THEN 191 203 inflow_dist(k,j,4,l) = pt(k,j,i) 192 ELSE193 inflow_dist(k,j,4,l) = pt(k,j,i) - avpr(k,4,l)194 204 ENDIF 195 205 inflow_dist(k,j,5,l) = e(k,j,i) - avpr(k,5,l) 196 206 IF ( humidity ) THEN 197 IF ( raq(6) ) THEN 207 IF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 208 == 'turbulent_fluctuation' ) THEN 209 inflow_dist(k,j,6,l) = q(k,j,i) - avpr(k,6,l) 210 ELSEIF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 211 == 'absolute_value' ) THEN 198 212 inflow_dist(k,j,6,l) = q(k,j,i) 199 ELSE200 inflow_dist(k,j,6,l) = q(k,j,i) - avpr(k,6,l)201 213 ENDIF 202 214 ENDIF … … 264 276 DO k = nzb, nzt + 1 265 277 266 u(k,j,-nbgp+1:0) = mean_inflow_profiles(k,1) + &278 u(k,j,-nbgp+1:0) = mean_inflow_profiles(k,1) + & 267 279 inflow_dist(k,j,1,1:nbgp) * inflow_damping_factor(k) 268 v(k,j,-nbgp:-1) = mean_inflow_profiles(k,2) + &280 v(k,j,-nbgp:-1) = mean_inflow_profiles(k,2) + & 269 281 inflow_dist(k,j,2,1:nbgp) * inflow_damping_factor(k) 270 w(k,j,-nbgp:-1) = &282 w(k,j,-nbgp:-1) = & 271 283 inflow_dist(k,j,3,1:nbgp) * inflow_damping_factor(k) 272 IF ( raq(4) ) THEN 284 IF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 285 == 'turbulent_fluctuation' ) THEN 286 pt(k,j,-nbgp:-1) = mean_inflow_profiles(k,4) + & 287 inflow_dist(k,j,4,1:nbgp) * inflow_damping_factor(k) 288 ELSEIF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 289 == 'absolute_value' ) THEN 273 290 pt(k,j,-nbgp:-1) = inflow_dist(k,j,4,1:nbgp) 274 ELSE275 pt(k,j,-nbgp:-1) = mean_inflow_profiles(k,4) + &276 inflow_dist(k,j,4,1:nbgp) * inflow_damping_factor(k)277 291 ENDIF 278 e(k,j,-nbgp:-1) = mean_inflow_profiles(k,5) + &292 e(k,j,-nbgp:-1) = mean_inflow_profiles(k,5) + & 279 293 inflow_dist(k,j,5,1:nbgp) * inflow_damping_factor(k) 280 294 e(k,j,-nbgp:-1) = MAX( e(k,j,-nbgp:-1), 0.0_wp ) 281 282 295 IF ( humidity ) THEN 283 IF ( raq(6) ) THEN 296 IF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 297 == 'turbulent_fluctuation' ) THEN 298 q(k,j,-nbgp:-1) = mean_inflow_profiles(k,6) + & 299 inflow_dist(k,j,6,1:nbgp) * inflow_damping_factor(k) 300 ELSEIF ( TRIM( recycling_method_for_thermodynamic_quantities ) & 301 == 'absolute_value' ) THEN 284 302 q(k,j,-nbgp:-1) = inflow_dist(k,j,6,1:nbgp) 285 ELSE286 q(k,j,-nbgp:-1) = mean_inflow_profiles(k,6) + &287 inflow_dist(k,j,6,1:nbgp) * inflow_damping_factor(k)288 303 ENDIF 289 304 ENDIF 290 IF ( passive_scalar ) &291 s(k,j,-nbgp:-1) = mean_inflow_profiles(k,7) + &305 IF ( passive_scalar ) & 306 s(k,j,-nbgp:-1) = mean_inflow_profiles(k,7) + & 292 307 inflow_dist(k,j,7,1:nbgp) * inflow_damping_factor(k) 308 293 309 ENDDO 294 310 ENDDO
Note: See TracChangeset
for help on using the changeset viewer.