Changeset 1845
- Timestamp:
- Apr 8, 2016 8:29:13 AM (9 years ago)
- Location:
- palm/trunk/SOURCE
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/calc_radiation.f90
r1818 r1845 93 93 94 94 USE indices, & 95 ONLY: nxl, nxr, nyn, nys, nzb, nzb_ 2d, nzt95 ONLY: nxl, nxr, nyn, nys, nzb, nzb_s_inner, nzt 96 96 97 97 USE kinds … … 141 141 blackbody_emission(nzb) = sigma * temperature**4 142 142 143 DO k = nzb_ 2d(j,i)+1, nzt143 DO k = nzb_s_inner(j,i)+1, nzt 144 144 145 145 k_help = ( nzt+nzb+1 ) - k … … 167 167 impinging_flux_at_top = blackbody_emission(nzb) - 100.0_wp 168 168 169 DO k = nzb_ 2d(j,i)+1, nzt169 DO k = nzb_s_inner(j,i)+1, nzt 170 170 ! 171 171 !-- Save some computational time, but this may cause load … … 238 238 239 239 USE indices, & 240 ONLY: nzb, nzb_ 2d, nzt240 ONLY: nzb, nzb_s_inner, nzt 241 241 242 242 USE kinds … … 283 283 blackbody_emission(nzb) = sigma * temperature**4 284 284 285 DO k = nzb_ 2d(j,i)+1, nzt285 DO k = nzb_s_inner(j,i)+1, nzt 286 286 k_help = ( nzt+nzb+1 ) - k 287 287 lwp_ground(k) = lwp_ground(k-1) + rho_surface * ql(k,j,i) * dzw(k) … … 306 306 impinging_flux_at_top = blackbody_emission(nzb) - 100.0_wp 307 307 308 DO k = nzb_ 2d(j,i)+1, nzt308 DO k = nzb_s_inner(j,i)+1, nzt 309 309 ! 310 310 !-- Store some computational time, -
palm/trunk/SOURCE/init_3d_model.f90
r1834 r1845 19 19 ! Current revisions: 20 20 ! ------------------ 21 ! 21 ! nzb_2d replaced by nzb_u|v_inner 22 22 ! 23 23 ! Former revisions: … … 1488 1488 IF ( nxr == nx ) THEN 1489 1489 DO j = nys, nyn 1490 DO k = nzb_ 2d(j,nx)+1, nzt1490 DO k = nzb_u_inner(j,nx)+1, nzt 1491 1491 volume_flow_initial_l(1) = volume_flow_initial_l(1) + & 1492 1492 u_init(k) * dzw(k) … … 1498 1498 IF ( nyn == ny ) THEN 1499 1499 DO i = nxl, nxr 1500 DO k = nzb_ 2d(ny,i)+1, nzt1500 DO k = nzb_v_inner(ny,i)+1, nzt 1501 1501 volume_flow_initial_l(2) = volume_flow_initial_l(2) + & 1502 1502 v_init(k) * dzw(k) … … 1524 1524 IF ( nxr == nx ) THEN 1525 1525 DO j = nys, nyn 1526 DO k = nzb_ 2d(j,nx)+1, nzt1526 DO k = nzb_u_inner(j,nx)+1, nzt 1527 1527 volume_flow_initial_l(1) = volume_flow_initial_l(1) + & 1528 1528 hom_sum(k,1,0) * dzw(k) … … 1534 1534 IF ( nyn == ny ) THEN 1535 1535 DO i = nxl, nxr 1536 DO k = nzb_ 2d(ny,i)+1, nzt1536 DO k = nzb_v_inner(ny,i)+1, nzt 1537 1537 volume_flow_initial_l(2) = volume_flow_initial_l(2) + & 1538 1538 hom_sum(k,2,0) * dzw(k) … … 1560 1560 IF ( nxr == nx ) THEN 1561 1561 DO j = nys, nyn 1562 DO k = nzb_ 2d(j,nx)+1, nzt1562 DO k = nzb_u_inner(j,nx)+1, nzt 1563 1563 volume_flow_initial_l(1) = volume_flow_initial_l(1) + & 1564 1564 u(k,j,nx) * dzw(k) … … 1570 1570 IF ( nyn == ny ) THEN 1571 1571 DO i = nxl, nxr 1572 DO k = nzb_ 2d(ny,i)+1, nzt1572 DO k = nzb_v_inner(ny,i)+1, nzt 1573 1573 volume_flow_initial_l(2) = volume_flow_initial_l(2) + & 1574 1574 v(k,ny,i) * dzw(k) -
palm/trunk/SOURCE/init_grid.f90
r1818 r1845 19 19 ! Current revisions: 20 20 ! ----------------- 21 ! 21 ! nzb_2d removed 22 22 ! 23 23 ! Former revisions: … … 180 180 ONLY: flags, nbgp, nx, nxl, nxlg, nxlu, nxl_mg, nxr, nxrg, nxr_mg, & 181 181 ny, nyn, nyng, nyn_mg, nys, nysv, nys_mg, nysg, nz, nzb, & 182 nzb_ 2d, nzb_diff, nzb_diff_s_inner, nzb_diff_s_outer,&183 nzb_diff_ u, nzb_diff_v, nzb_max, nzb_s_inner, nzb_s_outer,&184 nzb_u_ inner, nzb_u_outer, nzb_v_inner, nzb_v_outer, &185 nzb_w_ inner, nzb_w_outer, nzt, nzt_diff, nzt_mg, rflags_invers,&182 nzb_diff, nzb_diff_s_inner, nzb_diff_s_outer, nzb_diff_u, & 183 nzb_diff_v, nzb_max, nzb_s_inner, nzb_s_outer, nzb_u_inner, & 184 nzb_u_outer, nzb_v_inner, nzb_v_outer, nzb_w_inner, & 185 nzb_w_outer, nzt, nzt_diff, nzt_mg, rflags_invers, & 186 186 rflags_s_inner, wall_flags_0, wall_flags_00, wall_flags_1, & 187 187 wall_flags_10, wall_flags_2, wall_flags_3, wall_flags_4, & … … 470 470 nzb_diff_u(nysg:nyng,nxlg:nxrg), & 471 471 nzb_diff_v(nysg:nyng,nxlg:nxrg), & 472 nzb_2d(nysg:nyng,nxlg:nxrg), &473 472 rflags_s_inner(nzb:nzt+2,nysg:nyng,nxlg:nxrg), & 474 473 rflags_invers(nysg:nyng,nxlg:nxrg,nzb:nzt+2), & … … 967 966 968 967 ENDIF 969 970 !971 !-- Preliminary: to be removed after completion of the topography code!972 !-- Set the former default k index arrays nzb_2d973 nzb_2d = nzb974 968 975 969 ! -
palm/trunk/SOURCE/interaction_droplets_ptq.f90
r1823 r1845 19 19 ! Current revisions: 20 20 ! ----------------- 21 ! 21 ! nzb_2d replaced by nzb_s_inner 22 22 ! 23 23 ! Former revisions: … … 91 91 92 92 USE indices, & 93 ONLY: nxl, nxr, nyn, nys, nzb_ 2d, nzt93 ONLY: nxl, nxr, nyn, nys, nzb_s_inner, nzt 94 94 95 95 USE kinds … … 106 106 DO i = nxl, nxr 107 107 DO j = nys, nyn 108 DO k = nzb_ 2d(j,i)+1, nzt108 DO k = nzb_s_inner(j,i)+1, nzt 109 109 q_p(k,j,i) = q_p(k,j,i) - ql_c(k,j,i) 110 110 pt_p(k,j,i) = pt_p(k,j,i) + l_d_cp * ql_c(k,j,i) * pt_d_t(k) … … 130 130 131 131 USE indices, & 132 ONLY: nzb_ 2d, nzt132 ONLY: nzb_s_inner, nzt 133 133 134 134 USE kinds, & … … 144 144 145 145 146 DO k = nzb_ 2d(j,i)+1, nzt146 DO k = nzb_s_inner(j,i)+1, nzt 147 147 q_p(k,j,i) = q_p(k,j,i) - ql_c(k,j,i) 148 148 pt_p(k,j,i) = pt_p(k,j,i) + l_d_cp * ql_c(k,j,i) * pt_d_t(k) -
palm/trunk/SOURCE/microphysics.f90
r1832 r1845 19 19 ! Current revisions: 20 20 ! ------------------ 21 ! 21 ! nzb_2d replaced by nzb_s_inner, Kessler precipitation is stored at surface 22 ! point (instead of one point above surface) 22 23 ! 23 24 ! Former revisions: … … 451 452 452 453 USE indices, & 453 ONLY: nxl, nxr, nyn, nys, nzb_ 2d, nzt454 ONLY: nxl, nxr, nyn, nys, nzb_s_inner, nzt 454 455 455 456 USE kinds … … 466 467 DO i = nxl, nxr 467 468 DO j = nys, nyn 468 DO k = nzb_ 2d(j,i)+1, nzt469 DO k = nzb_s_inner(j,i)+1, nzt 469 470 470 471 IF ( qc(k,j,i) > ql_crit ) THEN … … 476 477 qc(k,j,i) = qc(k,j,i) - dqdt_precip * dt_micro 477 478 q(k,j,i) = q(k,j,i) - dqdt_precip * dt_micro 478 pt(k,j,i) = pt(k,j,i) + dqdt_precip * dt_micro * l_d_cp * pt_d_t(k) 479 480 ! 481 !-- Compute the rain rate 482 prr(nzb_2d(j,i)+1,j,i) = prr(nzb_2d(j,i)+1,j,i) + dqdt_precip * dzw(k) 479 pt(k,j,i) = pt(k,j,i) + dqdt_precip * dt_micro * l_d_cp * & 480 pt_d_t(k) 481 482 ! 483 !-- Compute the rain rate (stored on surface grid point) 484 prr(nzb_s_inner(j,i),j,i) = prr(nzb_s_inner(j,i),j,i) + & 485 dqdt_precip * dzw(k) 483 486 484 487 ENDDO … … 1457 1460 1458 1461 USE indices, & 1459 ONLY: nzb_ 2d, nzt1462 ONLY: nzb_s_inner, nzt 1460 1463 1461 1464 USE kinds … … 1470 1473 REAL(wp) :: dqdt_precip !< 1471 1474 1472 DO k = nzb_ 2d(j,i)+1, nzt1475 DO k = nzb_s_inner(j,i)+1, nzt 1473 1476 1474 1477 IF ( qc_1d(k) > ql_crit ) THEN … … 1483 1486 1484 1487 ! 1485 !-- Compute the rain rate 1486 prr(nzb_ 2d(j,i)+1,j,i) = prr(nzb_2d(j,i)+1,j,i) +&1487 dqdt_precip * dzw(k)1488 !-- Compute the rain rate (stored on surface grid point) 1489 prr(nzb_s_inner(j,i),j,i) = prr(nzb_s_inner(j,i),j,i) + & 1490 dqdt_precip * dzw(k) 1488 1491 1489 1492 ENDDO -
palm/trunk/SOURCE/modules.f90
r1834 r1845 19 19 ! Current revisions: 20 20 ! ------------------ 21 ! 22 ! 21 ! -nzb_2d 22 ! 23 23 ! Former revisions: 24 24 ! ----------------- … … 1037 1037 nzb_diff_v, nzb_inner, nzb_outer, nzb_s_inner, nzb_s_outer, & 1038 1038 nzb_u_inner, nzb_u_outer, nzb_v_inner, nzb_v_outer, & 1039 nzb_w_inner, nzb_w_outer , nzb_2d1039 nzb_w_inner, nzb_w_outer 1040 1040 1041 1041 INTEGER(iwp), DIMENSION(:,:,:), POINTER :: flags -
palm/trunk/SOURCE/pres.f90
r1818 r1845 19 19 ! Current revisions: 20 20 ! ------------------ 21 ! 21 ! nzb_2d replace by nzb_u|v_inner 22 22 ! 23 23 ! Former revisions: … … 119 119 ONLY: nbgp, ngp_2dh_outer, nx, nxl, nxlg, nxl_mg, nxr, nxrg, nxr_mg, & 120 120 ny, nys, nysg, nys_mg, nyn, nyng, nyn_mg, nzb, nzb_s_inner, & 121 nzb_u_inner, nzb_v_inner, nzb_w_inner, nz b_2d, nzt, nzt_mg,&121 nzb_u_inner, nzb_v_inner, nzb_w_inner, nzt, nzt_mg, & 122 122 rflags_s_inner 123 123 … … 212 212 ! 213 213 !-- Sum up the volume flow through the south/north boundary 214 DO k = nzb_ 2d(j,i)+1, nzt214 DO k = nzb_u_inner(j,i)+1, nzt 215 215 volume_flow_l(1) = volume_flow_l(1) + u(k,j,i) * dzw(k) 216 216 ENDDO … … 228 228 229 229 DO j = nysg, nyng 230 DO k = nzb_ 2d(j,i)+1, nzt230 DO k = nzb_u_inner(j,i)+1, nzt 231 231 u(k,j,i) = u(k,j,i) + volume_flow_offset(1) 232 232 ENDDO … … 251 251 ! 252 252 !-- Sum up the volume flow through the south/north boundary 253 DO k = nzb_ 2d(j,i)+1, nzt253 DO k = nzb_v_inner(j,i)+1, nzt 254 254 volume_flow_l(2) = volume_flow_l(2) + v(k,j,i) * dzw(k) 255 255 ENDDO … … 648 648 DO j = nys, nyn 649 649 !$OMP CRITICAL 650 DO k = nzb_ 2d(j,nx) + 1, nzt650 DO k = nzb_u_inner(j,nx) + 1, nzt 651 651 volume_flow_l(1) = volume_flow_l(1) + u(k,j,nx) * dzw(k) 652 652 ENDDO … … 664 664 DO i = nxl, nxr 665 665 !$OMP CRITICAL 666 DO k = nzb_ 2d(ny,i) + 1, nzt666 DO k = nzb_v_inner(ny,i) + 1, nzt 667 667 volume_flow_l(2) = volume_flow_l(2) + v(k,ny,i) * dzw(k) 668 668 ENDDO … … 695 695 u(k,j,i) = u(k,j,i) + volume_flow_offset(1) 696 696 ENDDO 697 DO k = nzb_v_inner(j,i) + 1, nzt697 DO k = nzb_v_inner(j,i) + 1, nzt 698 698 v(k,j,i) = v(k,j,i) + volume_flow_offset(2) 699 699 ENDDO
Note: See TracChangeset
for help on using the changeset viewer.