Changeset 1822 for palm/trunk/SOURCE/flow_statistics.f90
- Timestamp:
- Apr 7, 2016 7:49:42 AM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/flow_statistics.f90
r1818 r1822 19 19 ! Current revisions: 20 20 ! ----------------- 21 ! 21 ! Output of bulk microphysics simplified. 22 22 ! 23 23 ! Former revisions: … … 193 193 USE control_parameters, & 194 194 ONLY: average_count_pr, cloud_droplets, cloud_physics, do_sum, & 195 dt_3d, g, humidity, icloud_scheme, kappa, large_scale_forcing,&195 dt_3d, g, humidity, kappa, large_scale_forcing, & 196 196 large_scale_subsidence, max_pr_user, message_string, neutral, & 197 ocean, passive_scalar, precipitation, simulated_time,&197 microphysics_seifert, ocean, passive_scalar, simulated_time, & 198 198 use_subsidence_tendencies, use_surface_fluxes, use_top_fluxes, & 199 199 ws_scheme_mom, ws_scheme_sca … … 898 898 sums_l(k,46,tn) = sums_l(k,46,tn) + pts * w(k,j,i) * & 899 899 rmask(j,i,sr) 900 sums_l(k,54,tn) = sums_l(k,54,tn) + ql(k,j,i) * rmask(j,i,sr) 901 900 902 IF ( .NOT. cloud_droplets ) THEN 901 903 pts = 0.5_wp * & … … 906 908 sums_l(k,52,tn) = sums_l(k,52,tn) + pts * w(k,j,i) * & 907 909 rmask(j,i,sr) 908 IF ( icloud_scheme == 0 ) THEN 909 sums_l(k,54,tn) = sums_l(k,54,tn) + ql(k,j,i) * & 910 sums_l(k,75,tn) = sums_l(k,75,tn) + qc(k,j,i) * & 911 rmask(j,i,sr) 912 sums_l(k,76,tn) = sums_l(k,76,tn) + prr(k,j,i) * & 913 rmask(j,i,sr) 914 IF ( microphysics_seifert ) THEN 915 sums_l(k,73,tn) = sums_l(k,73,tn) + nr(k,j,i) * & 910 916 rmask(j,i,sr) 911 sums_l(k,75,tn) = sums_l(k,75,tn) + qc(k,j,i) * & 912 rmask(j,i,sr) 913 IF ( precipitation ) THEN 914 sums_l(k,73,tn) = sums_l(k,73,tn) + nr(k,j,i) * & 915 rmask(j,i,sr) 916 sums_l(k,74,tn) = sums_l(k,74,tn) + qr(k,j,i) * & 917 rmask(j,i,sr) 918 sums_l(k,76,tn) = sums_l(k,76,tn) + prr(k,j,i) *& 919 rmask(j,i,sr) 920 ENDIF 921 ELSE 922 sums_l(k,54,tn) = sums_l(k,54,tn) + ql(k,j,i) * & 917 sums_l(k,74,tn) = sums_l(k,74,tn) + qr(k,j,i) * & 923 918 rmask(j,i,sr) 924 919 ENDIF 925 ELSE926 sums_l(k,54,tn) = sums_l(k,54,tn) + ql(k,j,i) * &927 rmask(j,i,sr)928 920 ENDIF 921 929 922 ELSE 930 923 IF( .NOT. ws_scheme_sca .OR. sr /= 0 ) THEN … … 1662 1655 USE control_parameters, & 1663 1656 ONLY : average_count_pr, cloud_droplets, cloud_physics, do_sum, & 1664 dt_3d, g, humidity, icloud_scheme, kappa, large_scale_forcing,&1665 large_scale_subsidence, max_pr_user, message_string, neutral,&1666 ocean, passive_scalar, precipitation, simulated_time, &1667 use_subsidence_tendencies, use_surface_fluxes, use_top_fluxes, &1668 ws_scheme_mom, ws_scheme_sca1657 dt_3d, g, humidity, kappa, large_scale_forcing, & 1658 large_scale_subsidence, max_pr_user, message_string, & 1659 microphysics_seifert, neutral, ocean, passive_scalar, & 1660 simulated_time, use_subsidence_tendencies, use_surface_fluxes, & 1661 use_top_fluxes, ws_scheme_mom, ws_scheme_sca 1669 1662 1670 1663 USE cpulog, & … … 2774 2767 !$acc end parallel loop 2775 2768 2776 IF ( icloud_scheme == 0) THEN2769 IF ( microphysics_seifert ) THEN 2777 2770 2778 2771 !$acc parallel loop gang present( qc, ql, rflags_invers, rmask, sums_l ) create( s1, s2 ) … … 2791 2784 !$acc end parallel loop 2792 2785 2793 IF ( precipitation ) THEN 2794 2795 !$acc parallel loop gang present( nr, qr, prr, rflags_invers, rmask, sums_l ) create( s1, s2, s3 ) 2796 DO k = nzb, nzt_diff 2797 s1 = 0 2798 s2 = 0 2799 s3 = 0 2800 !$acc loop vector collapse( 2 ) reduction( +: s1, s2, s3 ) 2801 DO i = nxl, nxr 2802 DO j = nys, nyn 2803 s1 = s1 + nr(k,j,i) * rmask(j,i,sr) * rflags_invers(j,i,k+1) 2804 s2 = s2 + qr(k,j,i) * rmask(j,i,sr) * rflags_invers(j,i,k+1) 2805 s3 = s3 + prr(k,j,i) * rmask(j,i,sr) * rflags_invers(j,i,k+1) 2806 ENDDO 2786 !$acc parallel loop gang present( nr, qr, prr, rflags_invers, rmask, sums_l ) create( s1, s2, s3 ) 2787 DO k = nzb, nzt_diff 2788 s1 = 0 2789 s2 = 0 2790 s3 = 0 2791 !$acc loop vector collapse( 2 ) reduction( +: s1, s2, s3 ) 2792 DO i = nxl, nxr 2793 DO j = nys, nyn 2794 s1 = s1 + nr(k,j,i) * rmask(j,i,sr) * rflags_invers(j,i,k+1) 2795 s2 = s2 + qr(k,j,i) * rmask(j,i,sr) * rflags_invers(j,i,k+1) 2796 s3 = s3 + prr(k,j,i) * rmask(j,i,sr) * rflags_invers(j,i,k+1) 2807 2797 ENDDO 2808 sums_l(k,73,tn) = s12809 sums_l(k,74,tn) = s22810 sums_l(k,76,tn) = s32811 2798 ENDDO 2812 !$acc end parallel loop 2813 2814 ENDIF 2799 sums_l(k,73,tn) = s1 2800 sums_l(k,74,tn) = s2 2801 sums_l(k,76,tn) = s3 2802 ENDDO 2803 !$acc end parallel loop 2815 2804 2816 2805 ELSE
Note: See TracChangeset
for help on using the changeset viewer.