Changeset 353 for palm/trunk/SCRIPTS/NCL
- Timestamp:
- Jul 9, 2009 1:59:55 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SCRIPTS/NCL/profiles.ncl
r351 r353 1524 1524 res@xyDashPattern = 1*nof 1525 1525 1526 1526 over_remind = False 1527 if ( over .eq. 1)then 1528 over_remind = True 1529 end if 1527 1530 1528 1531 do varn = 0,dim-1 … … 1691 1694 end do 1692 1695 end if 1696 1697 if (isStrSubset(data@long_name," SR " ) ) then 1698 over = 0 1699 end if 1693 1700 1694 1701 if (nof .EQ. 0) then … … 1698 1705 z=z/norm_z 1699 1706 end if 1707 1708 delta_z = z(1) - z(0) 1709 1710 max_z_int=doubletoint(max_z/delta_z) 1711 min_z_int=doubletoint(min_z/delta_z) 1712 1713 if(max_z_int .eq. min_z_int) 1714 print(" ") 1715 print("Please increase 'max_z' or decrease 'min_z' so that there are") 1716 print("at least two layers for the z-axis to plot") 1717 print(" ") 1718 exit 1719 end if 1720 1721 if(min_z_int .gt. max_z_int) 1722 print(" ") 1723 print("'min_z' is greater than 'max_z',") 1724 print("please change this") 1725 print(" ") 1726 exit 1727 end if 1728 1729 if(max_z_int .gt. dimz-1) 1730 max_z_int = dimz-1 1731 end if 1732 1733 if(min_z_int .lt. 0) 1734 min_z_int = 0 1735 end if 1736 1700 1737 1701 if (abs(min(data(varn,:, :))) .GT. 10)then1702 min_value = abs(0.0 1*min(data(varn,:,:)))1703 max_value = abs(0.0 1*max(data(varn,:,:)))1738 if (abs(min(data(varn,:,min_z_int:max_z_int))) .GT. 10)then 1739 min_value = abs(0.001*min(data(varn,:,min_z_int:max_z_int))) 1740 max_value = abs(0.001*max(data(varn,:,min_z_int:max_z_int))) 1704 1741 else 1705 if (abs(min(data(varn,:,:))) .LT. 0.01 .AND. abs(max(data(varn,:,:))) .GT. 0.01)then 1706 min_value = abs(0.1*max(data(varn,:,:))) 1707 max_value = abs(0.1*max(data(varn,:,:))) 1742 if (abs(min(data(varn,:,min_z_int:max_z_int))) .LT. 0.01 .AND. \ 1743 abs(max(data(varn,:,min_z_int:max_z_int))) .GT. 0.01)then 1744 min_value = abs(0.1*max(data(varn,:,min_z_int:max_z_int))) 1745 max_value = abs(0.1*max(data(varn,:,min_z_int:max_z_int))) 1708 1746 else 1709 if (abs(max(data(varn,:,:))) .LT. 0.01 .AND. abs(min(data(varn,:,:))) .GT. 0.01)then 1710 min_value = abs(0.1*min(data(varn,:,:))) 1711 max_value = abs(0.1*min(data(varn,:,:))) 1747 if (abs(max(data(varn,:,min_z_int:max_z_int))) .LT. 0.01 .AND.\ 1748 abs(min(data(varn,:,min_z_int:max_z_int))) .GT. 0.01)then 1749 min_value = abs(0.1*min(data(varn,:,min_z_int:max_z_int))) 1750 max_value = abs(0.1*min(data(varn,:,min_z_int:max_z_int))) 1712 1751 else 1713 min_value = abs(0.1*min(data(varn,:, :)))1714 max_value = abs(0.1*max(data(varn,:, :)))1752 min_value = abs(0.1*min(data(varn,:,min_z_int:max_z_int))) 1753 max_value = abs(0.1*max(data(varn,:,min_z_int:max_z_int))) 1715 1754 end if 1716 1755 end if 1717 1756 end if 1718 if (min(data(varn,:,:)) .EQ. 0 .AND. max(data(varn,:,:)) .EQ. 0)then 1757 if (min(data(varn,:,min_z_int:max_z_int)) .EQ. 0 .AND. \ 1758 max(data(varn,:,min_z_int:max_z_int)) .EQ. 0)then 1719 1759 min_value = 0.1 1720 1760 max_value = 0.1 … … 1728 1768 res@trYMaxF = max_z 1729 1769 if (xs .EQ. -1) then 1730 res@trXMinF = min(data(varn,:, :))-min_value1770 res@trXMinF = min(data(varn,:,min_z_int:max_z_int))-min_value 1731 1771 else 1732 1772 res@trXMinF = xs 1733 1773 end if 1734 1774 if (xe .EQ. -1) then 1735 res@trXMaxF = max(data(varn,:, :))+max_value1775 res@trXMaxF = max(data(varn,:,min_z_int:max_z_int))+max_value 1736 1776 else 1737 1777 res@trXMaxF = xe 1738 1778 end if 1739 1779 plot(n) = gsn_csm_xy(wks,data(varn,:,:),z,res) 1740 end if 1741 1742 if (vNam(varn) .EQ. "u") then 1743 miniu=min(data(varn,:,:))-min_value 1744 maxiu=max(data(varn,:,:))+max_value 1780 end if 1781 1782 1783 if (vNam(varn) .EQ. "u" ) then 1784 miniu=min(data(varn,:,min_z_int:max_z_int))-min_value 1785 maxiu=max(data(varn,:,min_z_int:max_z_int))+max_value 1745 1786 if (over .EQ. 1) then 1746 1787 res@xyDashPattern = 0 … … 1763 1804 end if 1764 1805 end if 1765 if (vNam(varn) .EQ. "v") then 1766 miniv=min(data(varn,:, :))-min_value1767 maxiv=max(data(varn,:, :))+max_value1806 if (vNam(varn) .EQ. "v") then 1807 miniv=min(data(varn,:,min_z_int:max_z_int))-min_value 1808 maxiv=max(data(varn,:,min_z_int:max_z_int))+max_value 1768 1809 if (over .EQ. 1) then 1769 1810 res@xyMonoDashPattern = True … … 1788 1829 end if 1789 1830 if (vNam(varn) .EQ. "w") then 1790 miniw=min(data(varn,:, :))-min_value1791 maxiw=max(data(varn,:, :))+max_value1831 miniw=min(data(varn,:,min_z_int:max_z_int))-min_value 1832 maxiw=max(data(varn,:,min_z_int:max_z_int))+max_value 1792 1833 if (over .EQ. 1) then 1793 1834 res@xyDashPattern = 2 … … 1812 1853 1813 1854 if (vNam(varn) .EQ. "pt") then 1814 minipt=min(data(varn,:, :))-min_value1815 maxipt=max(data(varn,:, :))+max_value1855 minipt=min(data(varn,:,min_z_int:max_z_int))-min_value 1856 maxipt=max(data(varn,:,min_z_int:max_z_int))+max_value 1816 1857 if (over .EQ. 1) then 1817 1858 res@xyDashPattern = 0 … … 1835 1876 end if 1836 1877 if (vNam(varn) .EQ. "vpt") then 1837 minivpt=min(data(varn,:, :))-min_value1838 maxivpt=max(data(varn,:, :))+max_value1878 minivpt=min(data(varn,:,min_z_int:max_z_int))-min_value 1879 maxivpt=max(data(varn,:,min_z_int:max_z_int))+max_value 1839 1880 if (over .EQ. 1) then 1840 1881 res@xyDashPattern = 1 … … 1858 1899 end if 1859 1900 if (vNam(varn) .EQ. "lpt") then 1860 minilpt=min(data(varn,:, :))-min_value1861 maxilpt=max(data(varn,:, :))+max_value1901 minilpt=min(data(varn,:,min_z_int:max_z_int))-min_value 1902 maxilpt=max(data(varn,:,min_z_int:max_z_int))+max_value 1862 1903 if (over .EQ. 1) then 1863 1904 res@xyDashPattern = 2 … … 1882 1923 1883 1924 if (vNam(varn) .EQ. "q") then 1884 miniq=min(data(varn,:, :))-min_value1885 maxiq=max(data(varn,:, :))+max_value1925 miniq=min(data(varn,:,min_z_int:max_z_int))-min_value 1926 maxiq=max(data(varn,:,min_z_int:max_z_int))+max_value 1886 1927 if (over .EQ. 1) then 1887 1928 res@xyDashPattern = 0 … … 1905 1946 end if 1906 1947 if (vNam(varn) .EQ. "qv") then 1907 miniqv=min(data(varn,:, :))-min_value1908 maxiqv=max(data(varn,:, :))+max_value1948 miniqv=min(data(varn,:,min_z_int:max_z_int))-min_value 1949 maxiqv=max(data(varn,:,min_z_int:max_z_int))+max_value 1909 1950 if (over .EQ. 1) then 1910 1951 res@xyDashPattern = 1 … … 1928 1969 end if 1929 1970 if (vNam(varn) .EQ. "ql") then 1930 miniql=min(data(varn,:, :))-min_value1931 maxiql=max(data(varn,:, :))+max_value1971 miniql=min(data(varn,:,min_z_int:max_z_int))-min_value 1972 maxiql=max(data(varn,:,min_z_int:max_z_int))+max_value 1932 1973 if (over .EQ. 1) then 1933 1974 res@xyDashPattern = 2 … … 1952 1993 1953 1994 if (vNam(varn) .EQ. "e") then 1954 minie=min(data(varn,:, :))-min_value1955 maxie=max(data(varn,:, :))+max_value1995 minie=min(data(varn,:,min_z_int:max_z_int))-min_value 1996 maxie=max(data(varn,:,min_z_int:max_z_int))+max_value 1956 1997 if (over .EQ. 1) then 1957 1998 res@xyDashPattern = 0 … … 1975 2016 end if 1976 2017 if (vNam(varn) .EQ. "es") then 1977 minies=min(data(varn,:, :))-min_value1978 maxies=max(data(varn,:, :))+max_value2018 minies=min(data(varn,:,min_z_int:max_z_int))-min_value 2019 maxies=max(data(varn,:,min_z_int:max_z_int))+max_value 1979 2020 if (over .EQ. 1) then 1980 2021 res@xyDashPattern = 1 … … 1999 2040 2000 2041 if (vNam(varn) .EQ. "km") then 2001 minikm=min(data(varn,:, :))-min_value2002 maxikm=max(data(varn,:, :))+max_value2042 minikm=min(data(varn,:,min_z_int:max_z_int))-min_value 2043 maxikm=max(data(varn,:,min_z_int:max_z_int))+max_value 2003 2044 if (over .EQ. 1) then 2004 2045 res@xyDashPattern = 0 … … 2022 2063 end if 2023 2064 if (vNam(varn) .EQ. "kh") then 2024 minikh=min(data(varn,:, :))-min_value2025 maxikh=max(data(varn,:, :))+max_value2065 minikh=min(data(varn,:,min_z_int:max_z_int))-min_value 2066 maxikh=max(data(varn,:,min_z_int:max_z_int))+max_value 2026 2067 if (over .EQ. 1) then 2027 2068 res@xyDashPattern = 1 … … 2046 2087 2047 2088 if (vNam(varn) .EQ. "wpup") then 2048 miniwpup=min(data(varn,:, :))-min_value2049 maxiwpup=max(data(varn,:, :))+max_value2089 miniwpup=min(data(varn,:,min_z_int:max_z_int))-min_value 2090 maxiwpup=max(data(varn,:,min_z_int:max_z_int))+max_value 2050 2091 if (over .EQ. 1) then 2051 2092 res@xyDashPattern = 0 … … 2069 2110 end if 2070 2111 if (vNam(varn) .EQ. "wsus") then 2071 miniwsus=min(data(varn,:, :))-min_value2072 maxiwsus=max(data(varn,:, :))+max_value2112 miniwsus=min(data(varn,:,min_z_int:max_z_int))-min_value 2113 maxiwsus=max(data(varn,:,min_z_int:max_z_int))+max_value 2073 2114 if (over .EQ. 1) then 2074 2115 res@xyDashPattern = 1 … … 2092 2133 end if 2093 2134 if (vNam(varn) .EQ. "wu") then 2094 miniwu=min(data(varn,:, :))-min_value2095 maxiwu=max(data(varn,:, :))+max_value2135 miniwu=min(data(varn,:,min_z_int:max_z_int))-min_value 2136 maxiwu=max(data(varn,:,min_z_int:max_z_int))+max_value 2096 2137 if (over .EQ. 1) then 2097 2138 res@xyDashPattern = 2 … … 2116 2157 2117 2158 if (vNam(varn) .EQ. "wpvp") then 2118 miniwpvp=min(data(varn,:, :))-min_value2119 maxiwpvp=max(data(varn,:, :))+max_value2159 miniwpvp=min(data(varn,:,min_z_int:max_z_int))-min_value 2160 maxiwpvp=max(data(varn,:,min_z_int:max_z_int))+max_value 2120 2161 if (over .EQ. 1) then 2121 2162 res@xyDashPattern = 0 … … 2139 2180 end if 2140 2181 if (vNam(varn) .EQ. "wsvs") then 2141 miniwsvs=min(data(varn,:, :))-min_value2142 maxiwsvs=max(data(varn,:, :))+max_value2182 miniwsvs=min(data(varn,:,min_z_int:max_z_int))-min_value 2183 maxiwsvs=max(data(varn,:,min_z_int:max_z_int))+max_value 2143 2184 if (over .EQ. 1) then 2144 2185 res@xyDashPattern = 1 … … 2162 2203 end if 2163 2204 if (vNam(varn) .EQ. "wv") then 2164 miniwv=min(data(varn,:, :))-min_value2165 maxiwv=max(data(varn,:, :))+max_value2205 miniwv=min(data(varn,:,min_z_int:max_z_int))-min_value 2206 maxiwv=max(data(varn,:,min_z_int:max_z_int))+max_value 2166 2207 if (over .EQ. 1) then 2167 2208 res@xyDashPattern = 2 … … 2186 2227 2187 2228 if (vNam(varn) .EQ. "wpptp") then 2188 miniwpptp=min(data(varn,:, :))-min_value2189 maxiwpptp=max(data(varn,:, :))+max_value2229 miniwpptp=min(data(varn,:,min_z_int:max_z_int))-min_value 2230 maxiwpptp=max(data(varn,:,min_z_int:max_z_int))+max_value 2190 2231 if (over .EQ. 1) then 2191 2232 res@xyDashPattern = 0 … … 2209 2250 end if 2210 2251 if (vNam(varn) .EQ. "wspts") then 2211 miniwspts=min(data(varn,:, :))-min_value2212 maxiwspts=max(data(varn,:, :))+max_value2252 miniwspts=min(data(varn,:,min_z_int:max_z_int))-min_value 2253 maxiwspts=max(data(varn,:,min_z_int:max_z_int))+max_value 2213 2254 if (over .EQ. 1) then 2214 2255 res@xyDashPattern = 1 … … 2232 2273 end if 2233 2274 if (vNam(varn) .EQ. "wpt") then 2234 miniwpt=min(data(varn,:, :))-min_value2235 maxiwpt=max(data(varn,:, :))+max_value2275 miniwpt=min(data(varn,:,min_z_int:max_z_int))-min_value 2276 maxiwpt=max(data(varn,:,min_z_int:max_z_int))+max_value 2236 2277 if (over .EQ. 1) then 2237 2278 res@xyDashPattern = 2 … … 2256 2297 2257 2298 if (vNam(varn) .EQ. "wsptsBC") then 2258 miniwsptsBC=min(data(varn,:, :))-min_value2259 maxiwsptsBC=max(data(varn,:, :))+max_value2299 miniwsptsBC=min(data(varn,:,min_z_int:max_z_int))-min_value 2300 maxiwsptsBC=max(data(varn,:,min_z_int:max_z_int))+max_value 2260 2301 if (over .EQ. 1) then 2261 2302 res@xyDashPattern = 0 … … 2279 2320 end if 2280 2321 if (vNam(varn) .EQ. "wptBC") then 2281 miniwptBC=min(data(varn,:, :))-min_value2282 maxiwptBC=max(data(varn,:, :))+max_value2322 miniwptBC=min(data(varn,:,min_z_int:max_z_int))-min_value 2323 maxiwptBC=max(data(varn,:,min_z_int:max_z_int))+max_value 2283 2324 if (over .EQ. 1) then 2284 2325 res@xyDashPattern = 1 … … 2303 2344 2304 2345 if (vNam(varn) .EQ. "wpvptp") then 2305 miniwpvptp=min(data(varn,:, :))-min_value2306 maxiwpvptp=max(data(varn,:, :))+max_value2346 miniwpvptp=min(data(varn,:,min_z_int:max_z_int))-min_value 2347 maxiwpvptp=max(data(varn,:,min_z_int:max_z_int))+max_value 2307 2348 if (over .EQ. 1) then 2308 2349 res@xyDashPattern = 0 … … 2326 2367 end if 2327 2368 if (vNam(varn) .EQ. "wsvpts") then 2328 miniwsvpts=min(data(varn,:, :))-min_value2329 maxiwsvpts=max(data(varn,:, :))+max_value2369 miniwsvpts=min(data(varn,:,min_z_int:max_z_int))-min_value 2370 maxiwsvpts=max(data(varn,:,min_z_int:max_z_int))+max_value 2330 2371 if (over .EQ. 1) then 2331 2372 res@xyDashPattern = 1 … … 2349 2390 end if 2350 2391 if (vNam(varn) .EQ. "wvpt") then 2351 miniwvpt=min(data(varn,:, :))-min_value2352 maxiwvpt=max(data(varn,:, :))+max_value2392 miniwvpt=min(data(varn,:,min_z_int:max_z_int))-min_value 2393 maxiwvpt=max(data(varn,:,min_z_int:max_z_int))+max_value 2353 2394 if (over .EQ. 1) then 2354 2395 res@xyDashPattern = 2 … … 2373 2414 2374 2415 if (vNam(varn) .EQ. "wpqp") then 2375 miniwpqp=min(data(varn,:, :))-min_value2376 maxiwpqp=max(data(varn,:, :))+max_value2416 miniwpqp=min(data(varn,:,min_z_int:max_z_int))-min_value 2417 maxiwpqp=max(data(varn,:,min_z_int:max_z_int))+max_value 2377 2418 if (over .EQ. 1) then 2378 2419 res@xyDashPattern = 0 … … 2396 2437 end if 2397 2438 if (vNam(varn) .EQ. "wsqs") then 2398 miniwsqs=min(data(varn,:, :))-min_value2399 maxiwsqs=max(data(varn,:, :))+max_value2439 miniwsqs=min(data(varn,:,min_z_int:max_z_int))-min_value 2440 maxiwsqs=max(data(varn,:,min_z_int:max_z_int))+max_value 2400 2441 if (over .EQ. 1) then 2401 2442 res@xyDashPattern = 1 … … 2419 2460 end if 2420 2461 if (vNam(varn) .EQ. "wq") then 2421 miniwq=min(data(varn,:, :))-min_value2422 maxiwq=max(data(varn,:, :))+max_value2462 miniwq=min(data(varn,:,min_z_int:max_z_int))-min_value 2463 maxiwq=max(data(varn,:,min_z_int:max_z_int))+max_value 2423 2464 if (over .EQ. 1) then 2424 2465 res@xyDashPattern = 2 … … 2443 2484 2444 2485 if (vNam(varn) .EQ. "wpqvp") then 2445 miniwpqvp=min(data(varn,:, :))-min_value2446 maxiwpqvp=max(data(varn,:, :))+max_value2486 miniwpqvp=min(data(varn,:,min_z_int:max_z_int))-min_value 2487 maxiwpqvp=max(data(varn,:,min_z_int:max_z_int))+max_value 2447 2488 if (over .EQ. 1) then 2448 2489 res@xyDashPattern = 0 … … 2466 2507 end if 2467 2508 if (vNam(varn) .EQ. "wsqvs") then 2468 miniwsqvs=min(data(varn,:, :))-min_value2469 maxiwsqvs=max(data(varn,:, :))+max_value2509 miniwsqvs=min(data(varn,:,min_z_int:max_z_int))-min_value 2510 maxiwsqvs=max(data(varn,:,min_z_int:max_z_int))+max_value 2470 2511 if (over .EQ. 1) then 2471 2512 res@xyDashPattern = 1 … … 2489 2530 end if 2490 2531 if (vNam(varn) .EQ. "wqv") then 2491 miniwqv=min(data(varn,:, :))-min_value2492 maxiwqv=max(data(varn,:, :))+max_value2532 miniwqv=min(data(varn,:,min_z_int:max_z_int))-min_value 2533 maxiwqv=max(data(varn,:,min_z_int:max_z_int))+max_value 2493 2534 if (over .EQ. 1) then 2494 2535 res@xyDashPattern = 2 … … 2513 2554 2514 2555 if (vNam(varn) .EQ. "wpsp") then 2515 miniwpsp=min(data(varn,:, :))-min_value2516 maxiwpsp=max(data(varn,:, :))+max_value2556 miniwpsp=min(data(varn,:,min_z_int:max_z_int))-min_value 2557 maxiwpsp=max(data(varn,:,min_z_int:max_z_int))+max_value 2517 2558 if (over .EQ. 1) then 2518 2559 res@xyDashPattern = 0 … … 2536 2577 end if 2537 2578 if (vNam(varn) .EQ. "wsss") then 2538 miniwsss=min(data(varn,:, :))-min_value2539 maxiwsss=max(data(varn,:, :))+max_value2579 miniwsss=min(data(varn,:,min_z_int:max_z_int))-min_value 2580 maxiwsss=max(data(varn,:,min_z_int:max_z_int))+max_value 2540 2581 if (over .EQ. 1) then 2541 2582 res@xyDashPattern = 1 … … 2559 2600 end if 2560 2601 if (vNam(varn) .EQ. "ws") then 2561 miniws=min(data(varn,:, :))-min_value2562 maxiws=max(data(varn,:, :))+max_value2602 miniws=min(data(varn,:,min_z_int:max_z_int))-min_value 2603 maxiws=max(data(varn,:,min_z_int:max_z_int))+max_value 2563 2604 if (over .EQ. 1) then 2564 2605 res@xyDashPattern = 2 … … 2583 2624 2584 2625 if (vNam(varn) .EQ. "wpsap") then 2585 miniwpsap=min(data(varn,:, :))-min_value2586 maxiwpsap=max(data(varn,:, :))+max_value2626 miniwpsap=min(data(varn,:,min_z_int:max_z_int))-min_value 2627 maxiwpsap=max(data(varn,:,min_z_int:max_z_int))+max_value 2587 2628 if (over .EQ. 1) then 2588 2629 res@xyDashPattern = 0 … … 2606 2647 end if 2607 2648 if (vNam(varn) .EQ. "wssas") then 2608 miniwssas=min(data(varn,:, :))-min_value2609 maxiwssas=max(data(varn,:, :))+max_value2649 miniwssas=min(data(varn,:,min_z_int:max_z_int))-min_value 2650 maxiwssas=max(data(varn,:,min_z_int:max_z_int))+max_value 2610 2651 if (over .EQ. 1) then 2611 2652 res@xyDashPattern = 1 … … 2629 2670 end if 2630 2671 if (vNam(varn) .EQ. "wsa") then 2631 miniwsa=min(data(varn,:, :))-min_value2632 maxiwsa=max(data(varn,:, :))+max_value2672 miniwsa=min(data(varn,:,min_z_int:max_z_int))-min_value 2673 maxiwsa=max(data(varn,:,min_z_int:max_z_int))+max_value 2633 2674 if (over .EQ. 1) then 2634 2675 res@xyDashPattern = 2 … … 2653 2694 2654 2695 if (vNam(varn) .EQ. "us2") then 2655 minius2=min(data(varn,:, :))-min_value2656 maxius2=max(data(varn,:, :))+max_value2696 minius2=min(data(varn,:,min_z_int:max_z_int))-min_value 2697 maxius2=max(data(varn,:,min_z_int:max_z_int))+max_value 2657 2698 if (over .EQ. 1) then 2658 2699 res@xyDashPattern = 0 … … 2676 2717 end if 2677 2718 if (vNam(varn) .EQ. "vs2") then 2678 minivs2=min(data(varn,:, :))-min_value2679 maxivs2=max(data(varn,:, :))+max_value2719 minivs2=min(data(varn,:,min_z_int:max_z_int))-min_value 2720 maxivs2=max(data(varn,:,min_z_int:max_z_int))+max_value 2680 2721 if (over .EQ. 1) then 2681 2722 res@xyDashPattern = 1 … … 2699 2740 end if 2700 2741 if (vNam(varn) .EQ. "ws2") then 2701 miniws2=min(data(varn,:, :))-min_value2702 maxiws2=max(data(varn,:, :))+max_value2742 miniws2=min(data(varn,:,min_z_int:max_z_int))-min_value 2743 maxiws2=max(data(varn,:,min_z_int:max_z_int))+max_value 2703 2744 if (over .EQ. 1) then 2704 2745 res@xyDashPattern = 2 … … 2723 2764 2724 2765 if (vNam(varn) .EQ. "wsususodz") then 2725 miniwsususodz=min(data(varn,:, :))-min_value2726 maxiwsususodz=max(data(varn,:, :))+max_value2766 miniwsususodz=min(data(varn,:,min_z_int:max_z_int))-min_value 2767 maxiwsususodz=max(data(varn,:,min_z_int:max_z_int))+max_value 2727 2768 if (over .EQ. 1) then 2728 2769 res@xyDashPattern = 0 … … 2746 2787 end if 2747 2788 if (vNam(varn) .EQ. "wspsodz") then 2748 miniwspsodz=min(data(varn,:, :))-min_value2749 maxiwspsodz=max(data(varn,:, :))+max_value2789 miniwspsodz=min(data(varn,:,min_z_int:max_z_int))-min_value 2790 maxiwspsodz=max(data(varn,:,min_z_int:max_z_int))+max_value 2750 2791 if (over .EQ. 1) then 2751 2792 res@xyDashPattern = 1 … … 2769 2810 end if 2770 2811 if (vNam(varn) .EQ. "wpeodz") then 2771 miniwpeodz=min(data(varn,:, :))-min_value2772 maxiwpeodz=max(data(varn,:, :))+max_value2812 miniwpeodz=min(data(varn,:,min_z_int:max_z_int))-min_value 2813 maxiwpeodz=max(data(varn,:,min_z_int:max_z_int))+max_value 2773 2814 if (over .EQ. 1) then 2774 2815 res@xyDashPattern = 2 … … 2816 2857 end do 2817 2858 ;#########ENDE DO LOOP FOR no_files GT 1############# 2818 2859 2860 if (isStrSubset(data@long_name," SR " ) .and. over_remind) then 2861 print(" ") 2862 print("If you have outputs of statistic regions you cannot overlay variables;") 2863 print("'over' is set to 0" ) 2864 print(" ") 2865 over = 0 2866 end if 2867 2819 2868 if (count_var .EQ. 0) then 2820 2869 print(" ") … … 2824 2873 print(" ") 2825 2874 exit 2826 end if2827 2828 if (isStrSubset(data@long_name," SR " ))then2829 print(" ")2830 print("If you have outputs of statistic regions you cannot overlay variables;")2831 print("'over' is set to 0" )2832 print(" ")2833 over = 02834 2875 end if 2835 2876 … … 3002 3043 z=z/norm_z 3003 3044 3004 if (abs(min(data(varn,:, :))) .GT. 10)then3005 min_value = abs(0.01*min(data(varn,:, :)))3006 max_value = abs(0.01*max(data(varn,:, :)))3045 if (abs(min(data(varn,:,min_z_int:max_z_int))) .GT. 10)then 3046 min_value = abs(0.01*min(data(varn,:,min_z_int:max_z_int))) 3047 max_value = abs(0.01*max(data(varn,:,min_z_int:max_z_int))) 3007 3048 else 3008 if (abs(min(data(varn,:,:))) .LT. 0.01 .AND. abs(max(data(varn,:,:))) .GT. 0.01)then 3009 min_value = abs(0.1*max(data(varn,:,:))) 3010 max_value = abs(0.1*max(data(varn,:,:))) 3049 if (abs(min(data(varn,:,min_z_int:max_z_int))) .LT. 0.01 .AND. \ 3050 abs(max(data(varn,:,min_z_int:max_z_int))) .GT. 0.01)then 3051 min_value = abs(0.1*max(data(varn,:,min_z_int:max_z_int))) 3052 max_value = abs(0.1*max(data(varn,:,min_z_int:max_z_int))) 3011 3053 else 3012 if (abs(max(data(varn,:,:))) .LT. 0.01 .AND. abs(min(data(varn,:,:))) .GT. 0.01)then 3013 min_value = abs(0.1*min(data(varn,:,:))) 3014 max_value = abs(0.1*min(data(varn,:,:))) 3054 if (abs(max(data(varn,:,:))) .LT. 0.01 .AND. \ 3055 abs(min(data(varn,:,min_z_int:max_z_int))) .GT. 0.01)then 3056 min_value = abs(0.1*min(data(varn,:,min_z_int:max_z_int))) 3057 max_value = abs(0.1*min(data(varn,:,min_z_int:max_z_int))) 3015 3058 else 3016 min_value = abs(0.1*min(data(varn,:, :)))3017 max_value = abs(0.1*max(data(varn,:, :)))3059 min_value = abs(0.1*min(data(varn,:,min_z_int:max_z_int))) 3060 max_value = abs(0.1*max(data(varn,:,min_z_int:max_z_int))) 3018 3061 end if 3019 3062 end if 3020 3063 end if 3021 if (min(data(varn,:,:)) .EQ. 0 .AND. max(data(varn,:,:)) .EQ. 0)then 3064 if (min(data(varn,:,min_z_int:max_z_int)) .EQ. 0 .AND.\ 3065 max(data(varn,:,min_z_int:max_z_int)) .EQ. 0)then 3022 3066 min_value = 0.1 3023 3067 max_value = 0.1 … … 3032 3076 3033 3077 if (xs .EQ. -1) then 3034 res@trXMinF = min(data(varn,:, :))-min_value3078 res@trXMinF = min(data(varn,:,min_z_int:max_z_int))-min_value 3035 3079 else 3036 3080 res@trXMinF = xs 3037 3081 end if 3038 3082 if (xe .EQ. -1) then 3039 res@trXMaxF = max(data(varn,:, :))+max_value3083 res@trXMaxF = max(data(varn,:,min_z_int:max_z_int))+max_value 3040 3084 else 3041 3085 res@trXMaxF = xe
Note: See TracChangeset
for help on using the changeset viewer.