Browse Source

Updated ipython notebooks

main
Bill Ladwig 9 years ago
parent
commit
179db835ba
  1. 51
      test/ipynb/WRF_Workshop_Demo.ipynb
  2. 20
      test/ipynb/WRF_python_demo.ipynb
  3. 866
      test/ipynb/nocopy_test.ipynb

51
test/ipynb/WRF_Workshop_Demo.ipynb

@ -27,7 +27,8 @@ @@ -27,7 +27,8 @@
"from wrf import getvar, npvalues\n",
"\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2016-02-25_18_00_00\"\n",
"filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"filename = \"wrfout_d01_2010-06-13_21:00:00\"\n",
"pynio_filename = filename + \".nc\"\n",
"ncfile = open_file(pynio_filename)\n",
"\n",
@ -60,7 +61,8 @@ @@ -60,7 +61,8 @@
"\n",
"\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2016-02-25_18_00_00\"\n",
"filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"filename = \"wrfout_d01_2010-06-13_21:00:00\"\n",
"pynio_filename = filename + \".nc\"\n",
"ncfile = open_file(pynio_filename)\n",
"\n",
@ -88,9 +90,9 @@ @@ -88,9 +90,9 @@
"fig = plt.figure(figsize=(16,16))\n",
"ax = fig.add_axes([0.1,0.1,0.8,0.8])\n",
"\n",
"# Draw filled contours from 200 to 3000 m, every 200 meters.\n",
"levels = np.arange(250, 3000, 200)\n",
"bm.contourf(x, y, terrain_data, levels=levels, extend=\"max\")\n",
"# Draw filled contours from 100 to 3000 m, every 200 meters.\n",
"levels = np.arange(100, 3000, 200)\n",
"bm.contourf(x, y, terrain_data, levels=levels, extend=\"max\", cmap=get_cmap(\"terrain\"))\n",
"\n",
"# Draw the coastlines and country borders.\n",
"bm.drawcoastlines()\n",
@ -121,8 +123,9 @@ @@ -121,8 +123,9 @@
"from wrf import getvar, npvalues\n",
"\n",
"\n",
"filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2016-02-25_18_00_00\"\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2016-02-25_18_00_00\"\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"filename = \"wrfout_d01_2010-06-13_21:00:00\"\n",
"pynio_filename = filename + \".nc\"\n",
"ncfile = open_file(pynio_filename)\n",
"\n",
@ -153,13 +156,14 @@ @@ -153,13 +156,14 @@
"fig = plt.figure(figsize=(16,16))\n",
"ax = fig.add_axes([0.1,0.1,0.8,0.8])\n",
"\n",
"# Draw filled contours from 200 to 3000 m, every 200 meters.\n",
"levels = np.arange(-40, 40, 5)\n",
"bm.contourf(x, y, dewpoint_ndarray, levels=levels, extend=\"both\")\n",
"# Draw filled contours from -20 C to 40 C, every 5 C.\n",
"levels = np.arange(-20, 40, 5)\n",
"bm.contourf(x, y, dewpoint_ndarray, levels=levels, extend=\"both\", cmap=get_cmap(\"RdYlGn\"))\n",
"\n",
"# Draw the coastlines and country borders.\n",
"# Draw the coastlines, country borders, and states.\n",
"bm.drawcoastlines()\n",
"bm.drawcountries()\n",
"bm.drawstates()\n",
"\n",
"# Draw the color bar\n",
"plt.colorbar(ax=ax, shrink=.7)\n",
@ -187,7 +191,8 @@ @@ -187,7 +191,8 @@
"\n",
"# Open the output netcdf file\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2016-02-25_18_00_00\"\n",
"filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"filename = \"wrfout_d01_2010-06-13_21:00:00\"\n",
"pynio_filename = filename + \".nc\"\n",
"ncfile = open_file(pynio_filename)\n",
"\n",
@ -201,7 +206,7 @@ @@ -201,7 +206,7 @@
"pivot_point = (z.shape[-1] / 2, z.shape[-2] / 2) \n",
"angle = 90.0\n",
"\n",
"# Compute the vertical cross-section interpolation. Include the lat/lon points along the cross-section.\n",
"# Compute the vertical cross-section interpolation. Also, include the lat/lon points along the cross-section.\n",
"p_vertx = vertcross(p, z, pivot_point=pivot_point, angle=angle, include_latlon=True)\n",
"\n",
"# Extract the numpy array\n",
@ -224,7 +229,7 @@ @@ -224,7 +229,7 @@
"coord_pairs = npvalues(p_vertx.coords[\"xy_loc\"])\n",
"x_ticks = np.arange(coord_pairs.shape[0])\n",
"x_labels = [pair.latlon_str() for pair in npvalues(coord_pairs)]\n",
"plt.xticks(xy_vals[::100], x_labels[::100]) # Only use every 100th tick.\n",
"plt.xticks(x_ticks[::100], x_labels[::100]) # Only use every 100th tick.\n",
"\n",
"# Set the y-ticks to be height.\n",
"vert_vals = npvalues(p_vertx.coords[\"vertical\"])\n",
@ -257,20 +262,23 @@ @@ -257,20 +262,23 @@
"\n",
"# Open the output netcdf file\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2016-02-25_18_00_00\"\n",
"filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"#filename = \"/Users/ladwig/Documents/wrf_files/wrfout_d01_2010-06-13_21:00:00\"\n",
"filename = \"wrfout_d01_2010-06-13_21:00:00\"\n",
"pynio_filename = filename + \".nc\"\n",
"ncfile = open_file(pynio_filename)\n",
"\n",
"# Extract pressure, model height, destaggered u and v winds\n",
"# Extract pressure, model height, u and v winds on mass points\n",
"p = getvar(ncfile, \"pressure\")\n",
"z = getvar(ncfile, \"z\", units=\"dm\")\n",
"ua = getvar(ncfile, \"ua\", units=\"kts\")\n",
"va = getvar(ncfile, \"va\", units=\"kts\")\n",
"wspd = getvar(ncfile, \"wspd_wdir\", units=\"kts\")[0,...]\n",
"\n",
"# Interpolate height, u, and v to to 500 hPa\n",
"ht_500 = interplevel(z, p, 500)\n",
"u_500 = interplevel(ua, p, 500)\n",
"v_500 = interplevel(va, p, 500)\n",
"wspd_500 = interplevel(wspd, p, 500)\n",
"\n",
"# Get the projection\n",
"wrf_proj = p.attrs[\"projection\"]\n",
@ -291,8 +299,15 @@ @@ -291,8 +299,15 @@
"bm.drawcountries()\n",
"bm.drawstates()\n",
"\n",
"# Make the height contours\n",
"bm.contour(x, y, npvalues(ht_500), 10)\n",
"# Make the 500 hPa height contours\n",
"ht_contours = bm.contour(x, y, npvalues(ht_500), 10, linewidths=2.0, colors=\"black\")\n",
"\n",
"# Use contour labels for height\n",
"plt.clabel(ht_contours, inline=True, fontsize=12, fmt=\"%i\")\n",
"\n",
"# Make the wind speed filled contours\n",
"levels = np.arange(40, 120, 10)\n",
"bm.contourf(x, y, npvalues(wspd_500), levels=levels, extend=\"max\", cmap=get_cmap(\"rainbow\"))\n",
"\n",
"# Make the wind barbs. Only use every 50th in each direction.\n",
"bm.barbs(x[::50,::50], y[::50,::50], npvalues(u_500[::50, ::50]), npvalues(v_500[::50, ::50]))\n",
@ -301,7 +316,7 @@ @@ -301,7 +316,7 @@
"plt.colorbar(ax=ax, shrink=.7)\n",
"\n",
"# Make the title\n",
"plt.title(\"500 MB Heights (dm) and Wind Barbs (kts)\", {\"fontsize\" : 20})\n",
"plt.title(\"500 MB Heights (dm), Wind Speed (kts), and Wind Barbs (kts)\", {\"fontsize\" : 20})\n",
"\n",
"plt.show()"
]

