mirror of
https://github.com/wassname/simpeg.git
synced 2026-08-16 11:28:21 +08:00
537 lines
39 KiB
Plaintext
537 lines
39 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 5,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Efficiency Warning: Interpolation will be slow, use setup.py!\n",
|
|
"\n",
|
|
" python setup.py build_ext --inplace\n",
|
|
" \n",
|
|
"Populating the interactive namespace from numpy and matplotlib\n"
|
|
]
|
|
},
|
|
{
|
|
"name": "stderr",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"WARNING: pylab import has clobbered these variables: ['linalg']\n",
|
|
"`%matplotlib` prevents importing * from pylab and numpy\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"from SimPEG import *\n",
|
|
"import simpegDCIP as DC\n",
|
|
"%pylab inline"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 6,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"cs = 25.\n",
|
|
"hx = [(cs,7, -1.3),(cs,21),(cs,7, 1.3)]\n",
|
|
"hy = [(cs,7, -1.3),(cs,21),(cs,7, 1.3)]\n",
|
|
"hz = [(cs,7, -1.3),(cs,20)]"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 7,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"mesh = Mesh.TensorMesh([hx, hy, hz], 'CCN')"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 8,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"blk1 = Utils.ModelBuilder.getIndicesBlock(np.r_[-50, 75, -50], np.r_[75, -50, -150], mesh.gridCC)\n",
|
|
"sighalf = 1e-3\n",
|
|
"sigma = np.ones(mesh.nC)*sighalf\n",
|
|
"sigma[blk1] = 1e-1\n",
|
|
"sigmahomo = np.ones(mesh.nC)*sighalf"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 33,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"(<matplotlib.collections.QuadMesh at 0x1b15fda0>,\n",
|
|
" <matplotlib.lines.Line2D at 0x1b170240>)"
|
|
]
|
|
},
|
|
"execution_count": 33,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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\nyP8BTq1WovUUtLAAAAAASUVORK5CYII=\n",
|
|
"text/plain": [
|
|
"<matplotlib.figure.Figure at 0x1a117c50>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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\n/wGi1ygb+o1aFwAAAABJRU5ErkJggg==\n",
|
|
"text/plain": [
|
|
"<matplotlib.figure.Figure at 0x1b0d3a58>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"mesh.plotSlice(sigma, normal='X', grid=True)\n",
|
|
"mesh.plotSlice(sigma, ind=22, normal='Z', grid=True)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 10,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"xtemp = np.linspace(-150, 150, 21)\n",
|
|
"ytemp = np.linspace(-150, 150, 21)\n",
|
|
"xyz_rxP = Utils.ndgrid(xtemp-10., ytemp, np.r_[0.])\n",
|
|
"xyz_rxN = Utils.ndgrid(xtemp+10., ytemp, np.r_[0.])\n",
|
|
"xyz_rxM = Utils.ndgrid(xtemp, ytemp, np.r_[0.])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 11,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"[<matplotlib.lines.Line2D at 0x15a0fda0>]"
|
|
]
|
|
},
|
|
"execution_count": 11,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAVIAAAFRCAYAAAAmQSVBAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAHAlJREFUeJzt3X2sHOd13/HfuW+kwkr30o1Fy3oxRYVMLCSAjFQvjhyY\njnlV9gKxxCKJYySxk6qBAcEvQJNCdqwiFzWg1nUtp43hIK5tWXETMYoLKkxoWqRSNkjLlozaSFZB\ny6QKXtFkJNFUSMoiI9630z92Lu+Qmp2d4ZmZfeH3Ayy0c57zPM/cxepwZ57ZWXN3AQAu3VC3dwAA\n+h2FFACCKKQAEEQhBYAgCikABFFIASCIQoq+Zma/amZ/ldr+gZmt7d4e4XJEIUXPM7N3mdleMztl\nZq+Y2X83s3+UlevuV7r7TMXzf8TMnjKz183s4Yvabk7a/i7Zv/9hZu+qcn70vpFu7wCQx8yukvTn\nkj4s6TFJKyT9tKRzDe7GMUmflvSPJV2R0fbzkmaS7Y9I+oaktzS1c+g+PpGi122Q5O7+x97yurvv\ndvdns5LNbNHM1iXPrzCzz5nZTPJp8a/MbGXSdkfyKfekmT1tZu9utwPuvs3d/1TSKxltp939sLe+\nIjgsaVHSixX83egjfCJFr/uupAUz+5qkrZL2ufvJgn3/vaS3S3qnpJcl3SZp0cyuVetT7i+7+7fM\nbJOk/2JmP+buJ3LGs7YNZqckrZL0t5J+puD+YUDwiRQ9zd1/IOldklzSf5J03Mz+1MyuzutnZkOS\nfk3Sx939RXdfdPf/5e6zkn5Z0jfd/VvJHE9KekrSVKfdydnPCUnjahX7PzGztkUXg4dCip7n7s+5\n+6+5+/WSflzSWyX9ToduPyxppaT/l9H2Nkk/nxzWnzSzk5LuVOfzmrnF0d3PSvqEWqcjfqLDWBgg\nFFL0FXf/rqRH1CqoeU5Iel3Sj2S0HZH0dXdfnXpc6e7/rtP0BXZxWK3/r84WyMWAoJCip5nZj5rZ\nv0jOa8rMrpf0AUn/M6+fuy9K+qqkh8zsGjMbNrN3mtmYpP8s6WfN7K4kvtLMNi7NkbEPw8ki1Yik\nYTNbYWbDSdsmM7slyblK0kOSvuvuz1f1GqD3UUjR634g6XZJ+8zsNbUK6Lcl/UbS7rrwk2L6+W9K\nelbSX6u14v5vJA25+1FJd0v6LUnH1fqE+htq///Dv1LrE+b9ap1f/XtJn0raJiQ9KumUWgtjb5b0\n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\n",
|
|
"text/plain": [
|
|
"<matplotlib.figure.Figure at 0x15c45550>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"fig, ax = plt.subplots(1,1, figsize = (5,5))\n",
|
|
"mesh.plotSlice(sigma, grid=True, ax = ax)\n",
|
|
"ax.plot(xyz_rxP[:,0],xyz_rxP[:,1], 'w.')\n",
|
|
"ax.plot(xyz_rxN[:,0],xyz_rxN[:,1], 'r.', ms = 3)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 22,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"1323\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"rx = DC.RxDipole(xyz_rxP, xyz_rxN)\n",
|
|
"tx = DC.SrcDipole([rx], [-200, 0, -12.5],[+200, 0, -12.5])\n",
|
|
"print xyz_rxP.size"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 13,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"survey = DC.SurveyDC([tx])\n",
|
|
"problem = DC.ProblemDC_CC(mesh)\n",
|
|
"problem.pair(survey)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 11,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"try:\n",
|
|
" from pymatsolver import MumpsSolver\n",
|
|
" problem.Solver = MumpsSolver\n",
|
|
"except Exception, e:\n",
|
|
" problem.Solver = SolverLU"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 10,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [
|
|
{
|
|
"ename": "ImportError",
|
|
"evalue": "No module named pymatsolver",
|
|
"output_type": "error",
|
|
"traceback": [
|
|
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
|
"\u001b[1;31mImportError\u001b[0m Traceback (most recent call last)",
|
|
"\u001b[1;32m<ipython-input-10-d6799536a06f>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[0mpymatsolver\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mMumpsSolver\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
|
|
"\u001b[1;31mImportError\u001b[0m: No module named pymatsolver"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"from pymatsolver import MumpsSolver"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 18,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"problem.Solver = SolverLU\n",
|
|
"\n",
|
|
"data = survey.dpred(sigmahomo)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 19,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"441"
|
|
]
|
|
},
|
|
"execution_count": 19,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"# Plot pseudo section\n",
|
|
"for ii in range(data):\n",
|
|
" \n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 14,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"u1 = problem.fields(sigma)\n",
|
|
"u2 = problem.fields(sigmahomo)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 15,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"Msig1 = Utils.sdiag(1./(mesh.aveF2CC.T*(1./sigma)))\n",
|
|
"Msig2 = Utils.sdiag(1./(mesh.aveF2CC.T*(1./sigmahomo)))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 16,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"j1 = Msig1*mesh.cellGrad*u1[tx, 'phi_sol']\n",
|
|
"j2 = Msig2*mesh.cellGrad*u2[tx, 'phi_sol']"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 17,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"# us = u1-u2\n",
|
|
"# js = j1-j2"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 2,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [
|
|
{
|
|
"ename": "NameError",
|
|
"evalue": "name 'mesh' is not defined",
|
|
"output_type": "error",
|
|
"traceback": [
|
|
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
|
"\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)",
|
|
"\u001b[1;32m<ipython-input-2-cb76a57fca1d>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mmesh\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mplotSlice\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mmesh\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0maveF2CCV\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mj1\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mvType\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m'CCv'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mnormal\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m'Y'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mview\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m'vec'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mstreamOpts\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;33m{\u001b[0m\u001b[1;34m\"density\"\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;36m3\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m\"color\"\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;34m'w'\u001b[0m\u001b[1;33m}\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 2\u001b[0m \u001b[1;31m#xlim(-300, 300)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;31m#ylim(-300, 0)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
|
|
"\u001b[1;31mNameError\u001b[0m: name 'mesh' is not defined"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"mesh.plotSlice(mesh.aveF2CCV*j1, vType='CCv', normal='Y', view='vec', streamOpts={\"density\":3, \"color\":'w'})\n",
|
|
"#xlim(-300, 300)\n",
|
|
"#ylim(-300, 0)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 23,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [
|
|
{
|
|
"ename": "NameError",
|
|
"evalue": "name 'js' 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-23-575f23801c4a>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mmesh\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplotSlice\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmesh\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0maveF2CCV\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mjs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mvType\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'CCv'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnormal\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'Y'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mview\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'vec'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstreamOpts\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m{\u001b[0m\u001b[0;34m\"density\"\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"color\"\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m'w'\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mxlim\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m300\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m300\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mylim\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m300\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
|
|
"\u001b[0;31mNameError\u001b[0m: name 'js' is not defined"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"mesh.plotSlice(mesh.aveF2CCV*js, vType='CCv', normal='Y', view='vec', streamOpts={\"density\":3, \"color\":'w'})\n",
|
|
"xlim(-300, 300)\n",
|
|
"ylim(-300, 0)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"a = np.random.randn(3)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"print (a.reshape([1,-1])).repeat(3, axis = 0)\n",
|
|
"print (a.reshape([1,-1])).repeat(3, axis = 0).sum(axis=1)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"def DChalf(txlocP, txlocN, rxloc, sigma, I=1.):\n",
|
|
" rp = (txlocP.reshape([1,-1])).repeat(rxloc.shape[0], axis = 0)\n",
|
|
" rn = (txlocN.reshape([1,-1])).repeat(rxloc.shape[0], axis = 0)\n",
|
|
" rP = np.sqrt(((rxloc-rp)**2).sum(axis=1))\n",
|
|
" rN = np.sqrt(((rxloc-rn)**2).sum(axis=1))\n",
|
|
" return I/(sigma*2.*np.pi)*(1/rP-1/rN)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"data_analP = DChalf(np.r_[-200, 0, 0.],np.r_[+200, 0, 0.], xyz_rxP, sighalf)\n",
|
|
"data_analN = DChalf(np.r_[-200, 0, 0.],np.r_[+200, 0, 0.], xyz_rxN, sighalf)\n",
|
|
"data_anal = data_analP-data_analN"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"Data_anal = data_anal.reshape((21, 21), order = 'F')\n",
|
|
"Data = data.reshape((21, 21), order = 'F')\n",
|
|
"X = xyz_rxM[:,0].reshape((21, 21), order = 'F')\n",
|
|
"Y = xyz_rxM[:,1].reshape((21, 21), order = 'F')"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"fig, ax = plt.subplots(1,2, figsize = (12, 5))\n",
|
|
"vmin = np.r_[data, data_anal].min()\n",
|
|
"vmax = np.r_[data, data_anal].max()\n",
|
|
"dat0 = ax[0].contourf(X, Y, Data, 60, vmin = vmin, vmax = vmax)\n",
|
|
"dat1 = ax[1].contourf(X, Y, Data_anal, 60, vmin = vmin, vmax = vmax)\n",
|
|
"cb0 = plt.colorbar(dat1, orientation = 'horizontal', ax = ax[0])\n",
|
|
"cb1 = plt.colorbar(dat1, orientation = 'horizontal', ax = ax[1])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": []
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": []
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": []
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": []
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": []
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": []
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 2",
|
|
"language": "python",
|
|
"name": "python2"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 2
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython2",
|
|
"version": "2.7.10"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 0
|
|
}
|