Changeset 3634 for palm/trunk/SOURCE/prognostic_equations.f90
- Timestamp:
- Dec 18, 2018 12:31:28 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/prognostic_equations.f90
r3589 r3634 25 25 ! ----------------- 26 26 ! $Id$ 27 ! OpenACC port for SPEC 28 ! 29 ! 3589 2018-11-30 15:09:51Z suehring 27 30 ! Move the control parameter "salsa" from salsa_mod to control_parameters 28 31 ! (M. Kurppa) … … 1566 1569 CALL cpu_log( log_point(5), 'u-equation', 'start' ) 1567 1570 1571 !$ACC KERNELS PRESENT(tend) 1568 1572 tend = 0.0_wp 1573 !$ACC END KERNELS 1569 1574 IF ( timestep_scheme(1:5) == 'runge' ) THEN 1570 1575 IF ( ws_scheme_mom ) THEN … … 1614 1619 ! 1615 1620 !-- Prognostic equation for u-velocity component 1621 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1622 !$ACC PRESENT(u, tend, tu_m, u_init, rdf, wall_flags_0) & 1623 !$ACC PRESENT(tsc(2:5)) & 1624 !$ACC PRESENT(u_p) 1616 1625 DO i = nxlu, nxr 1617 1626 DO j = nys, nyn … … 1640 1649 IF ( timestep_scheme(1:5) == 'runge' ) THEN 1641 1650 IF ( intermediate_timestep_count == 1 ) THEN 1651 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1652 !$ACC PRESENT(tend, tu_m) 1642 1653 DO i = nxlu, nxr 1643 1654 DO j = nys, nyn … … 1649 1660 ELSEIF ( intermediate_timestep_count < & 1650 1661 intermediate_timestep_count_max ) THEN 1662 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1663 !$ACC PRESENT(tend, tu_m) 1651 1664 DO i = nxlu, nxr 1652 1665 DO j = nys, nyn … … 1666 1679 CALL cpu_log( log_point(6), 'v-equation', 'start' ) 1667 1680 1681 !$ACC KERNELS PRESENT(tend) 1668 1682 tend = 0.0_wp 1683 !$ACC END KERNELS 1669 1684 IF ( timestep_scheme(1:5) == 'runge' ) THEN 1670 1685 IF ( ws_scheme_mom ) THEN … … 1711 1726 ! 1712 1727 !-- Prognostic equation for v-velocity component 1728 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1729 !$ACC PRESENT(v, tend, tv_m, v_init, rdf, wall_flags_0) & 1730 !$ACC PRESENT(tsc(2:5)) & 1731 !$ACC PRESENT(v_p) 1713 1732 DO i = nxl, nxr 1714 1733 DO j = nysv, nyn … … 1737 1756 IF ( timestep_scheme(1:5) == 'runge' ) THEN 1738 1757 IF ( intermediate_timestep_count == 1 ) THEN 1758 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1759 !$ACC PRESENT(tend, tv_m) 1739 1760 DO i = nxl, nxr 1740 1761 DO j = nysv, nyn … … 1746 1767 ELSEIF ( intermediate_timestep_count < & 1747 1768 intermediate_timestep_count_max ) THEN 1769 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1770 !$ACC PRESENT(tend, tv_m) 1748 1771 DO i = nxl, nxr 1749 1772 DO j = nysv, nyn … … 1763 1786 CALL cpu_log( log_point(7), 'w-equation', 'start' ) 1764 1787 1788 !$ACC KERNELS PRESENT(tend) 1765 1789 tend = 0.0_wp 1790 !$ACC END KERNELS 1766 1791 IF ( timestep_scheme(1:5) == 'runge' ) THEN 1767 1792 IF ( ws_scheme_mom ) THEN … … 1804 1829 ! 1805 1830 !-- Prognostic equation for w-velocity component 1831 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1832 !$ACC PRESENT(w, tend, tw_m, v_init, rdf, wall_flags_0) & 1833 !$ACC PRESENT(tsc(2:5)) & 1834 !$ACC PRESENT(w_p) 1806 1835 DO i = nxl, nxr 1807 1836 DO j = nys, nyn … … 1821 1850 IF ( timestep_scheme(1:5) == 'runge' ) THEN 1822 1851 IF ( intermediate_timestep_count == 1 ) THEN 1852 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1853 !$ACC PRESENT(tend, tw_m) 1823 1854 DO i = nxl, nxr 1824 1855 DO j = nys, nyn … … 1830 1861 ELSEIF ( intermediate_timestep_count < & 1831 1862 intermediate_timestep_count_max ) THEN 1863 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1864 !$ACC PRESENT(tend, tw_m) 1832 1865 DO i = nxl, nxr 1833 1866 DO j = nys, nyn … … 1868 1901 !-- pt-tendency terms with no communication 1869 1902 IF ( scalar_advec /= 'bc-scheme' ) THEN 1903 !$ACC KERNELS PRESENT(tend) 1870 1904 tend = 0.0_wp 1905 !$ACC END KERNELS 1871 1906 IF ( timestep_scheme(1:5) == 'runge' ) THEN 1872 1907 IF ( ws_scheme_sca ) THEN … … 1926 1961 ! 1927 1962 !-- Prognostic equation for potential temperature 1963 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1964 !$ACC PRESENT(pt, tend, tpt_m, wall_flags_0) & 1965 !$ACC PRESENT(pt_init, rdf_sc, ptdf_x, ptdf_y) & 1966 !$ACC PRESENT(tsc(3:5)) & 1967 !$ACC PRESENT(pt_p) 1928 1968 DO i = nxl, nxr 1929 1969 DO j = nys, nyn … … 1945 1985 IF ( timestep_scheme(1:5) == 'runge' ) THEN 1946 1986 IF ( intermediate_timestep_count == 1 ) THEN 1987 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1988 !$ACC PRESENT(tend, tpt_m) 1947 1989 DO i = nxl, nxr 1948 1990 DO j = nys, nyn … … 1954 1996 ELSEIF ( intermediate_timestep_count < & 1955 1997 intermediate_timestep_count_max ) THEN 1998 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 1999 !$ACC PRESENT(tend, tpt_m) 1956 2000 DO i = nxl, nxr 1957 2001 DO j = nys, nyn
Note: See TracChangeset
for help on using the changeset viewer.