Changeset 2329 for palm/trunk/SOURCE/production_e.f90
- Timestamp:
- Aug 3, 2017 2:24:56 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/production_e.f90
r2233 r2329 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix: added division by density as kinematic fluxes are needed 28 ! 29 ! 2233 2017-05-30 18:08:54Z suehring 27 30 ! 28 31 ! 2232 2017-05-30 17:47:52Z suehring … … 135 138 136 139 USE arrays_3d, & 137 ONLY: ddzw, dd2zu, kh, km, prho, pt, q, ql, tend, u, v, vpt, w 140 ONLY: ddzw, dd2zu, drho_air_zw, kh, km, prho, pt, q, ql, tend, u, & 141 v, vpt, w 138 142 139 143 USE cloud_parameters, & … … 531 535 k = surf_def_h(l)%k(m) 532 536 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 537 * drho_air_zw(k-1) & 533 538 * surf_def_h(l)%shf(m) 534 539 ENDDO … … 541 546 k = surf_lsm_h%k(m) 542 547 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 548 * drho_air_zw(k-1) & 543 549 * surf_lsm_h%shf(m) 544 550 ENDDO … … 550 556 k = surf_usm_h%k(m) 551 557 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 558 * drho_air_zw(k-1) & 552 559 * surf_usm_h%shf(m) 553 560 ENDDO … … 559 566 DO m = surf_s, surf_e 560 567 k = surf_def_h(2)%k(m) 561 tend(k,j,i) = tend(k,j,i) + g / pt_reference * & 562 surf_def_h(2)%shf(m) 568 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 569 * drho_air_zw(k-1) & 570 * surf_def_h(2)%shf(m) 563 571 ENDDO 564 572 ENDIF … … 613 621 k = surf_def_h(l)%k(m) 614 622 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 623 * drho_air_zw(k-1) & 615 624 * surf_def_h(l)%shf(m) 616 625 ENDDO … … 623 632 k = surf_lsm_h%k(m) 624 633 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 634 * drho_air_zw(k-1) & 625 635 * surf_lsm_h%shf(m) 626 636 ENDDO … … 632 642 k = surf_usm_h%k(m) 633 643 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 644 * drho_air_zw(k-1) & 634 645 * surf_usm_h%shf(m) 635 646 ENDDO … … 641 652 DO m = surf_s, surf_e 642 653 k = surf_def_h(2)%k(m) 643 tend(k,j,i) = tend(k,j,i) + g / pt_reference * & 644 surf_def_h(2)%shf(m) 654 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 655 * drho_air_zw(k-1) & 656 * surf_def_h(2)%shf(m) 645 657 ENDDO 646 658 ENDIF … … 754 766 tend(k,j,i) = tend(k,j,i) + g / vpt(k,j,i) * & 755 767 ( k1 * surf_def_h(l)%shf(m) + & 756 k2 * surf_def_h(l)%qsws(m) ) 768 k2 * surf_def_h(l)%qsws(m) & 769 ) * drho_air_zw(k-1) 757 770 ENDDO 758 771 ENDDO … … 788 801 tend(k,j,i) = tend(k,j,i) + g / vpt(k,j,i) * & 789 802 ( k1 * surf_lsm_h%shf(m) + & 790 k2 * surf_lsm_h%qsws(m) ) 803 k2 * surf_lsm_h%qsws(m) & 804 ) * drho_air_zw(k-1) 791 805 ENDDO 792 806 ! … … 821 835 tend(k,j,i) = tend(k,j,i) + g / vpt(k,j,i) * & 822 836 ( k1 * surf_usm_h%shf(m) + & 823 k2 * surf_usm_h%qsws(m) ) 837 k2 * surf_usm_h%qsws(m) & 838 ) * drho_air_zw(k-1) 824 839 ENDDO 825 840 … … 861 876 tend(k,j,i) = tend(k,j,i) + g / vpt(k,j,i) * & 862 877 ( k1 * surf_def_h(2)%shf(m) + & 863 k2 * surf_def_h(2)%qsws(m) ) 878 k2 * surf_def_h(2)%qsws(m) & 879 ) * drho_air_zw(k-1) 864 880 865 881 ENDDO … … 886 902 887 903 USE arrays_3d, & 888 ONLY: ddzw, dd2zu, kh, km, prho, pt, q, ql, tend, u, v, vpt, w 904 ONLY: ddzw, dd2zu, drho_air_zw, kh, km, prho, pt, q, ql, tend, u, & 905 v, vpt, w 889 906 890 907 USE cloud_parameters, & … … 1254 1271 k = surf_def_h(l)%k(m) 1255 1272 tend(k,j,i) = tend(k,j,i) + g / pt_reference * & 1256 surf_def_h(l)%shf(m) 1273 drho_air_zw(k-1) * & 1274 surf_def_h(l)%shf(m) 1257 1275 ENDDO 1258 1276 ENDDO … … 1264 1282 k = surf_lsm_h%k(m) 1265 1283 tend(k,j,i) = tend(k,j,i) + g / pt_reference * & 1284 drho_air_zw(k-1) * & 1266 1285 surf_lsm_h%shf(m) 1267 1286 ENDDO … … 1273 1292 k = surf_usm_h%k(m) 1274 1293 tend(k,j,i) = tend(k,j,i) + g / pt_reference * & 1294 drho_air_zw(k-1) * & 1275 1295 surf_usm_h%shf(m) 1276 1296 ENDDO … … 1283 1303 k = surf_def_h(2)%k(m) 1284 1304 tend(k,j,i) = tend(k,j,i) + g / pt_reference * & 1305 drho_air_zw(k-1) * & 1285 1306 surf_def_h(2)%shf(m) 1286 1307 ENDDO … … 1331 1352 k = surf_def_h(l)%k(m) 1332 1353 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 1333 * surf_def_h(l)%shf(m) 1354 * drho_air_zw(k-1) & 1355 * surf_def_h(l)%shf(m) 1334 1356 ENDDO 1335 1357 ENDDO … … 1341 1363 k = surf_lsm_h%k(m) 1342 1364 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 1343 * surf_lsm_h%shf(m) 1365 * drho_air_zw(k-1) & 1366 * surf_lsm_h%shf(m) 1344 1367 ENDDO 1345 1368 ! … … 1350 1373 k = surf_usm_h%k(m) 1351 1374 tend(k,j,i) = tend(k,j,i) + g / pt_reference & 1352 * surf_usm_h%shf(m) 1375 * drho_air_zw(k-1) & 1376 * surf_usm_h%shf(m) 1353 1377 ENDDO 1354 1378 ENDIF … … 1360 1384 k = surf_def_h(2)%k(m) 1361 1385 tend(k,j,i) = tend(k,j,i) + g / pt_reference * & 1362 surf_def_h(2)%shf(m) 1386 drho_air_zw(k-1) * & 1387 surf_def_h(2)%shf(m) 1363 1388 ENDDO 1364 1389 ENDIF … … 1461 1486 tend(k,j,i) = tend(k,j,i) + g / vpt(k,j,i) * & 1462 1487 ( k1 * surf_def_h(l)%shf(m) + & 1463 k2 * surf_def_h(l)%qsws(m) ) 1488 k2 * surf_def_h(l)%qsws(m) & 1489 ) * drho_air_zw(k-1) 1464 1490 ENDDO 1465 1491 ENDDO … … 1495 1521 tend(k,j,i) = tend(k,j,i) + g / vpt(k,j,i) * & 1496 1522 ( k1 * surf_lsm_h%shf(m) + & 1497 k2 * surf_lsm_h%qsws(m) ) 1523 k2 * surf_lsm_h%qsws(m) & 1524 ) * drho_air_zw(k-1) 1498 1525 ENDDO 1499 1526 ! … … 1528 1555 tend(k,j,i) = tend(k,j,i) + g / vpt(k,j,i) * & 1529 1556 ( k1 * surf_usm_h%shf(m) + & 1530 k2 * surf_usm_h%qsws(m) ) 1557 k2 * surf_usm_h%qsws(m) & 1558 ) * drho_air_zw(k-1) 1531 1559 ENDDO 1532 1560 … … 1565 1593 tend(k,j,i) = tend(k,j,i) + g / vpt(k,j,i) * & 1566 1594 ( k1* surf_def_h(2)%shf(m) + & 1567 k2 * surf_def_h(2)%qsws(m) ) 1595 k2 * surf_def_h(2)%qsws(m) & 1596 ) * drho_air_zw(k-1) 1568 1597 ENDDO 1569 1598 … … 1585 1614 1586 1615 USE arrays_3d, & 1587 ONLY: kh, km, u, v, zu1616 ONLY: kh, km, drho_air_zw, u, v, zu 1588 1617 1589 1618 USE control_parameters, & … … 1630 1659 !-- effect of this error is negligible. 1631 1660 surf_def_h(0)%u_0(m) = u(k+1,j,i) + surf_def_h(0)%usws(m) * & 1661 drho_air_zw(k-1) * & 1632 1662 ( zu(k+1) - zu(k-1) ) / & 1633 1663 ( km(k,j,i) + 1.0E-20_wp ) 1634 1664 surf_def_h(0)%v_0(m) = v(k+1,j,i) + surf_def_h(0)%vsws(m) * & 1665 drho_air_zw(k-1) * & 1635 1666 ( zu(k+1) - zu(k-1) ) / & 1636 1667 ( km(k,j,i) + 1.0E-20_wp ) … … 1661 1692 !-- between u_0 and u(k-1). 1662 1693 surf_def_h(1)%u_0(m) = u(k-1,j,i) - surf_def_h(1)%usws(m) * & 1694 drho_air_zw(k-1) * & 1663 1695 ( zu(k+1) - zu(k-1) ) / & 1664 1696 ( km(k,j,i) + 1.0E-20_wp ) 1665 1697 surf_def_h(1)%v_0(m) = v(k-1,j,i) - surf_def_h(1)%vsws(m) * & 1698 drho_air_zw(k-1) * & 1666 1699 ( zu(k+1) - zu(k-1) ) / & 1667 1700 ( km(k,j,i) + 1.0E-20_wp ) … … 1690 1723 !-- effect of this error is negligible. 1691 1724 surf_lsm_h%u_0(m) = u(k+1,j,i) + surf_lsm_h%usws(m) * & 1725 drho_air_zw(k-1) * & 1692 1726 ( zu(k+1) - zu(k-1) ) / & 1693 1727 ( km(k,j,i) + 1.0E-20_wp ) 1694 1728 surf_lsm_h%v_0(m) = v(k+1,j,i) + surf_lsm_h%vsws(m) * & 1729 drho_air_zw(k-1) * & 1695 1730 ( zu(k+1) - zu(k-1) ) / & 1696 1731 ( km(k,j,i) + 1.0E-20_wp ) … … 1719 1754 !-- effect of this error is negligible. 1720 1755 surf_usm_h%u_0(m) = u(k+1,j,i) + surf_usm_h%usws(m) * & 1756 drho_air_zw(k-1) * & 1721 1757 ( zu(k+1) - zu(k-1) ) / & 1722 1758 ( km(k,j,i) + 1.0E-20_wp ) 1723 1759 surf_usm_h%v_0(m) = v(k+1,j,i) + surf_usm_h%vsws(m) * & 1760 drho_air_zw(k-1) * & 1724 1761 ( zu(k+1) - zu(k-1) ) / & 1725 1762 ( km(k,j,i) + 1.0E-20_wp )
Note: See TracChangeset
for help on using the changeset viewer.