20
test/ipynb/WRF_python_demo.ipynb

@ -705,23 +705,11 @@ @@ -705,23 +705,11 @@
},
{
"cell_type": "code",
"execution_count": 1,
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [
{
"ename": "NameError",
"evalue": "name 'ncfile' is not defined",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-1-ed0906af3a45>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0mwrf\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mgetvar\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mvertcross\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnpvalues\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 8\u001b[0;31m \u001b[0mp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mgetvar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mncfile\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"pressure\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 9\u001b[0m \u001b[0mz\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mgetvar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mncfile\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"z\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0munits\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"dm\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mNameError\u001b[0m: name 'ncfile' is not defined"
]
}
],
"outputs": [],
"source": [
"# Cross-section of pressure using xarray's builtin plotting\n",
"import numpy as np\n",
@ -979,7 +967,7 @@ @@ -979,7 +967,7 @@
},
{
"cell_type": "code",
"execution_count": 1,
"execution_count": null,
"metadata": {
"collapsed": true
},
@ -990,7 +978,7 @@ @@ -990,7 +978,7 @@
},
{
"cell_type": "code",
"execution_count": 2,
"execution_count": null,
"metadata": {
"collapsed": true
},

866
test/ipynb/nocopy_test.ipynb

@ -421,873 +421,11 @@ @@ -421,873 +421,11 @@
},
{
"cell_type": "code",
"execution_count": 1,
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<xarray.DataArray u'P_500_m' (Time: 2, south_north: 324, west_east: 414)>\n",
"array([[[ 1284.37878418, 1286.88208008, 1288.14526367, ...,\n",
" 1042.98413086, 1043.49230957, 1042.76550293],\n",
" [ 1290.37072754, 1305.41650391, 1315.56066895, ...,\n",
" 1058.42687988, 1054.85864258, 1048.94299316],\n",
" [ 1297.45019531, 1319.68493652, 1332.59887695, ...,\n",
" 1067.23571777, 1063.85803223, 1054.76965332],\n",
" ..., \n",
" [ 2282.65576172, 2248.74243164, 2226.04858398, ...,\n",
" 680.19281006, 715.02349854, 752.45947266],\n",
" [ 2261.47558594, 2233.76464844, 2212.33129883, ...,\n",
" 673.80822754, 712.69897461, 748.10424805],\n",
" [ 2241.63647461, 2225.63354492, 2209.28881836, ...,\n",
" 665.93286133, 703.76361084, 743.64093018]],\n",
"\n",
" [[ 1284.37878418, 1286.88208008, 1288.14526367, ...,\n",
" 1042.98413086, 1043.49230957, 1042.76550293],\n",
" [ 1290.37072754, 1305.41650391, 1315.56066895, ...,\n",
" 1058.42687988, 1054.85864258, 1048.94299316],\n",
" [ 1297.45019531, 1319.68493652, 1332.59887695, ...,\n",
" 1067.23571777, 1063.85803223, 1054.76965332],\n",
" ..., \n",
" [ 2282.65576172, 2248.74243164, 2226.04858398, ...,\n",
" 680.19281006, 715.02349854, 752.45947266],\n",
" [ 2261.47558594, 2233.76464844, 2212.33129883, ...,\n",
" 673.80822754, 712.69897461, 748.10424805],\n",
" [ 2241.63647461, 2225.63354492, 2209.28881836, ...,\n",
" 665.93286133, 703.76361084, 743.64093018]]], dtype=float32)\n",
"Coordinates:\n",
" XLONG (south_north, west_east) float32 -127.749 -127.627 -127.504 ...\n",
" XLAT (south_north, west_east) float32 13.69 13.726 13.7617 ...\n",
" * Time (Time) datetime64[ns] 2010-06-13T21:00:00 2010-06-13T21:00:00\n",
" * south_north (south_north) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...\n",
" * west_east (west_east) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...\n",
" datetime (Time) datetime64[ns] 2010-06-13T21:00:00 2010-06-13T21:00:00\n",
"Attributes:\n",
" FieldType: 104\n",
" units: Pa\n",
" stagger: \n",
" coordinates: XLONG XLAT\n",
" projection: LambertConformal(bottom_left=(13.69003, -127.74881), top_right=(53.277489, -53.45282), stand_lon=-101.0, moad_cen_lat=39.0000038147, pole_lat=90.0, pole_lon=0.0)\n",
" PlotLevelID: 500 m\n",
" missing_value: 9.96920996839e+36\n",
" _FillValue: 9.96920996839e+36\n",
"\n",
"\n",
"<xarray.DataArray u'P_xy' (idx: 413, x_y: 2)>\n",
"array([[ 0., 162.],\n",
" [ 1., 162.],\n",
" [ 2., 162.],\n",
" [ 3., 162.],\n",
" [ 4., 162.],\n",
" [ 5., 162.],\n",
" [ 6., 162.],\n",
" [ 7., 162.],\n",
" [ 8., 162.],\n",
" [ 9., 162.],\n",
" [ 10., 162.],\n",
" [ 11., 162.],\n",
" [ 12., 162.],\n",
" [ 13., 162.],\n",
" [ 14., 162.],\n",
" [ 15., 162.],\n",
" [ 16., 162.],\n",
" [ 17., 162.],\n",
" [ 18., 162.],\n",
" [ 19., 162.],\n",
" [ 20., 162.],\n",
" [ 21., 162.],\n",
" [ 22., 162.],\n",
" [ 23., 162.],\n",
" [ 24., 162.],\n",
" [ 25., 162.],\n",
" [ 26., 162.],\n",
" [ 27., 162.],\n",
" [ 28., 162.],\n",
" [ 29., 162.],\n",
" [ 30., 162.],\n",
" [ 31., 162.],\n",
" [ 32., 162.],\n",
" [ 33., 162.],\n",
" [ 34., 162.],\n",
" [ 35., 162.],\n",
" [ 36., 162.],\n",
" [ 37., 162.],\n",
" [ 38., 162.],\n",
" [ 39., 162.],\n",
" [ 40., 162.],\n",
" [ 41., 162.],\n",
" [ 42., 162.],\n",
" [ 43., 162.],\n",
" [ 44., 162.],\n",
" [ 45., 162.],\n",
" [ 46., 162.],\n",
" [ 47., 162.],\n",
" [ 48., 162.],\n",
" [ 49., 162.],\n",
" [ 50., 162.],\n",
" [ 51., 162.],\n",
" [ 52., 162.],\n",
" [ 53., 162.],\n",
" [ 54., 162.],\n",
" [ 55., 162.],\n",
" [ 56., 162.],\n",
" [ 57., 162.],\n",
" [ 58., 162.],\n",
" [ 59., 162.],\n",
" [ 60., 162.],\n",
" [ 61., 162.],\n",
" [ 62., 162.],\n",
" [ 63., 162.],\n",
" [ 64., 162.],\n",
" [ 65., 162.],\n",
" [ 66., 162.],\n",
" [ 67., 162.],\n",
" [ 68., 162.],\n",
" [ 69., 162.],\n",
" [ 70., 162.],\n",
" [ 71., 162.],\n",
" [ 72., 162.],\n",
" [ 73., 162.],\n",
" [ 74., 162.],\n",
" [ 75., 162.],\n",
" [ 76., 162.],\n",
" [ 77., 162.],\n",
" [ 78., 162.],\n",
" [ 79., 162.],\n",
" [ 80., 162.],\n",
" [ 81., 162.],\n",
" [ 82., 162.],\n",
" [ 83., 162.],\n",
" [ 84., 162.],\n",
" [ 85., 162.],\n",
" [ 86., 162.],\n",
" [ 87., 162.],\n",
" [ 88., 162.],\n",
" [ 89., 162.],\n",
" [ 90., 162.],\n",
" [ 91., 162.],\n",
" [ 92., 162.],\n",
" [ 93., 162.],\n",
" [ 94., 162.],\n",
" [ 95., 162.],\n",
" [ 96., 162.],\n",
" [ 97., 162.],\n",
" [ 98., 162.],\n",
" [ 99., 162.],\n",
" [ 100., 162.],\n",
" [ 101., 162.],\n",
" [ 102., 162.],\n",
" [ 103., 162.],\n",
" [ 104., 162.],\n",
" [ 105., 162.],\n",
" [ 106., 162.],\n",
" [ 107., 162.],\n",
" [ 108., 162.],\n",
" [ 109., 162.],\n",
" [ 110., 162.],\n",
" [ 111., 162.],\n",
" [ 112., 162.],\n",
" [ 113., 162.],\n",
" [ 114., 162.],\n",
" [ 115., 162.],\n",
" [ 116., 162.],\n",
" [ 117., 162.],\n",
" [ 118., 162.],\n",
" [ 119., 162.],\n",
" [ 120., 162.],\n",
" [ 121., 162.],\n",
" [ 122., 162.],\n",
" [ 123., 162.],\n",
" [ 124., 162.],\n",
" [ 125., 162.],\n",
" [ 126., 162.],\n",
" [ 127., 162.],\n",
" [ 128., 162.],\n",
" [ 129., 162.],\n",
" [ 130., 162.],\n",
" [ 131., 162.],\n",
" [ 132., 162.],\n",
" [ 133., 162.],\n",
" [ 134., 162.],\n",
" [ 135., 162.],\n",
" [ 136., 162.],\n",
" [ 137., 162.],\n",
" [ 138., 162.],\n",
" [ 139., 162.],\n",
" [ 140., 162.],\n",
" [ 141., 162.],\n",
" [ 142., 162.],\n",
" [ 143., 162.],\n",
" [ 144., 162.],\n",
" [ 145., 162.],\n",
" [ 146., 162.],\n",
" [ 147., 162.],\n",
" [ 148., 162.],\n",
" [ 149., 162.],\n",
" [ 150., 162.],\n",
" [ 151., 162.],\n",
" [ 152., 162.],\n",
" [ 153., 162.],\n",
" [ 154., 162.],\n",
" [ 155., 162.],\n",
" [ 156., 162.],\n",
" [ 157., 162.],\n",
" [ 158., 162.],\n",
" [ 159., 162.],\n",
" [ 160., 162.],\n",
" [ 161., 162.],\n",
" [ 162., 162.],\n",
" [ 163., 162.],\n",
" [ 164., 162.],\n",
" [ 165., 162.],\n",
" [ 166., 162.],\n",
" [ 167., 162.],\n",
" [ 168., 162.],\n",
" [ 169., 162.],\n",
" [ 170., 162.],\n",
" [ 171., 162.],\n",
" [ 172., 162.],\n",
" [ 173., 162.],\n",
" [ 174., 162.],\n",
" [ 175., 162.],\n",
" [ 176., 162.],\n",
" [ 177., 162.],\n",
" [ 178., 162.],\n",
" [ 179., 162.],\n",
" [ 180., 162.],\n",
" [ 181., 162.],\n",
" [ 182., 162.],\n",
" [ 183., 162.],\n",
" [ 184., 162.],\n",
" [ 185., 162.],\n",
" [ 186., 162.],\n",
" [ 187., 162.],\n",
" [ 188., 162.],\n",
" [ 189., 162.],\n",
" [ 190., 162.],\n",
" [ 191., 162.],\n",
" [ 192., 162.],\n",
" [ 193., 162.],\n",
" [ 194., 162.],\n",
" [ 195., 162.],\n",
" [ 196., 162.],\n",
" [ 197., 162.],\n",
" [ 198., 162.],\n",
" [ 199., 162.],\n",
" [ 200., 162.],\n",
" [ 201., 162.],\n",
" [ 202., 162.],\n",
" [ 203., 162.],\n",
" [ 204., 162.],\n",
" [ 205., 162.],\n",
" [ 206., 162.],\n",
" [ 207., 162.],\n",
" [ 208., 162.],\n",
" [ 209., 162.],\n",
" [ 210., 162.],\n",
" [ 211., 162.],\n",
" [ 212., 162.],\n",
" [ 213., 162.],\n",
" [ 214., 162.],\n",
" [ 215., 162.],\n",
" [ 216., 162.],\n",
" [ 217., 162.],\n",
" [ 218., 162.],\n",
" [ 219., 162.],\n",
" [ 220., 162.],\n",
" [ 221., 162.],\n",
" [ 222., 162.],\n",
" [ 223., 162.],\n",
" [ 224., 162.],\n",
" [ 225., 162.],\n",
" [ 226., 162.],\n",
" [ 227., 162.],\n",
" [ 228., 162.],\n",
" [ 229., 162.],\n",
" [ 230., 162.],\n",
" [ 231., 162.],\n",
" [ 232., 162.],\n",
" [ 233., 162.],\n",
" [ 234., 162.],\n",
" [ 235., 162.],\n",
" [ 236., 162.],\n",
" [ 237., 162.],\n",
" [ 238., 162.],\n",
" [ 239., 162.],\n",
" [ 240., 162.],\n",
" [ 241., 162.],\n",
" [ 242., 162.],\n",
" [ 243., 162.],\n",
" [ 244., 162.],\n",
" [ 245., 162.],\n",
" [ 246., 162.],\n",
" [ 247., 162.],\n",
" [ 248., 162.],\n",
" [ 249., 162.],\n",
" [ 250., 162.],\n",
" [ 251., 162.],\n",
" [ 252., 162.],\n",
" [ 253., 162.],\n",
" [ 254., 162.],\n",
" [ 255., 162.],\n",
" [ 256., 162.],\n",
" [ 257., 162.],\n",
" [ 258., 162.],\n",
" [ 259., 162.],\n",
" [ 260., 162.],\n",
" [ 261., 162.],\n",
" [ 262., 162.],\n",
" [ 263., 162.],\n",
" [ 264., 162.],\n",
" [ 265., 162.],\n",
" [ 266., 162.],\n",
" [ 267., 162.],\n",
" [ 268., 162.],\n",
" [ 269., 162.],\n",
" [ 270., 162.],\n",
" [ 271., 162.],\n",
" [ 272., 162.],\n",
" [ 273., 162.],\n",
" [ 274., 162.],\n",
" [ 275., 162.],\n",
" [ 276., 162.],\n",
" [ 277., 162.],\n",
" [ 278., 162.],\n",
" [ 279., 162.],\n",
" [ 280., 162.],\n",
" [ 281., 162.],\n",
" [ 282., 162.],\n",
" [ 283., 162.],\n",
" [ 284., 162.],\n",
" [ 285., 162.],\n",
" [ 286., 162.],\n",
" [ 287., 162.],\n",
" [ 288., 162.],\n",
" [ 289., 162.],\n",
" [ 290., 162.],\n",
" [ 291., 162.],\n",
" [ 292., 162.],\n",
" [ 293., 162.],\n",
" [ 294., 162.],\n",
" [ 295., 162.],\n",
" [ 296., 162.],\n",
" [ 297., 162.],\n",
" [ 298., 162.],\n",
" [ 299., 162.],\n",
" [ 300., 162.],\n",
" [ 301., 162.],\n",
" [ 302., 162.],\n",
" [ 303., 162.],\n",
" [ 304., 162.],\n",
" [ 305., 162.],\n",
" [ 306., 162.],\n",
" [ 307., 162.],\n",
" [ 308., 162.],\n",
" [ 309., 162.],\n",
" [ 310., 162.],\n",
" [ 311., 162.],\n",
" [ 312., 162.],\n",
" [ 313., 162.],\n",
" [ 314., 162.],\n",
" [ 315., 162.],\n",
" [ 316., 162.],\n",
" [ 317., 162.],\n",
" [ 318., 162.],\n",
" [ 319., 162.],\n",
" [ 320., 162.],\n",
" [ 321., 162.],\n",
" [ 322., 162.],\n",
" [ 323., 162.],\n",
" [ 324., 162.],\n",
" [ 325., 162.],\n",
" [ 326., 162.],\n",
" [ 327., 162.],\n",
" [ 328., 162.],\n",
" [ 329., 162.],\n",
" [ 330., 162.],\n",
" [ 331., 162.],\n",
" [ 332., 162.],\n",
" [ 333., 162.],\n",
" [ 334., 162.],\n",
" [ 335., 162.],\n",
" [ 336., 162.],\n",
" [ 337., 162.],\n",
" [ 338., 162.],\n",
" [ 339., 162.],\n",
" [ 340., 162.],\n",
" [ 341., 162.],\n",
" [ 342., 162.],\n",
" [ 343., 162.],\n",
" [ 344., 162.],\n",
" [ 345., 162.],\n",
" [ 346., 162.],\n",
" [ 347., 162.],\n",
" [ 348., 162.],\n",
" [ 349., 162.],\n",
" [ 350., 162.],\n",
" [ 351., 162.],\n",
" [ 352., 162.],\n",
" [ 353., 162.],\n",
" [ 354., 162.],\n",
" [ 355., 162.],\n",
" [ 356., 162.],\n",
" [ 357., 162.],\n",
" [ 358., 162.],\n",
" [ 359., 162.],\n",
" [ 360., 162.],\n",
" [ 361., 162.],\n",
" [ 362., 162.],\n",
" [ 363., 162.],\n",
" [ 364., 162.],\n",
" [ 365., 162.],\n",
" [ 366., 162.],\n",
" [ 367., 162.],\n",
" [ 368., 162.],\n",
" [ 369., 162.],\n",
" [ 370., 162.],\n",
" [ 371., 162.],\n",
" [ 372., 162.],\n",
" [ 373., 162.],\n",
" [ 374., 162.],\n",
" [ 375., 162.],\n",
" [ 376., 162.],\n",
" [ 377., 162.],\n",
" [ 378., 162.],\n",
" [ 379., 162.],\n",
" [ 380., 162.],\n",
" [ 381., 162.],\n",
" [ 382., 162.],\n",
" [ 383., 162.],\n",
" [ 384., 162.],\n",
" [ 385., 162.],\n",
" [ 386., 162.],\n",
" [ 387., 162.],\n",
" [ 388., 162.],\n",
" [ 389., 162.],\n",
" [ 390., 162.],\n",
" [ 391., 162.],\n",
" [ 392., 162.],\n",
" [ 393., 162.],\n",
" [ 394., 162.],\n",
" [ 395., 162.],\n",
" [ 396., 162.],\n",
" [ 397., 162.],\n",
" [ 398., 162.],\n",
" [ 399., 162.],\n",
" [ 400., 162.],\n",
" [ 401., 162.],\n",
" [ 402., 162.],\n",
" [ 403., 162.],\n",
" [ 404., 162.],\n",
" [ 405., 162.],\n",
" [ 406., 162.],\n",
" [ 407., 162.],\n",
" [ 408., 162.],\n",
" [ 409., 162.],\n",
" [ 410., 162.],\n",
" [ 411., 162.],\n",
" [ 412., 162.]])\n",
"Coordinates:\n",
" * x_y (x_y) <U1 u'x' u'y'\n",
" * idx (idx) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ...\n",
"Attributes:\n",
" pivot_point: (207, 162)\n",
" angle: 90.0\n",
"\n",
"\n",
"<xarray.DataArray u'P_xy' (idx: 323, x_y: 2)>\n",
"array([[ 0., 162.],\n",
" [ 1., 162.],\n",
" [ 2., 162.],\n",
" [ 3., 162.],\n",
" [ 4., 162.],\n",
" [ 5., 162.],\n",
" [ 6., 162.],\n",
" [ 7., 162.],\n",
" [ 8., 162.],\n",
" [ 9., 162.],\n",
" [ 10., 162.],\n",
" [ 11., 162.],\n",
" [ 12., 162.],\n",
" [ 13., 162.],\n",
" [ 14., 162.],\n",
" [ 15., 162.],\n",
" [ 16., 162.],\n",
" [ 17., 162.],\n",
" [ 18., 162.],\n",
" [ 19., 162.],\n",
" [ 20., 162.],\n",
" [ 21., 162.],\n",
" [ 22., 162.],\n",
" [ 23., 162.],\n",
" [ 24., 162.],\n",
" [ 25., 162.],\n",
" [ 26., 162.],\n",
" [ 27., 162.],\n",
" [ 28., 162.],\n",
" [ 29., 162.],\n",
" [ 30., 162.],\n",
" [ 31., 162.],\n",
" [ 32., 162.],\n",
" [ 33., 162.],\n",
" [ 34., 162.],\n",
" [ 35., 162.],\n",
" [ 36., 162.],\n",
" [ 37., 162.],\n",
" [ 38., 162.],\n",
" [ 39., 162.],\n",
" [ 40., 162.],\n",
" [ 41., 162.],\n",
" [ 42., 162.],\n",
" [ 43., 162.],\n",
" [ 44., 162.],\n",
" [ 45., 162.],\n",
" [ 46., 162.],\n",
" [ 47., 162.],\n",
" [ 48., 162.],\n",
" [ 49., 162.],\n",
" [ 50., 162.],\n",
" [ 51., 162.],\n",
" [ 52., 162.],\n",
" [ 53., 162.],\n",
" [ 54., 162.],\n",
" [ 55., 162.],\n",
" [ 56., 162.],\n",
" [ 57., 162.],\n",
" [ 58., 162.],\n",
" [ 59., 162.],\n",
" [ 60., 162.],\n",
" [ 61., 162.],\n",
" [ 62., 162.],\n",
" [ 63., 162.],\n",
" [ 64., 162.],\n",
" [ 65., 162.],\n",
" [ 66., 162.],\n",
" [ 67., 162.],\n",
" [ 68., 162.],\n",
" [ 69., 162.],\n",
" [ 70., 162.],\n",
" [ 71., 162.],\n",
" [ 72., 162.],\n",
" [ 73., 162.],\n",
" [ 74., 162.],\n",
" [ 75., 162.],\n",
" [ 76., 162.],\n",
" [ 77., 162.],\n",
" [ 78., 162.],\n",
" [ 79., 162.],\n",
" [ 80., 162.],\n",
" [ 81., 162.],\n",
" [ 82., 162.],\n",
" [ 83., 162.],\n",
" [ 84., 162.],\n",
" [ 85., 162.],\n",
" [ 86., 162.],\n",
" [ 87., 162.],\n",
" [ 88., 162.],\n",
" [ 89., 162.],\n",
" [ 90., 162.],\n",
" [ 91., 162.],\n",
" [ 92., 162.],\n",
" [ 93., 162.],\n",
" [ 94., 162.],\n",
" [ 95., 162.],\n",
" [ 96., 162.],\n",
" [ 97., 162.],\n",
" [ 98., 162.],\n",
" [ 99., 162.],\n",
" [ 100., 162.],\n",
" [ 101., 162.],\n",
" [ 102., 162.],\n",
" [ 103., 162.],\n",
" [ 104., 162.],\n",
" [ 105., 162.],\n",
" [ 106., 162.],\n",
" [ 107., 162.],\n",
" [ 108., 162.],\n",
" [ 109., 162.],\n",
" [ 110., 162.],\n",
" [ 111., 162.],\n",
" [ 112., 162.],\n",
" [ 113., 162.],\n",
" [ 114., 162.],\n",
" [ 115., 162.],\n",
" [ 116., 162.],\n",
" [ 117., 162.],\n",
" [ 118., 162.],\n",
" [ 119., 162.],\n",
" [ 120., 162.],\n",
" [ 121., 162.],\n",
" [ 122., 162.],\n",
" [ 123., 162.],\n",
" [ 124., 162.],\n",
" [ 125., 162.],\n",
" [ 126., 162.],\n",
" [ 127., 162.],\n",
" [ 128., 162.],\n",
" [ 129., 162.],\n",
" [ 130., 162.],\n",
" [ 131., 162.],\n",
" [ 132., 162.],\n",
" [ 133., 162.],\n",
" [ 134., 162.],\n",
" [ 135., 162.],\n",
" [ 136., 162.],\n",
" [ 137., 162.],\n",
" [ 138., 162.],\n",
" [ 139., 162.],\n",
" [ 140., 162.],\n",
" [ 141., 162.],\n",
" [ 142., 162.],\n",
" [ 143., 162.],\n",
" [ 144., 162.],\n",
" [ 145., 162.],\n",
" [ 146., 162.],\n",
" [ 147., 162.],\n",
" [ 148., 162.],\n",
" [ 149., 162.],\n",
" [ 150., 162.],\n",
" [ 151., 162.],\n",
" [ 152., 162.],\n",
" [ 153., 162.],\n",
" [ 154., 162.],\n",
" [ 155., 162.],\n",
" [ 156., 162.],\n",
" [ 157., 162.],\n",
" [ 158., 162.],\n",
" [ 159., 162.],\n",
" [ 160., 162.],\n",
" [ 161., 162.],\n",
" [ 162., 162.],\n",
" [ 163., 162.],\n",
" [ 164., 162.],\n",
" [ 165., 162.],\n",
" [ 166., 162.],\n",
" [ 167., 162.],\n",
" [ 168., 162.],\n",
" [ 169., 162.],\n",
" [ 170., 162.],\n",
" [ 171., 162.],\n",
" [ 172., 162.],\n",
" [ 173., 162.],\n",
" [ 174., 162.],\n",
" [ 175., 162.],\n",
" [ 176., 162.],\n",
" [ 177., 162.],\n",
" [ 178., 162.],\n",
" [ 179., 162.],\n",
" [ 180., 162.],\n",
" [ 181., 162.],\n",
" [ 182., 162.],\n",
" [ 183., 162.],\n",
" [ 184., 162.],\n",
" [ 185., 162.],\n",
" [ 186., 162.],\n",
" [ 187., 162.],\n",
" [ 188., 162.],\n",
" [ 189., 162.],\n",
" [ 190., 162.],\n",
" [ 191., 162.],\n",
" [ 192., 162.],\n",
" [ 193., 162.],\n",
" [ 194., 162.],\n",
" [ 195., 162.],\n",
" [ 196., 162.],\n",
" [ 197., 162.],\n",
" [ 198., 162.],\n",
" [ 199., 162.],\n",
" [ 200., 162.],\n",
" [ 201., 162.],\n",
" [ 202., 162.],\n",
" [ 203., 162.],\n",
" [ 204., 162.],\n",
" [ 205., 162.],\n",
" [ 206., 162.],\n",
" [ 207., 162.],\n",
" [ 208., 162.],\n",
" [ 209., 162.],\n",
" [ 210., 162.],\n",
" [ 211., 162.],\n",
" [ 212., 162.],\n",
" [ 213., 162.],\n",
" [ 214., 162.],\n",
" [ 215., 162.],\n",
" [ 216., 162.],\n",
" [ 217., 162.],\n",
" [ 218., 162.],\n",
" [ 219., 162.],\n",
" [ 220., 162.],\n",
" [ 221., 162.],\n",
" [ 222., 162.],\n",
" [ 223., 162.],\n",
" [ 224., 162.],\n",
" [ 225., 162.],\n",
" [ 226., 162.],\n",
" [ 227., 162.],\n",
" [ 228., 162.],\n",
" [ 229., 162.],\n",
" [ 230., 162.],\n",
" [ 231., 162.],\n",
" [ 232., 162.],\n",
" [ 233., 162.],\n",
" [ 234., 162.],\n",
" [ 235., 162.],\n",
" [ 236., 162.],\n",
" [ 237., 162.],\n",
" [ 238., 162.],\n",
" [ 239., 162.],\n",
" [ 240., 162.],\n",
" [ 241., 162.],\n",
" [ 242., 162.],\n",
" [ 243., 162.],\n",
" [ 244., 162.],\n",
" [ 245., 162.],\n",
" [ 246., 162.],\n",
" [ 247., 162.],\n",
" [ 248., 162.],\n",
" [ 249., 162.],\n",
" [ 250., 162.],\n",
" [ 251., 162.],\n",
" [ 252., 162.],\n",
" [ 253., 162.],\n",
" [ 254., 162.],\n",
" [ 255., 162.],\n",
" [ 256., 162.],\n",
" [ 257., 162.],\n",
" [ 258., 162.],\n",
" [ 259., 162.],\n",
" [ 260., 162.],\n",
" [ 261., 162.],\n",
" [ 262., 162.],\n",
" [ 263., 162.],\n",
" [ 264., 162.],\n",
" [ 265., 162.],\n",
" [ 266., 162.],\n",
" [ 267., 162.],\n",
" [ 268., 162.],\n",
" [ 269., 162.],\n",
" [ 270., 162.],\n",
" [ 271., 162.],\n",
" [ 272., 162.],\n",
" [ 273., 162.],\n",
" [ 274., 162.],\n",
" [ 275., 162.],\n",
" [ 276., 162.],\n",
" [ 277., 162.],\n",
" [ 278., 162.],\n",
" [ 279., 162.],\n",
" [ 280., 162.],\n",
" [ 281., 162.],\n",
" [ 282., 162.],\n",
" [ 283., 162.],\n",
" [ 284., 162.],\n",
" [ 285., 162.],\n",
" [ 286., 162.],\n",
" [ 287., 162.],\n",
" [ 288., 162.],\n",
" [ 289., 162.],\n",
" [ 290., 162.],\n",
" [ 291., 162.],\n",
" [ 292., 162.],\n",
" [ 293., 162.],\n",
" [ 294., 162.],\n",
" [ 295., 162.],\n",
" [ 296., 162.],\n",
" [ 297., 162.],\n",
" [ 298., 162.],\n",
" [ 299., 162.],\n",
" [ 300., 162.],\n",
" [ 301., 162.],\n",
" [ 302., 162.],\n",
" [ 303., 162.],\n",
" [ 304., 162.],\n",
" [ 305., 162.],\n",
" [ 306., 162.],\n",
" [ 307., 162.],\n",
" [ 308., 162.],\n",
" [ 309., 162.],\n",
" [ 310., 162.],\n",
" [ 311., 162.],\n",
" [ 312., 162.],\n",
" [ 313., 162.],\n",
" [ 314., 162.],\n",
" [ 315., 162.],\n",
" [ 316., 162.],\n",
" [ 317., 162.],\n",
" [ 318., 162.],\n",
" [ 319., 162.],\n",
" [ 320., 162.],\n",
" [ 321., 162.],\n",
" [ 322., 162.]])\n",
"Coordinates:\n",
" * x_y (x_y) <U1 u'x' u'y'\n",
" * idx (idx) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ...\n",
"Attributes:\n",
" start_point: (0, 162)\n",
" end_point: (-1, 162)\n",
"\n",
"\n",
"<xarray.DataArray u'P_2dxy' (Time: 2, bottom_top: 55, xy: 323)>\n",
"array([[[ 3167.0234375 , 3151.203125 , 3129.890625 , ...,\n",
" 1585.2734375 , 1635.03125 , 1629.5234375 ],\n",
" [ 3165.59375 , 3140.640625 , 3120.1875 , ...,\n",
" 1586.25 , 1633.4140625 , 1623.125 ],\n",
" [ 3146.46875 , 3124.3125 , 3105.953125 , ...,\n",
" 1571.5234375 , 1615.1171875 , 1610.8828125 ],\n",
" ..., \n",
" [ 47.16455078, 44.47119141, 44.27294922, ...,\n",
" 18.95068359, 19.76757812, 19.65283203],\n",
" [ 26.86279297, 24.75195312, 24.64208984, ...,\n",
" 10.53710938, 10.97021484, 10.92431641],\n",
" [ 9.92041016, 7.88720703, 7.86523438, ...,\n",
" 3.37207031, 3.5078125 , 3.48535156]],\n",
"\n",
" [[ 3167.0234375 , 3151.203125 , 3129.890625 , ...,\n",
" 1585.2734375 , 1635.03125 , 1629.5234375 ],\n",
" [ 3165.59375 , 3140.640625 , 3120.1875 , ...,\n",
" 1586.25 , 1633.4140625 , 1623.125 ],\n",
" [ 3146.46875 , 3124.3125 , 3105.953125 , ...,\n",
" 1571.5234375 , 1615.1171875 , 1610.8828125 ],\n",
" ..., \n",
" [ 47.16455078, 44.47119141, 44.27294922, ...,\n",
" 18.95068359, 19.76757812, 19.65283203],\n",
" [ 26.86279297, 24.75195312, 24.64208984, ...,\n",
" 10.53710938, 10.97021484, 10.92431641],\n",
" [ 9.92041016, 7.88720703, 7.86523438, ...,\n",
" 3.37207031, 3.5078125 , 3.48535156]]], dtype=float32)\n",
"Coordinates:\n",
" * Time (Time) datetime64[ns] 2010-06-13T21:00:00 2010-06-13T21:00:00\n",
" * bottom_top (bottom_top) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...\n",
" datetime (Time) datetime64[ns] 2010-06-13T21:00:00 2010-06-13T21:00:00\n",
" xy_loc (xy) object CoordPair(x=0.0, y=162.0) ...\n",
" * xy (xy) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ...\n",
"Attributes:\n",
" description: perturbation pressure\n",
" units: Pa\n",
" Orientation: (0.0,162.0) to (322.0,162.0)\n",
"\n",
"\n",
"<xarray.DataArray u'P_z' (Time: 2, z: 6)>\n",
"array([[ 1398.91162109, 1371.33605957, 1342.515625 , 1284.37878418,\n",
" 1155.76074219, 611.89489746],\n",
" [ 1398.91162109, 1371.33605957, 1342.515625 , 1284.37878418,\n",
" 1155.76074219, 611.89489746]], dtype=float32)\n",
"Coordinates:\n",
" * Time (Time) datetime64[ns] 2010-06-13T21:00:00 2010-06-13T21:00:00\n",
" * z (z) float32 100.0 200.0 300.0 500.0 1000.0 5000.0\n",
"Attributes:\n",
" _FillValue: 9.96920996839e+36\n",
" missing_value: 9.96920996839e+36\n",
" description: perturbation pressure\n",
" units: Pa\n",
"\n",
"\n"
]
}
],
"outputs": [],
"source": [
"import numpy as np\n",
"from wrf import (ALL_TIMES, npvalues, Constants, getvar, extract_vars, destagger, \n",

Loading…
Cancel
Save