Changeset 1585 for palm/trunk/SOURCE/flow_statistics.f90
- Timestamp:
- Apr 30, 2015 7:05:52 AM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/flow_statistics.f90
r1572 r1585 21 21 ! Current revisions: 22 22 ! ----------------- 23 ! 23 ! Added output of timeseries and profiles for RRTMG 24 24 ! 25 25 ! Former revisions: … … 178 178 179 179 USE radiation_model_mod, & 180 ONLY : dots_rad, rad_net, rad_sw_in, radiation 181 180 ONLY: dots_rad, radiation, radiation_scheme, rad_net, & 181 rad_lw_in, rad_lw_out, rad_sw_in, rad_sw_out 182 183 #if defined ( __rrtmg ) 184 USE radiation_model_mod, & 185 ONLY: rrtm_aldif, rrtm_aldir, rrtm_asdif, rrtm_asdir 186 #endif 187 182 188 USE statistics 183 189 … … 741 747 IF ( radiation ) THEN 742 748 sums_l(nzb,101,tn) = sums_l(nzb,101,tn) + rad_net(j,i) 743 sums_l(nzb,102,tn) = sums_l(nzb,102,tn) + rad_sw_in(j,i) 749 sums_l(nzb,102,tn) = sums_l(nzb,102,tn) + rad_lw_in(nzb,j,i) 750 sums_l(nzb,103,tn) = sums_l(nzb,103,tn) + rad_lw_out(nzb,j,i) 751 sums_l(nzb,104,tn) = sums_l(nzb,104,tn) + rad_sw_in(nzb,j,i) 752 sums_l(nzb,105,tn) = sums_l(nzb,105,tn) + rad_sw_out(nzb,j,i) 753 754 #if defined ( __rrtmg ) 755 IF ( radiation_scheme == 'rrtmg' ) THEN 756 sums_l(nzb,106,tn) = sums_l(nzb,106,tn) + rrtm_aldif(0,j,i) 757 sums_l(nzb,107,tn) = sums_l(nzb,107,tn) + rrtm_aldir(0,j,i) 758 sums_l(nzb,108,tn) = sums_l(nzb,108,tn) + rrtm_asdif(0,j,i) 759 sums_l(nzb,109,tn) = sums_l(nzb,109,tn) + rrtm_asdir(0,j,i) 760 ENDIF 761 #endif 762 744 763 ENDIF 745 764 … … 1126 1145 ENDIF 1127 1146 1128 1147 IF ( radiation .AND. radiation_scheme == 'rrtmg' ) THEN 1148 !$OMP DO 1149 DO i = nxl, nxr 1150 DO j = nys, nyn 1151 DO k = nzb_s_inner(j,i)+1, nzt+1 1152 sums_l(k,102,tn) = sums_l(k,102,tn) + rad_lw_in(k,j,i) * rmask(j,i,sr) 1153 sums_l(k,103,tn) = sums_l(k,103,tn) + rad_lw_out(k,j,i) * rmask(j,i,sr) 1154 sums_l(k,104,tn) = sums_l(k,104,tn) + rad_sw_in(k,j,i) * rmask(j,i,sr) 1155 sums_l(k,105,tn) = sums_l(k,105,tn) + rad_sw_out(k,j,i) * rmask(j,i,sr) 1156 ENDDO 1157 ENDDO 1158 ENDDO 1159 ENDIF 1129 1160 ! 1130 1161 !-- Calculate the user-defined profiles … … 1186 1217 sums(k,70:80) = sums(k,70:80) / ngp_2dh_s_inner(k,sr) 1187 1218 sums(k,81:88) = sums(k,81:88) / ngp_2dh(sr) 1188 sums(k,89:10 0) = sums(k,89:100) / ngp_2dh(sr)1189 sums(k,10 1:pr_palm-2) = sums(k,101:pr_palm-2)/ ngp_2dh_s_inner(k,sr)1219 sums(k,89:105) = sums(k,89:105) / ngp_2dh(sr) 1220 sums(k,106:pr_palm-2) = sums(k,106:pr_palm-2)/ ngp_2dh_s_inner(k,sr) 1190 1221 ENDDO 1191 1222 … … 1319 1350 1320 1351 IF ( radiation ) THEN 1321 hom(:,1,101 ,sr) = sums(:,101) ! rad_net 1322 hom(:,1,102,sr) = sums(:,102) ! rad_sw_in 1352 hom(:,1,101,sr) = sums(:,101) ! rad_net 1353 hom(:,1,102,sr) = sums(:,102) ! rad_lw_in 1354 hom(:,1,103,sr) = sums(:,103) ! rad_lw_out 1355 hom(:,1,104,sr) = sums(:,104) ! rad_sw_in 1356 hom(:,1,105,sr) = sums(:,105) ! rad_sw_out 1357 1358 #if defined ( __rrtmg ) 1359 IF ( radiation_scheme == 'rrtmg' ) THEN 1360 hom(:,1,106,sr) = sums(:,106) ! rrtm_aldif 1361 hom(:,1,107,sr) = sums(:,107) ! rrtm_aldir 1362 hom(:,1,108,sr) = sums(:,108) ! rrtm_asdif 1363 hom(:,1,109,sr) = sums(:,109) ! rrtm_asdir 1364 ENDIF 1365 #endif 1366 1323 1367 ENDIF 1324 1368 … … 1483 1527 !-- Collect radiation model timeseries 1484 1528 IF ( radiation ) THEN 1485 ts_value(dots_rad,sr) = hom(nzb,1,101,sr) ! rad_net 1486 ts_value(dots_rad+1,sr) = hom(nzb,1,102,sr) ! rad_sw_in 1529 ts_value(dots_rad,sr) = hom(nzb,1,101,sr) ! rad_net 1530 ts_value(dots_rad+1,sr) = hom(nzb,1,102,sr) ! rad_lw_in 1531 ts_value(dots_rad+2,sr) = hom(nzb,1,103,sr) ! rad_lw_out 1532 ts_value(dots_rad+3,sr) = hom(nzb,1,104,sr) ! rad_lw_in 1533 ts_value(dots_rad+4,sr) = hom(nzb,1,105,sr) ! rad_lw_out 1534 1535 #if defined ( __rrtmg ) 1536 IF ( radiation_scheme == 'rrtmg' ) THEN 1537 ts_value(dots_rad+5,sr) = hom(nzb,1,106,sr) ! rrtm_aldif 1538 ts_value(dots_rad+6,sr) = hom(nzb,1,107,sr) ! rrtm_aldir 1539 ts_value(dots_rad+7,sr) = hom(nzb,1,108,sr) ! rrtm_asdif 1540 ts_value(dots_rad+8,sr) = hom(nzb,1,109,sr) ! rrtm_asdir 1541 ENDIF 1542 #endif 1543 1487 1544 ENDIF 1488 1545 … … 2951 3008 2952 3009 3010 IF ( radiation .AND. radiation_scheme == 'rrtmg' ) THEN 3011 !$OMP DO 3012 DO i = nxl, nxr 3013 DO j = nys, nyn 3014 DO k = nzb_s_inner(j,i)+1, nzt+1 3015 sums_l(k,102,tn) = sums_l(k,102,tn) + rad_lw_in(k,j,i) * rmask(j,i,sr) 3016 sums_l(k,103,tn) = sums_l(k,103,tn) + rad_lw_out(k,j,i) * rmask(j,i,sr) 3017 sums_l(k,104,tn) = sums_l(k,104,tn) + rad_sw_in(k,j,i) * rmask(j,i,sr) 3018 sums_l(k,105,tn) = sums_l(k,105,tn) + rad_sw_out(k,j,i) * rmask(j,i,sr) 3019 ENDDO 3020 ENDDO 3021 ENDDO 3022 ENDIF 3023 2953 3024 ! 2954 3025 !-- Calculate the user-defined profiles … … 3012 3083 sums(k,70:80) = sums(k,70:80) / ngp_2dh_s_inner(k,sr) 3013 3084 sums(k,81:88) = sums(k,81:88) / ngp_2dh(sr) 3014 sums(k,89:10 0) = sums(k,89:100) / ngp_2dh(sr)3015 sums(k,10 1:pr_palm-2) = sums(k,101:pr_palm-2)/ ngp_2dh_s_inner(k,sr)3085 sums(k,89:105) = sums(k,89:105) / ngp_2dh(sr) 3086 sums(k,106:pr_palm-2) = sums(k,106:pr_palm-2)/ ngp_2dh_s_inner(k,sr) 3016 3087 ENDDO 3017 3088 … … 3288 3359 !-- Collect radiation model timeseries 3289 3360 IF ( radiation ) THEN 3290 ts_value(dots_rad,sr) = hom(nzb,1,101,sr) ! rad_net 3291 ts_value(dots_rad+1,sr) = hom(nzb,1,102,sr) ! rad_sw_in 3361 ts_value(dots_rad,sr) = hom(nzb,1,101,sr) ! rad_net 3362 ts_value(dots_rad+1,sr) = hom(nzb,1,102,sr) ! rad_lw_in 3363 ts_value(dots_rad+2,sr) = hom(nzb,1,103,sr) ! rad_lw_out 3364 ts_value(dots_rad+3,sr) = hom(nzb,1,104,sr) ! rad_lw_in 3365 ts_value(dots_rad+4,sr) = hom(nzb,1,105,sr) ! rad_lw_out 3366 3367 #if defined ( __rrtmg ) 3368 IF ( radiation_scheme == 'rrtmg' ) THEN 3369 ts_value(dots_rad+5,sr) = hom(nzb,1,106,sr) ! rrtm_aldif 3370 ts_value(dots_rad+6,sr) = hom(nzb,1,107,sr) ! rrtm_aldir 3371 ts_value(dots_rad+7,sr) = hom(nzb,1,108,sr) ! rrtm_asdif 3372 ts_value(dots_rad+8,sr) = hom(nzb,1,109,sr) ! rrtm_asdir 3373 ENDIF 3374 #endif 3375 3292 3376 ENDIF 3293 3377
Note: See TracChangeset
for help on using the changeset viewer.