Changeset 1359 for palm/trunk/SOURCE/sum_up_3d_data.f90
- Timestamp:
- Apr 11, 2014 5:15:14 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/sum_up_3d_data.f90
r1354 r1359 20 20 ! Current revisions: 21 21 ! ----------------- 22 ! 23 ! 22 ! New particle structure integrated. 23 ! 24 24 ! Former revisions: 25 25 ! ----------------- … … 92 92 93 93 USE particle_attributes, & 94 ONLY: particles, prt_count, prt_start_index94 ONLY: grid_particles, number_of_particles, particles, prt_count 95 95 96 96 IMPLICIT NONE … … 104 104 105 105 REAL(wp) :: mean_r !: 106 REAL(wp) :: s_r2 !: 106 107 REAL(wp) :: s_r3 !: 107 REAL(wp) :: s_r4 !:108 108 109 109 CALL cpu_log (log_point(34),'sum_up_3d_data','start') … … 382 382 DO j = nys, nyn 383 383 DO k = nzb, nzt+1 384 psi = prt_start_index(k,j,i) 384 number_of_particles = prt_count(k,j,i) 385 IF ( number_of_particles <= 0 ) CYCLE 386 particles => grid_particles(k,j,i)%particles(1:number_of_particles) 387 s_r2 = 0.0_wp 385 388 s_r3 = 0.0_wp 386 s_r4 = 0.0_wp 387 DO n = psi, psi+prt_count(k,j,i)-1 388 s_r3 = s_r3 + particles(n)%radius**3 * & 389 particles(n)%weight_factor 390 s_r4 = s_r4 + particles(n)%radius**4 * & 391 particles(n)%weight_factor 389 390 DO n = 1, number_of_particles 391 IF ( particles(n)%particle_mask ) THEN 392 s_r2 = s_r2 + particles(n)%radius**2 * & 393 particles(n)%weight_factor 394 s_r3 = s_r3 + particles(n)%radius**3 * & 395 particles(n)%weight_factor 396 ENDIF 392 397 ENDDO 393 IF ( s_r3 /= 0.0_wp ) THEN 394 mean_r = s_r4 / s_r3 398 399 IF ( s_r2 > 0.0_wp ) THEN 400 mean_r = s_r3 / s_r2 395 401 ELSE 396 402 mean_r = 0.0_wp … … 401 407 ENDDO 402 408 409 403 410 CASE ( 'pr*' ) 404 411 DO i = nxlg, nxrg … … 478 485 DO j = nys, nyn 479 486 DO k = nzb, nzt+1 480 psi = prt_start_index(k,j,i) 481 DO n = psi, psi+prt_count(k,j,i)-1 482 ql_vp_av(k,j,i) = ql_vp_av(k,j,i) + & 483 particles(n)%weight_factor / & 484 prt_count(k,j,i) 487 number_of_particles = prt_count(k,j,i) 488 IF ( number_of_particles <= 0 ) CYCLE 489 particles => grid_particles(k,j,i)%particles(1:number_of_particles) 490 DO n = 1, number_of_particles 491 IF ( particles(n)%particle_mask ) THEN 492 ql_vp_av(k,j,i) = ql_vp_av(k,j,i) + & 493 particles(n)%weight_factor / & 494 number_of_particles 495 ENDIF 485 496 ENDDO 486 497 ENDDO
Note: See TracChangeset
for help on using the changeset viewer.