MagForwrad secondary and total

This commit is contained in:
SEOGI KANG committed 2014-02-23 11:57:51 -08:00
1 parent 35d132f52b
commit 2e6164c62e
3 files changed
+444 -290

No files matched your search

+133 -182
View File
@@ -12,7 +12,7 @@
"collapsed": false,
"input": [
"from SimPEG import *\n",
"from test_boundary import spheremodel, MagSphereAnalFun\n",
"from MagAnalytics import spheremodel, MagSphereAnalFun, CongruousMagBC\n",
"%pylab inline"
],
"language": "python",
@@ -32,14 +32,7 @@
"stream": "stdout",
"text": [
"\n",
"Populating the interactive namespace from numpy and matplotlib"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n"
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
@@ -49,77 +42,40 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Step:1 Generating mesh and operators"
"# Writing magnetostatic problem with secondary field formulation\n",
"\n",
"## - Here we focus on cell-centered system with FVM-Weak form"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step:1 Generating mesh and operators"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"hxind = ((10,25,1.3),(41, 12.5),(5,25,1.3))\n",
"hyind = ((10,25,1.3),(41, 12.5),(5,25,1.3))\n",
"hzind = ((10,25,1.3),(40, 12.5),(1,25,1.3))\n",
"hxind = ((5,25,1.3),(41, 12.5),(5,25,1.3))\n",
"hyind = ((5,25,1.3),(41, 12.5),(5,25,1.3))\n",
"hzind = ((5,25,1.3),(40, 12.5),(1,25,1.3))\n",
"hx, hy, hz = Utils.meshTensors(hxind, hyind, hzind)\n",
"M3 = Mesh.TensorMesh([hx, hy, hz], [-sum(hx)/2,-sum(hy)/2,-sum(hz)/2])"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 46
"prompt_number": 2
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Step2: Compute Boundary indicies and set $\\mathbf{B}_{sBC}$"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"BC = [['neumann', 'neumann'], ['neumann', 'neumann'], ['neumann', 'neumann']]\n",
"indxd, indxu, indyd, indyu, indzd, indzu = M3.faceBoundaryInd\n",
"ind = np.r_[(indxd | indxu), (indyd | indyu), (indzd | indzu)]"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 47
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Box = 1 # Primary field in x-direction (background)\n",
"Boy = 0 # Primary field in y-direction (background)\n",
"Boz = 0 # Primary field in z-direction (background)\n",
"B0 = np.r_[Box*np.ones(np.prod(M3.nFx)), Boy*np.ones(np.prod(M3.nFy)), Boz*np.ones(np.prod(M3.nFz))]\n",
"Bbcx = np.zeros(np.prod(M3.nFx))\n",
"Bbcy = np.zeros(np.prod(M3.nFy))\n",
"Bbcz = np.zeros(np.prod(M3.nFz))\n",
"## Step2: Generating model $\\mu$\n",
"\n",
"Bbcx[indxd] = 0\n",
"Bbcx[indxu] = 0\n",
"Bbcy[indyd] = Boy\n",
"Bbcy[indyu] = Boy\n",
"Bbcz[indzd] = Boz\n",
"Bbcz[indzu] = Boz\n",
"\n",
"Bbc = np.r_[Bbcx, Bbcy, Bbcz]"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 48
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Step3: Generating model $\\mu$\n",
"\n",
"$\\mu = \\mu_0(1+\\chi)$"
"### $\\mu = \\mu_0(1+\\chi)$"
]
},
{
@@ -134,78 +90,82 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 49
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"sph_ind = spheremodel(M3, 0, 0, 0, 100)\n",
"sph_ind = spheremodel(M3, 0., 0., 0., 100)\n",
"chi[sph_ind] = chiblk\n",
"mu = (1.+chi)*mu0"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 50
"prompt_number": 4
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Additional: Congrous sphere method (for boudary condition)"
"## Step3: Compute Boundary condition $\\mathbf{B}_{sBC}$ using congruous sphere method"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"V = M3.vol[sph_ind].sum()\n",
"gamma = 1/V*(chiblk*M3.vol).sum()\n",
"mom = 1/mu0*gamma*V/(1+gamma/3)"
"BC = [['neumann', 'neumann'], ['neumann', 'neumann'], ['neumann', 'neumann']]\n",
"Box = 1 # Primary field in x-direction (background)\n",
"Boy = 0 # Primary field in y-direction (background)\n",
"Boz = 0 # Primary field in z-direction (background)\n",
"B0 = np.r_[Box*np.ones(np.prod(M3.nFx)), Boy*np.ones(np.prod(M3.nFy)), Boz*np.ones(np.prod(M3.nFz))]"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 72
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"4109375.0\n"
]
}
],
"prompt_number": 70
"prompt_number": 5
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# figsize(10,10)\n",
"# M3.plotGrid()"
"Bbc = CongruousMagBC(M3, np.array([Box, Boy, Boz]), chi)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 6
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"figsize(10,10)\n",
"M3.plotGrid()"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stderr",
"text": [
"C:\\Users\\SEOGI\\AppData\\Local\\Enthought\\Canopy\\App\\appdata\\canopy-1.0.1.1189.win-x86_64\\lib\\site-packages\\matplotlib\\lines.py:483: RuntimeWarning: invalid value encountered in greater_equal\n",
" return np.alltrue(x[1:]-x[0:-1]>=0)\n"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x231e8588>"
"<matplotlib.figure.Figure at 0xa21a860>"
]
}
],
"prompt_number": 51
"prompt_number": 7
},
{
"cell_type": "code",
@@ -219,54 +179,52 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 52,
"prompt_number": 8,
"text": [
"<matplotlib.collections.QuadMesh at 0x1f145d68>"
"<matplotlib.collections.QuadMesh at 0xa646390>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x1eef3e48>"
"<matplotlib.figure.Figure at 0xa18f8d0>"
]
}
],
"prompt_number": 52
"prompt_number": 8
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Step4: get system matrix $\\mathbf{A}$ and right handside\n",
"#### 4.1 Backgrounds: Weak formulation for Poisson equation with cell-centered system\n",
"## Step4: get system matrix $\\mathbf{A}$ and right handside\n",
"### 4.1 Backgrounds: Weak formulation for Poisson equation with cell-centered system\n",
"\n",
"$$\\frac{1}{\\mu}\\mathbf{B}_s = (\\frac{1}{\\mu}_0-\\frac{1}{\\mu})\\mathbf{B}_0+\\nabla\\phi_s$$\n",
"### $$\\frac{1}{\\mu}\\mathbf{B}_s = (\\frac{1}{\\mu}_0-\\frac{1}{\\mu})\\mathbf{B}_0+\\nabla\\phi_s$$\n",
"\n",
"$$\\nabla \\cdot \\mathbf{B}_s = 0 $$\n",
"### $$\\nabla \\cdot \\mathbf{B}_s = 0 $$\n",
"\n",
"\n",
"$$ (\\mathbf{B}_s\\cdot{\\bar{\\mathbf{n}}})_{\\partial\\Omega} = B_{sBC}$$\n",
"### $$ (\\mathbf{B}_s\\cdot{\\bar{\\mathbf{n}}})_{\\partial\\Omega} = B_{sBC}$$\n",
"\n",
"In discretized form we have \n",
"### In discretized form we have \n",
"\n",
"$$\\mathbf{diag(v)}\\mathbf{D}\\mathbf{P}_{in}^T \\mathbf{P}_{in}\\mathbf{B}_s + \\mathbf{diag(v)}\\mathbf{D} \\mathbf{P}_{out}^T B_{sBC}=0$$\n",
"### $$\\mathbf{diag(v)}\\mathbf{D}\\mathbf{P}_{in}^T \\mathbf{P}_{in}\\mathbf{B}_s + \\mathbf{diag(v)}\\mathbf{D} \\mathbf{P}_{out}^T B_{sBC}=0$$\n",
"\n",
"$$\\mathbf{M}^f_{\\frac{1}{\\mu}}\\mathbf{B}_s = \\mathbf{M}^f_{\\frac{1}{\\mu_0}}\\mathbf{B}_0-\\mathbf{M}^f_{\\frac{1}{\\mu}}\\mathbf{B}_0\n",
"-\\mathbf{P}_{in}\\mathbf{P}_{in}^T\\mathbf{D}^T\\mathbf{diag(v)}\\phi_s$$\n",
"### $$\\mathbf{M}^f_{\\frac{1}{\\mu}}\\mathbf{B}_s = \\mathbf{M}^f_{\\frac{1}{\\mu_0}}\\mathbf{B}_0-\\mathbf{M}^f_{\\frac{1}{\\mu}}\\mathbf{B}_0 -\\mathbf{P}_{in}\\mathbf{P}_{in}^T\\mathbf{D}^T\\mathbf{diag(v)}\\phi_s$$\n",
"\n",
"$$ \\mathbf{Div} = \\mathbf{diag(v)}\\mathbf{D}\\mathbf{P}_{in}^T \\mathbf{P}_{in}$$\n",
"### $$ \\mathbf{Div} = \\mathbf{diag(v)}\\mathbf{D}\\mathbf{P}_{in}^T \\mathbf{P}_{in}$$\n",
"\n",
"$$ \\mathbf{Div}\\mathbf{B}_s + \\mathbf{diag(v)}\\mathbf{D} \\mathbf{P}_{out}^T B_{sBC}=0$$\n",
"### $$ \\mathbf{Div}\\mathbf{B}_s + \\mathbf{diag(v)}\\mathbf{D} \\mathbf{P}_{out}^T B_{sBC}=0$$\n",
"\n",
"$$\\mathbf{B}_s = (\\mathbf{M}^f_{\\frac{1}{\\mu}})^{-1}\\mathbf{M}^f_{\\frac{1}{\\mu_0}}\\mathbf{B}_0-\\mathbf{B}_0\n",
"-(\\mathbf{M}^f_{\\frac{1}{\\mu}})^{-1}\\mathbf{Div}^T\\phi_s$$\n",
"### $$\\mathbf{B}_s = (\\mathbf{M}^f_{\\frac{1}{\\mu}})^{-1}\\mathbf{M}^f_{\\frac{1}{\\mu_0}}\\mathbf{B}_0-\\mathbf{B}_0 -(\\mathbf{M}^f_{\\frac{1}{\\mu}})^{-1}\\mathbf{Div}^T\\phi_s$$\n",
"\n",
"\n",
"$$\\mathbf{A} = - \\mathbf{Div}(\\mathbf{M}^f_{\\frac{1}{\\mu}})^{-1}\\mathbf{Div}^{T}$$\n",
"### $$\\mathbf{A} = - \\mathbf{Div}(\\mathbf{M}^f_{\\frac{1}{\\mu}})^{-1}\\mathbf{Div}^{T}$$\n",
"\n",
"$$\\mathbf{rhs} = - \\mathbf{Div}(\\mathbf{M}^f_{\\frac{1}{\\mu}})^{-1}\\mathbf{M}^f_{\\frac{1}{\\mu_0}}\\mathbf{B}_0 + \\mathbf{Div}\\mathbf{B}_0-\\mathbf{diag}(v)\\mathbf{D} \\mathbf{P}_{out}^T B_{sBC}$$"
"### $$\\mathbf{rhs} = - \\mathbf{Div}(\\mathbf{M}^f_{\\frac{1}{\\mu}})^{-1}\\mathbf{M}^f_{\\frac{1}{\\mu_0}}\\mathbf{B}_0 + \\mathbf{Div}\\mathbf{B}_0-\\mathbf{diag}(v)\\mathbf{D} \\mathbf{P}_{out}^T B_{sBC}$$"
]
},
{
@@ -280,12 +238,12 @@
"MfmuI = Utils.sdiag(1/M3.getFaceInnerProduct(mu = 1/mu).diagonal())\n",
"Mfmu0 = 1/mu0*M3.getFaceInnerProduct()\n",
"A = -Div*MfmuI*Div.T\n",
"rhs = -Div*MfmuI*Mfmu0*B0 + Div*B0 - Mc*Dface*Pout.T*Bbc[ind]"
"rhs = -Div*MfmuI*Mfmu0*B0 + Div*B0 - Mc*Dface*Pout.T*Bbc"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 53
"prompt_number": 9
},
{
"cell_type": "code",
@@ -300,11 +258,11 @@
"output_type": "stream",
"stream": "stdout",
"text": [
"(397851, 397851) (397851, 130050)\n"
"(366231, 366231) (366231, 119646)\n"
]
}
],
"prompt_number": 54
"prompt_number": 10
},
{
"cell_type": "code",
@@ -323,7 +281,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 55
"prompt_number": 11
},
{
"cell_type": "code",
@@ -338,7 +296,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 56
"prompt_number": 12
},
{
"cell_type": "code",
@@ -364,7 +322,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 57
"prompt_number": 13
},
{
"cell_type": "code",
@@ -384,11 +342,11 @@
"output_type": "stream",
"stream": "stdout",
"text": [
"Wall time: 1.31 s\n"
"Wall time: 1.33 s\n"
]
}
],
"prompt_number": 58
"prompt_number": 14
},
{
"cell_type": "code",
@@ -405,11 +363,11 @@
"stream": "stdout",
"text": [
"0\n",
"130050\n"
"119646\n"
]
}
],
"prompt_number": 59
"prompt_number": 15
},
{
"cell_type": "code",
@@ -428,11 +386,11 @@
"stream": "stdout",
"text": [
"0\n",
"9.95677949419e-07\n"
"8.8645586939e-07\n"
]
}
],
"prompt_number": 60
"prompt_number": 16
},
{
"cell_type": "markdown",
@@ -454,56 +412,57 @@
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x1f138828>"
"<matplotlib.figure.Figure at 0x9e95b70>"
]
}
],
"prompt_number": 61
"prompt_number": 19
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Step4: Compute analytic function (sphere in whole space)\n",
"Outside of the sphere $(r>R)$\n",
"## Step4: Compute analytic function (sphere in whole space)\n",
"\n",
"$$\\mathbf{H}_1 = H_0 \\hat{x} + H_0\\frac{R}{r^5}\\frac{\\mu_2-\\mu_1}{\\mu_2+2\\mu_1}[(2x^2-y^2-z^2)\\hat{x}+(3xy)\\hat{y}+(3xz)\\hat{z}]$$\n",
"### Outside of the sphere $(r>R)$\n",
"\n",
"$$H_{x1} = H_0 + H_0\\frac{R}{r^5}\\frac{\\mu_2-\\mu_1}{\\mu_2+2\\mu_1}(2x^2-y^2-z^2)$$\n",
"### $$\\mathbf{H}_1 = H_0 \\hat{x} + H_0\\frac{R}{r^5}\\frac{\\mu_2-\\mu_1}{\\mu_2+2\\mu_1}[(2x^2-y^2-z^2)\\hat{x}+(3xy)\\hat{y}+(3xz)\\hat{z}]$$\n",
"\n",
"$$H_{y1} = H_0\\frac{R}{r^5}\\frac{\\mu_2-\\mu_1}{\\mu_2+2\\mu_1}(3xy)$$\n",
"### $$H_{x1} = H_0 + H_0\\frac{R}{r^5}\\frac{\\mu_2-\\mu_1}{\\mu_2+2\\mu_1}(2x^2-y^2-z^2)$$\n",
"\n",
"$$H_{z1} = H_0\\frac{R}{r^5}\\frac{\\mu_2-\\mu_1}{\\mu_2+2\\mu_1}(3xz)$$\n",
"### $$H_{y1} = H_0\\frac{R}{r^5}\\frac{\\mu_2-\\mu_1}{\\mu_2+2\\mu_1}(3xy)$$\n",
"\n",
"Inside of the sphere $(r\\le R)$\n",
"### $$H_{z1} = H_0\\frac{R}{r^5}\\frac{\\mu_2-\\mu_1}{\\mu_2+2\\mu_1}(3xz)$$\n",
"\n",
"$$\\mathbf{H}_2 = H_0\\frac{3\\mu_1}{\\mu_2+2\\mu_1}\\hat{x}$$\n",
"### Inside of the sphere $(r\\le R)$\n",
"\n",
"$$H_{x2} = H_0\\frac{3\\mu_1}{\\mu_2+2\\mu_1}$$"
"### $$\\mathbf{H}_2 = H_0\\frac{3\\mu_1}{\\mu_2+2\\mu_1}\\hat{x}$$\n",
"\n",
"### $$H_{x2} = H_0\\frac{3\\mu_1}{\\mu_2+2\\mu_1}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Step5: Projection to receiver plane"
"## Step5: Projection to receiver locations"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"xr = np.linspace(-400, 400, 41)\n",
"yr = np.linspace(-400, 400, 41)\n",
"xr = np.linspace(-300, 300, 41)\n",
"yr = np.linspace(-300, 300, 41)\n",
"X, Y = np.meshgrid(xr, yr)\n",
"Z = np.ones((size(xr), size(yr)))*150"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 62
"prompt_number": 20
},
{
"cell_type": "code",
@@ -517,7 +476,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 63
"prompt_number": 21
},
{
"cell_type": "code",
@@ -538,7 +497,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 64
"prompt_number": 22
},
{
"cell_type": "code",
@@ -558,21 +517,21 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 65,
"prompt_number": 23,
"text": [
"[<matplotlib.lines.Line2D at 0x2b71c908>]"
"[<matplotlib.lines.Line2D at 0x9f5e4a8>]"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x1eed9438>"
"<matplotlib.figure.Figure at 0xa5c0908>"
]
}
],
"prompt_number": 65
"prompt_number": 23
},
{
"cell_type": "code",
@@ -592,34 +551,34 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 66,
"prompt_number": 24,
"text": [
"<matplotlib.colorbar.Colorbar instance at 0x00000000236DAD88>"
"<matplotlib.colorbar.Colorbar instance at 0x0000000012B67688>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "iVBORw0KGgoAAAANSUhEUgAAAmYAAANTCAYAAAAE7NEgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsvX2sJUd5//mt7nPuHSMcw8TgLDLXkRXvvBBC/DIeayH2\nQMCMsGBMBEkcWYpiK5ixiB0pJpEFP2kgoMgSUgz+mbGj1SisHIc/QIY/IuEdkx2MN/KMyZpsYo+z\nDlrH+UF4MxszL/fec7qr9o+u6n766aeqq/ucc2fuTD+jmu7bp7q7urv609/nqepqZYwxGGywwQYb\nbLDBBhvsjFtypgsw2GCDDTbYYIMNNlhhgzAbbLDBBhtssMEGO0tsEGaDDTbYYIMNNthgZ4kNwmyw\nwQYbbLDBBhvsLLFBmA022GCDDTbYYIOdJTYIs8EG22S2detWKKU6pa1bt57pYg822GCDAQBeM/Ar\naGoYLmOwwTaXKaVwoOM6BwAMt/pggw12NlhXhh3A+cWv0ZkuwGCDDdbdhht3sMEG28w2MMxvw7kZ\nbLBNaOMzXYDBBhtssBlsYJjfBmE22GCb0IYbd7DBBtvMNjDMb8O5GWywTWiDtznYYINtZhsY5rdB\nmA022Ca04cYdbLDBNrMNDPPbMFzGYINtQht3TJI9+eST2LFjB6644go88MADYp57770Xl19+Oa6+\n+mq88MILreueOHEC+/btw8rKCm6++WacPHkSAPCzn/0M73znO3HhhRfij/7oj2r72LNnD7Zv344r\nr7wSV155JX7605/2OCODDTbYZrJZ+QWcuwwbhNlgg21CG3VMkt199914+OGH8cQTT+DBBx9swOTY\nsWP49re/je985zu45557cM8993jXfeWVVwAABw8exMrKCl588UVceumleOihhwAAW7ZswWc+8xl8\n7nOfa5RDKYVHH30Uzz77LJ599llcfPHFM5yZwQYbbDPYrPwCzl2GDcJssME2oc0aMXv11VcBANdf\nfz0uu+wy3HjjjTh69Ggtz9GjR/GhD30IW7duxS233ILjx49713366acBFCC8/fbbsby8jNtuu63c\n5mte8xq8/e1vx/Lysng859MYRYMNNtjsEbNzmWGDMBtssE1obR7m/wPgayRxe+aZZ7B9+/by7507\nd5Zgcnbs2DHs3Lmz/PsNb3gDvve97wXXpb9t374dx44dq21TKSUez+///u/jPe95D770pS+1H/xg\n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 truncated
"text": [
"<matplotlib.figure.Figure at 0x1f133518>"
"<matplotlib.figure.Figure at 0xa5c0dd8>"
]
}
],
"prompt_number": 66
"prompt_number": 24
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"fig, axes = subplots(1,3, figsize=(14,5))\n",
"fig, axes = subplots(1,3, figsize=(16,5))\n",
"epsx = np.linalg.norm(Utils.mkvc(Bxr))*1e-6\n",
"epsy = np.linalg.norm(Utils.mkvc(Byr))*1e-6\n",
"epsz = np.linalg.norm(Utils.mkvc(Bzr))*1e-6\n",
"id = 21\n",
"axes[0].plot(Y[:,id], Bxra[:,id], 'b', Y[:,id], Bxr[:,id], 'r.')\n",
"axes[1].plot(Y[:,id], Byra[:,id], 'b', Y[:,id], Byr[:,id], 'r.')\n",
"axes[2].plot(Y[:,id], Bzra[:,id], 'b', Y[:,id], Bzr[:,id], 'r.')\n",
"axes[0].plot(Y[:,id], Bxra[:,id], 'b', Y[:,id], Bxr[:,id], 'r.'); axes[0].set_title('$B^s_x$', fontsize = 16)\n",
"axes[1].plot(Y[:,id], Byra[:,id], 'b', Y[:,id], Byr[:,id], 'r.'); axes[1].set_title('$B^s_y$', fontsize = 16)\n",
"axes[2].plot(Y[:,id], Bzra[:,id], 'b', Y[:,id], Bzr[:,id], 'r.'); axes[2].set_title('$B^s_z$', fontsize = 16)\n",
"print X[1,id]"
],
"language": "python",
@@ -629,19 +588,19 @@
"output_type": "stream",
"stream": "stdout",
"text": [
"20.0\n"
"15.0\n"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAA1IAAAE1CAYAAADtSNHMAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XtcVHX++PEX3kjSnFAzTcEw4tJWgoxoKlKWqZS6pZmb\n5nd1G7OLruVmbm3pb7c2t9o01xB3v/TdLdHcNdvaUkEL0FpmMCmVi6CBppUXSoXyiuf3xwdG7nKZ\nmTPnzPv5ePAohjln3jNwjud9Pu/P++OnaZqGEEIIIYQQQogma6N3AEIIIYQQQghhNJJICSGEEEII\nIUQzSSIlhBBCCCGEEM0kiZQQQgghhBBCNJMkUkIIIYQQQgjRTJJICSGEEEIIIUQztTqRyszMJCIi\ngtDQUJYtW1bvcxYsWEBISAgDBgygoKDgktuWlZUxbtw4goKCGD9+POXl5c6fvf7664SGhhIZGcm2\nbdtaG74QwsM8ec74/vvvufXWW+ncuTOPP/54jdeIj48nPDycqKgooqKiOHbsmBverRDCnTx9DQJw\n4MABOnXqxKuvvup8LD8/n+joaEJCQnjmmWdc/C6FEF5La6X+/ftrGRkZWklJiRYWFqYdPXq0xs/t\ndrs2ZMgQrbS0VEtJSdESEhIa3PbYsWOapmna4sWLtccee0w7ffq09uijj2ovv/yypmmadvjwYS0s\nLEzbv3+/lp6erkVFRbU2fCGEh3nynPHjjz9q27Zt01asWKE99thjNV4nPj5e+/zzz938boUQ7uTJ\n80mVe++9V7vvvvu0V155xfnY6NGjtTVr1mjHjh3ThgwZomVnZ7vxXQshvEWrRqROnDgBQFxcHMHB\nwYwcORK73V7jOXa7nQkTJhAYGMjkyZPJz89vcNusrCwAHA4HM2bMwN/fn+nTpzv3abfbGTVqFEFB\nQQwfPhxN0ygrK2vNWxBCeJCnzxkBAQEMGTIEf3//euPRZD1yIQzL0+cTgPfee4+QkBAiIyNrvM6e\nPXuYNGkSXbt25Z577qkThxDCnFqVSGVnZxMeHu78PjIy0nkiquJwOGqccLp3786+ffsa3bb6z8LD\nw3E4HIA6IUZERDi3CQsLc/6sip+fn3zJl3x54Zce54zq54X6TJs2jTvuuIO///3v9f5c789MvuRL\nvup+VfH0+aS8vJw//elPLFy4sMZr7N27l6uuuqrROPT+zORLvuSr/q/WcnuzCU3T6tz1bSjwqseb\nc5e4vn1Vvaanvp5//nlTv568pnleT6/XbI76tnHlOaPKqlWr2L17N3/7299Yvnw527dvbzQes/5u\n5DXN8Xq+8prNVd92LT2fLFy4kLlz5xIQEFDjObWf39D2Zv/d+Mpr+sJ79JXP1RValUhZrdYaEzdz\nc3MZNGhQjefExsaSl5fn/P7o0aOEhIQQExNTZ9vY2FjnfquG3/Pz87FarfXuq6CgwPkzIYT38/Q5\nozG9evUCIDg4mClTprB+/fqWvzEhhMd5+nzicDh46qmnuPbaa1m6dCkvvvgib7zxBqGhoRw+fNi5\nr7y8vDpxCCHMqVWJVJcuXQDV+aakpIS0tDTniahKbGws69ato7S0lJSUFGdpnsViaXDb2NhYkpOT\nOXXqFMnJyc4T0sCBA9m0aRMHDhwgPT2dNm3a0Llz59a8BSGEB3n6nFGl9p2niooKZ5e+kydPsn79\nesaMGeP6NyyEcBtPn08yMzMpLi6muLiYX//61zzzzDM88sgjgCoBXLNmDceOHWP9+vV14hBCmJTW\nSunp6Vp4eLjWr18/benSpZqmadqKFSu0FStWOJ8zf/58rW/fvlp0dLSWl5fX6LaapmknT57Uxo4d\nq/Xp00cbN26cVlZW5vzZkiVLtH79+mkRERFaZmZmnXhc8Jaa7ZNPPjH168lrmuf19HrN6selp88Z\nwcHBWmBgoNapUyetd+/eWn5+vvbjjz9qAwYM0G666SZt6NCh2uLFiy8Ztyf4yt+DL7ymL7xHPV6z\n9jHp6fNJlYULF2qvvvqq8/vc3FwtKipK69u3r/b0009fMm5P8IW/Bz1e0xfeox6vqfe1SUv5Ve7I\nNPz8/FxW9yiEcA2jHpdGjVsIszLqMWnUuIUwM1ccl25vNiGEEEIIIYQQZiOJlBBCCCGEEEI0kyRS\nQgghhBBCCNFMkkgJIYQQQgghRDNJIiWEEEIIIYQQzSSJlBBCCCGEEEI0Uzu9A3AHqxXGjIGEBIiJ\ngTaSLgrhcT/+CB9/DB99pHckQgghhBCuZ8oU4+WX4aef4H/+B3r2hGnTYO1aKC/XOzIhzO3AAVi2\nDEaPVsfea6/BddfpHZUQQgghhOuZfkHe4mJ1R/w//4HPPoNRo+D++9WF3mWX6RioECZx+DD885+w\nejXs2QN3361Gg++4A7p0Uc8x6mKURo1bCLMy6jFp1LiFMDNXHJemT6SqO3YM1q2DNWvgyy9h3Dj4\n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 truncated
"png": "iVBORw0KGgoAAAANSUhEUgAAA8EAAAFECAYAAAAHqjxCAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl4VOX5//H3BCQSWcYALiwJBmIWXEhgEpAtIiCCAlpS\nUaO00A4girXiQrVWf19tpWpBEIG0jVVhxCgFqxZJwCaASAKICiQQRJaCCxC2gCDb+f1xkikhJECW\nOTNnPq/r8pJM5py5zyR55tzn3M/9OAzDMBAREREREREJAiFWByAiIiIiIiLiK0qCRUREREREJGgo\nCRYREREREZGgoSRYREREREREgoaSYBEREREREQkaSoJFREREREQkaCgJFhERERERkaBR3+oARGpq\n2rRpvPfee+Tm5nL33XfTokULAL766iucTidTpkyhVatW3ud/9913ZGVl0axZM+rXr0///v2tCl1E\nREREzqBzO6lrSoIl4I0dO5Zjx46xY8cOZs2aVe573bp1Y9iwYSxdutT72Jw5c2jRogXt27dn/vz5\nGihFJCDopFBEgoXO7aSuqRxabCE3N5fu3btXePzaa69l48aN5R674447mD9/PgMGDGDYsGG+ClFE\npEbGjh3LoEGDaNeuHbNmzWLSpElMmjSJxYsX8/3331cYz+bMmUO9evVo3749X3zxhUVRi4hUj87t\npC4pCZaAZxgGy5Yto1u3buUeP3HiBAsXLmTQoEHexxYvXsysWbN47733eO6559i8ebOvwxURqTad\nFIpIMNC5ndQ1JcES8NauXcvevXvLDZSHDx8mNTWVa665hilTpngfj4mJ4aKLLuI///kPJ0+e5Kab\nbrIiZBGRC6aTQhEJFjq3k7qmOcES8HJzc2nUqBG5ubksWbKEQ4cOkZmZSc+ePfnzn/+Mw+HwPrd1\n69Y89thjFkYrIlI9lZ0UpqWlnfWkcPXq1TopFJGApHM7qWsOwzAMq4MQqYmhQ4dSv3595syZU+7x\n2267jcaNG+PxeCyKTESk9kydOpUnn3zSewJY1UmhiEgg07md1DWVQ0vAW7p0Kb17967w+I033sg7\n77zDjz/+aEFUIiK1Kzc3lwEDBjB69GhGjRrFI488Ql5eHhs2bOCee+6xOjwRkVqjczupa0qCJaAV\nFBSwe/fus5b65ebmkpycTFhYmAWRiYjULp0Uikgw0Lmd+ILmBEtAy83NpU2bNrRr167c41OnTuWz\n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 truncated
"text": [
"<matplotlib.figure.Figure at 0x22f6a828>"
"<matplotlib.figure.Figure at 0x12b87908>"
]
}
],
"prompt_number": 67
"prompt_number": 25
},
{
"cell_type": "code",
@@ -651,9 +610,9 @@
"epsx = np.linalg.norm(Utils.mkvc(Bxr))*1e-6\n",
"epsy = np.linalg.norm(Utils.mkvc(Byr))*1e-6\n",
"epsz = np.linalg.norm(Utils.mkvc(Bzr))*1e-6\n",
"axes[0].plot(Y[:,id], abs((Bxr[:,id]-Bxra[:,id])/(Bxra[:,id]+epsx)), 'r.')\n",
"axes[1].plot(Y[:,id], abs((Byr[:,id]-Byra[:,id])/(Byra[:,id]+epsy)), 'r.')\n",
"axes[2].plot(Y[:,id], abs((Bzr[:,id]-Bzra[:,id])/(Bzra[:,id]+epsz)), 'r.')"
"axes[0].plot(Y[:,1], abs((Bxtter[:,1]-Bxra[:,1])/(Bxra[:,1]+epsx)), 'r.')\n",
"axes[1].plot(Y[:,1], abs((Byr[:,1]-Byra[:,1])/(Byra[:,1]+epsy)), 'r.')\n",
"axes[2].plot(Y[:,1], abs((Bzr[:,1]-Bzra[:,1])/(Bzra[:,1]+epsz)), 'r.')"
],
"language": "python",
"metadata": {},
@@ -661,41 +620,33 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 68,
"prompt_number": 34,
"text": [
"[<matplotlib.lines.Line2D at 0x1eeea898>]"
"[<matplotlib.lines.Line2D at 0x1971ad68>]"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x111e0390>"
"<matplotlib.figure.Figure at 0x198a90b8>"
]
}
],
"prompt_number": 68
"prompt_number": 34
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Thoughts\n",
"## Thoughts\n",
"\n",
"- It works well with non-uniform mesh!!\n",
"- Actual accuray is ~10% relative error in secondary fields. As we pad more we can get better accuracy, since we did not consider secondary field at the boudnary ($\\partial\\Omega$). \n",
"- Here, we can try primary secondary field approach to get better accuracy. \n",
"- In addition, we can use the congruous sphere method to handle this secondary fields at boundaries"
"### - Congruous sphere method works well, which means we need right boundary condition. \n",
"### - I am not sure for real situation when we have multiple bodies in our domain ... ?\n",
"### - Secondary field shows better accuracy than total field approach as expected\n",
"### - Anyway every piece works well for forward modeling!!"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
+136 -108
View File
@@ -12,7 +12,7 @@
"collapsed": false,
"input": [
"from SimPEG import *\n",
"from test_boundary import spheremodel, MagSphereAnalFun\n",
"from MagAnalytics import spheremodel, MagSphereAnalFun, CongruousMagBC, MagSphereAnalFunA\n",
"%pylab inline"
],
"language": "python",
@@ -22,19 +22,30 @@
"output_type": "stream",
"stream": "stdout",
"text": [
"Populating the interactive namespace from numpy and matplotlib\n"
"Warning: Python backend is being used for solver. Run setup.py from the command line.\n",
"Warning: mumps solver not available.\n",
"Warning: upgrade your scipy to 0.13.0"
]
},
{
"output_type": "stream",
"stream": "stderr",
"stream": "stdout",
"text": [
"WARNING: pylab import has clobbered these variables: ['axes', 'info', 'flag']\n",
"`%pylab --no-import-all` prevents importing * from pylab and numpy\n"
"\n",
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"prompt_number": 29
"prompt_number": 1
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Writing magnetostatic problem with total field formulation\n",
"\n",
"## - Here we focus on cell-centered system with FVM-Weak form"
]
},
{
"cell_type": "markdown",
@@ -47,16 +58,16 @@
"cell_type": "code",
"collapsed": false,
"input": [
"hxind = ((10,25,1.3),(41, 25),(10,25,1.3))\n",
"hyind = ((10,25,1.3),(41, 25),(10,25,1.3))\n",
"hzind = ((10,25,1.3),(40, 25),(10,25,1.3))\n",
"hxind = ((5,25,1.3),(41, 12.5),(5,25,1.3))\n",
"hyind = ((5,25,1.3),(41, 12.5),(5,25,1.3))\n",
"hzind = ((5,25,1.3),(40, 12.5),(1,25,1.3))\n",
"hx, hy, hz = Utils.meshTensors(hxind, hyind, hzind)\n",
"M3 = Mesh.TensorMesh([hx, hy, hz], [-sum(hx)/2,-sum(hy)/2,-sum(hz)/2])"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 30
"prompt_number": 2
},
{
"cell_type": "markdown",
@@ -76,7 +87,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 31
"prompt_number": 3
},
{
"cell_type": "code",
@@ -102,7 +113,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 32
"prompt_number": 4
},
{
"cell_type": "markdown",
@@ -125,7 +136,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 33
"prompt_number": 5
},
{
"cell_type": "code",
@@ -138,7 +149,18 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 34
"prompt_number": 6
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Bbc = Bbc[ind] + CongruousMagBC(M3, np.array([Box, Boy, Boz]), chi) "
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 7
},
{
"cell_type": "code",
@@ -150,16 +172,24 @@
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stderr",
"text": [
"C:\\Users\\SEOGI\\AppData\\Local\\Enthought\\Canopy\\App\\appdata\\canopy-1.0.1.1189.win-x86_64\\lib\\site-packages\\matplotlib\\lines.py:483: RuntimeWarning: invalid value encountered in greater_equal\n",
" return np.alltrue(x[1:]-x[0:-1]>=0)\n"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0xa514ed0>"
"<matplotlib.figure.Figure at 0x57d1828>"
]
}
],
"prompt_number": 35
"prompt_number": 8
},
{
"cell_type": "code",
@@ -173,21 +203,21 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 36,
"prompt_number": 9,
"text": [
"<matplotlib.collections.QuadMesh at 0xc576050>"
"<matplotlib.collections.QuadMesh at 0xaa7f390>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAmgAAAJWCAYAAADsn3uUAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XtcVHXi//HXDAMo3sVEBc1SNkVQMW/l9kXTzFjTUvK2\nq5T4y9u3TO2nW967aO6uW9nirrbeUpTU9VrpVuYlCemX4eY9XEUBQeOiQoLc5vcH6ySB1cqZ8Yy+\nnz14xJw55/D5vDnMvDlzBi12u92OiIiIiJiG9VYPQERERETKU0ETERERMRkVNBERERGTUUETERER\nMRkVNBERERGTUUETERERMRkVNBG5I6xZs4aOHTtSq1YtmjRpQnh4OHFxcQB8++23PPXUU9x1113U\nrVuXdu3a8eabb1JaWnqLRy0idyoVNBG57f35z39m4sSJTJ8+nQsXLpCSksL48ePZunUr//73v+nS\npQt33303hw8f5uLFi6xfv54DBw6Qm5t7q4cuIncoi/5QrYjczi5dukRAQAArVqxg4MCBFe7/3e9+\nx6VLl9i2bdstGJ2ISOV0Bk1Ebmvx8fEUFBTw5JNPVnr/zp07iYiIcPGoRER+mgqaiNzWsrKyaNCg\nAVZr5Q93WVlZNG7c2MWjEhH5aSpoInJb8/X1JTMz84YX/Pv6+nLu3DkXj0pE5KepoInIbe2BBx7A\n29ubTZs2VXp/r169+Mc//uHiUYmI/DQVNBG5rdWpU4dXXnmF8ePHs2XLFq5cuUJRURHbt29n6tSp\nzJkzhy+++IIpU6Zw/vx5AE6ePMnw4cO5dOnSLR69iNypVNBE5LY3adIk/vznP/Paa6/RsGFDmjVr\nxqJFi3jyySe59957iY+PJzk5mTZt2lC3bl0iIiLo1KkTtWrVutVDF5E7lP7MhoiIiIjJ6AyaiIiI\niMmooImIiIiYjAqaiIiIiMmooImIiIiYjO1WD+CXslgst3oIIiIiIr9YVd6H6TYFrczsWz0A07Db\nZwFgscy5xSP5ObuB7i77au6Ti2vdXC67ceX37la4lsvtZPbs2cyePftWD0Nugr537ulG37eqnlj6\nyZc4U1JS6NGjB23atCE4OJiFCxc6BhMQEEBoaCihoaFs377dsc28efMIDAykVatWfPzxx47lBw4c\nICQkhMDAQCZMmOBYfvXqVQYPHkxgYCBdu3blzJkzVZqQiIiIiLv7yYLm6enJm2++yZEjR9i/fz/R\n0dEcO3YMi8XCpEmTSExMJDExkcceewyAo0eP8v7773P06FF27NjBuHHjHKf3xo4dy9KlS0lKSiIp\nKYkdO3YAsHTpUnx9fUlKSmLixIlMnTrVyVMWERERMbefLGiNGjWiffv2ANSsWZPWrVuTlpYGVP66\n6pYtWxg6dCienp40b96cli1bkpCQQHp6Orm5uXTu3BmAESNGsHnzZgC2bt1KZGQkAAMHDmTnzp3G\nzU5MoPmtHoDctOa3egByE7p3736rhyA3Sd879+Ss79svvgYtOTmZxMREunbtSlxcHO+88w7vvfce\nHTt2ZMGCBdStW5dz587RtWtXxzYBAQGkpaXh6elJQECAY7m/v7+j6KWlpdG0adOywdhs1KlTh+zs\nbOrXr1/JKHZf93lz9ATiDprf6gHITWt+qwcgN0FP8u5L3zv3dO37tnv3bnbv3m3Yfn9RQcvLyyMi\nIoK3336bmjVrMnbsWGbOnAnAjBkzmDx5MkuXLjVsUDfW3QVfQ0REROS/071793Ile86cqr1Z7Wf/\nDlpRUREDBw7kd7/7HU888QQADRs2xGKxYLFYGDVqFF9++SVQdmYsJSXFsW1qaioBAQH4+/uTmppa\nYfm1bc6ePQtAcXExly5dusHZMxEREZE7w08WNLvdTlRUFEFBQbzwwguO5enp6Y7PN23aREhICAD9\n+vUjNjaWwsJCTp8+TVJSEp07d6ZRo0bUrl2bhIQE7HY7q1aton///o5tVq5cCcCGDRvo2bOn4ZMU\nERERcSc/+RJnXFwcq1evpm3btoSGhgIwd+5c1q5dy8GDB7FYLNxzzz0sXrwYgKCgIAYNGkRQUBA2\nm41FixY5/g7IokWLePrpp8nPzyc8PJw+ffoAEBUVxfDhwwkMDMTX15fY2FhnzldERETE9Cz2qvyZ\nWxcqK3qzb/UwTEN/kLVyyqVyyqVyt+MfqhURc7BYLFX6lwT0b3GKiIiImIwKmoiIiIjJqKCJiIiI\nmIwKmoiIiIjJqKCJiIiImIwKmoiIiIjJqKCJiIiImIwKmoiIiIjJqKCJiIiImIwKmoiIiIjJqKCJ\niIiImIwKmoiIiIjJqKCJiIiImIwKmoiIiIjJqKCJiIiImIwKmoiIiIjJqKCJiIiImIwKmoiIiIjJ\nqKCJiIiImIwKmoiIiIjJqKCJiIiImIwKmoiIiIjJqKCJiIiImIwKmoiIiIjJqKCJiIiImIwKmoiI\n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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0xc9469d0>"
"<matplotlib.figure.Figure at 0xa0f8ef0>"
]
}
],
"prompt_number": 36
"prompt_number": 9
},
{
"cell_type": "markdown",
@@ -249,31 +279,31 @@
"D = Mc*Dface*Pin.T*Pin\n",
"MfmuI = Utils.sdiag(1/M3.getFaceInnerProduct(mu = 1/mu).diagonal())\n",
"A = -D*MfmuI*D.T\n",
"rhs = -Mc*Dface*Pout.T*Bbc[ind]"
"rhs = -Mc*Dface*Pout.T*Bbc"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 37
"prompt_number": 10
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import petsc4py\n",
"import sys\n",
"from sys import getrefcount\n",
"petsc4py.init(sys.argv)\n",
"from petsc4py import PETSc\n",
"import PETScIO as IO\n",
"Apetsc = PETSc.Mat().createAIJ(size=A.shape,csr=(A.indptr, A.indices, A.data))\n",
"bpetsc = IO.arrayToVec(rhs)\n",
"xpetsc = IO.arrayToVec(0*rhs)"
"# import petsc4py\n",
"# import sys\n",
"# from sys import getrefcount\n",
"# petsc4py.init(sys.argv)\n",
"# from petsc4py import PETSc\n",
"# import PETScIO as IO\n",
"# Apetsc = PETSc.Mat().createAIJ(size=A.shape,csr=(A.indptr, A.indices, A.data))\n",
"# bpetsc = IO.arrayToVec(rhs)\n",
"# xpetsc = IO.arrayToVec(0*rhs)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 38
"prompt_number": 11
},
{
"cell_type": "code",
@@ -288,44 +318,33 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 39
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%time\n",
"ksp = PETSc.KSP().create()\n",
"pc = PETSc.PC().create()\n",
"ksp.setOperators(Apetsc)\n",
"ksp.setType(ksp.Type.BCGS)\n",
"pc = ksp.getPC()\n",
"pc.setType(pc.Type.SOR)\n",
"OptDB = PETSc.Options()\n",
"OptDB[\"ksp_rtol\"] = 1e-8\n",
"OptDB[\"pc_factor_levels\"] = 1\n",
"ksp.setFromOptions()\n",
"ksp.view()\n",
"ksp.solve(bpetsc, xpetsc)\n",
"print ksp.its# print ksp.its\n",
"phi = IO.vecToArray(xpetsc)\n",
"print np.linalg.norm(A*phi-rhs)/norm(rhs)"
"# %%time\n",
"# ksp = PETSc.KSP().create()\n",
"# pc = PETSc.PC().create()\n",
"# ksp.setOperators(Apetsc)\n",
"# ksp.setType(ksp.Type.BCGS)\n",
"# pc = ksp.getPC()\n",
"# pc.setType(pc.Type.SOR)\n",
"# OptDB = PETSc.Options()\n",
"# OptDB[\"ksp_rtol\"] = 1e-8\n",
"# OptDB[\"pc_factor_levels\"] = 1\n",
"# ksp.setFromOptions()\n",
"# ksp.view()\n",
"# ksp.solve(bpetsc, xpetsc)\n",
"# print ksp.its# print ksp.its\n",
"# phi = IO.vecToArray(xpetsc)\n",
"# print np.linalg.norm(A*phi-rhs)/norm(rhs)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"116\n",
"4.24430002044e-09\n",
"CPU times: user 1.65 s, sys: 0 ns, total: 1.65 s\n",
"Wall time: 1.66 s\n"
]
}
],
"prompt_number": 40
"outputs": [],
"prompt_number": 13
},
{
"cell_type": "code",
@@ -345,12 +364,11 @@
"output_type": "stream",
"stream": "stdout",
"text": [
"CPU times: user 2.13 s, sys: 0 ns, total: 2.13 s\n",
"Wall time: 2.13 s\n"
"Wall time: 1.58 s\n"
]
}
],
"prompt_number": 41
"prompt_number": 14
},
{
"cell_type": "code",
@@ -367,17 +385,17 @@
"stream": "stdout",
"text": [
"0\n",
"223260\n"
"119646\n"
]
}
],
"prompt_number": 42
"prompt_number": 15
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"B = MfmuI*(-D.T*phi)\n",
"B = -MfmuI*D.T*phi\n",
"rhsa = A*phi\n",
"print info\n",
"print np.linalg.norm(rhs-rhsa)/np.linalg.norm(rhs)"
@@ -390,11 +408,11 @@
"stream": "stdout",
"text": [
"0\n",
"9.47100435444e-07\n"
"7.65372604673e-07\n"
]
}
],
"prompt_number": 43
"prompt_number": 16
},
{
"cell_type": "markdown",
@@ -416,13 +434,13 @@
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAA7oAAAE/CAYAAABo5r8vAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlclPXe//HXMMMqLoHIqmJJuQCC+1KJW27pccXUtFLv\nbLHs1KmOZSfsnNZz/LV4tLvOnbtl5lFRUyvNXUNz31BMZXPcABUEEXB+f8CMMMwMA1wzDMPn2YNH\nzsw11/d9XXNdn7m+1zYqnU6nQwghhBBCCCGEcBIuNR1ACCGEEEIIIYRQknR0hRBCCCGEEEI4Feno\nCiGEEEIIIYRwKtLRFUIIIYQQQgjhVKSjK4QQQgghhBDCqUhHVwghhBBCCCGEU5GOrnBYoaGheHl5\nUb9+ferXr0+DBg24dOlSTccSQghFSa0TQtQFUuuEvUlHVzgslUrF+vXryc7OJjs7m5s3bxIQEFDT\nsYQQQlFS64QQdYHUOmFv0tEVtcr333/P/fffT3Z2NgAbN24kMDCQjIyMGk4mhBDKCA8PZ/369YbH\nBQUFNG7cmCNHjtRgKiGEUN60adMMR3jr16+Pq6srs2bNqulYwklIR1c4NJ1OV+bxmDFj6N69Oy+/\n/DIZGRlMmTKFb775Bl9f3xpKKIQQ1Ve61j311FMsXbrU8HjDhg0EBwfTrl27mogmhBCKMd6u+/e/\n/204wrtz507uu+8+hg0bVkPphLNR6YyXOCEcRGhoKBkZGWg0GgB69erFqlWruHHjBpGRkTRs2JAe\nPXrw5Zdf1nBSIYSoOuNa17lzZ/bs2YNWq8Xb25tRo0bRtWtX/vKXv9RwUiGEqDpz23UAV69epVOn\nTnzyySfExsbWZEzhRDQ1HUAIc1QqFfHx8fTu3bvM8w0bNmTUqFF8+umnhgIphBC1lalaN2DAAFau\nXMmwYcPYtGkTc+bMqcGEQghRfea26woKChg1ahRPPvmkdHKFouTUZVHrHD58mAULFjBu3Dheeuml\nmo4jhBCK05++/MMPP9C9e3cCAwNrOpIQQtjESy+9RKNGjfjHP/5R01GEk5GOrqhVbt++zZNPPsmH\nH37I/PnzSU9Pl1OXhRBOZ/jw4Rw8eJAvvviCiRMn1nQcIYSwia+++oodO3aUuS+BEEqRjq6oVWbM\nmEHz5s2ZOnUqbm5uLF26lJkzZ/LHH3/UdDQhhFCMh4cHI0aM4MKFC4wYMaKm4wghhE0sX76c8+fP\nExQUZLjz8kcffVTTsYSTkJtRCSGEEA7o73//O0lJSSxevLimowghhBC1jtyMSgghhHAwmZmZzJ8/\nnyVLltR0FCGEEKJWklOXhRBCCAfyn//8h2bNmjFw4EAefvjhmo4jhBBC1Epy6rIQQgghhBBCCKdi\n8YhuamoqvXr1om3btoSHh/PFF18AEBcXR0hICNHR0URHR7Nx40bDez788EPCwsJo1aoVP//8s+H5\nAwcOEBERQVhYGNOnTzc8n5+fz5gxYwgLC6Nr164kJycrPY1CCGGR1DohRF0gtU4IUafoLNBqtbpD\nhw7pdDqdLjs7W/fggw/qTp48qYuLi9PNnj273PAnTpzQtWvXTnfnzh3d+fPndQ888IDu7t27Op1O\np+vUqZMuISFBp9PpdAMHDtRt3LhRp9PpdHPnztU9//zzOp1Op1u+fLluzJgxJrMA8id/8id/5f6U\nILVO/uRP/hz9T2qd/Mmf/NWFPyVZvBlVQEAAAQEBAHh7e9O6dWvS09OhOEW54ePj4xk7diyurq6E\nhobSsmVLEhISaN68OdnZ2XTu3BmAiRMnsmbNGgYMGMDatWuZNWsWACNHjmTatGkWEsUxmzhLkRX1\nWklbOt27AKhUxTmVyPAT0L+KGew5D6zNYO30KJXB1uLi4oiLi7NLW/bgrNOjUqkUGZ+j1bq3dO9U\neVrUFFX5vQDv8T4Ab/M3RTJsj9tJz7hHaqz9qrCUYWfcdh6J62m3DLbmrLXBWUitK0+/bhWhrtZ6\nVt1aY9y21LrqZbA1Z60NzkLpWqdn9c2oLly4wKFDh+jatSsAc+bMoV27dkyePJnr168DcPHiRUJC\nQgzvCQkJIT09vdzzwcHBhsKanp5O06ZNAdBoNDRs2JDMzMzqT5kQQlSB1DohRF0gtU4I4eys6ujm\n5OQwatQoPv/8c7y9vXn++ec5f/48hw8fJjAwkNdee83WOUts4yeKjx6etVOLQgjHsW3bNuLi4gz/\nV5qj1LqdcdsNf8nbLtilTSGE45BaZ14R6mofzVVCEeoabV8IZ2DrWlfh7+gWFBQwcuRInnzySYYN\nGwZAkyZNDK9PmTKFIUOGAMV79FJTUw2vpaWlERISQnBwMGlpaeWe178nJSWFoKAgCgsLuXHjBj4+\nPmbSxNCfbZWdRof0QE0HUJizTU9MTExNR1CUs0xPTEwMMTExbNu2jZiYGMPpcUpwpFpnzelitUXz\nmGY1HUFRzWKa13QERTlLbdBzlumRWlf7SK1zbM5SG/ScZXpsWeuggiO6Op2OyZMn06ZNG1555RXD\n81qt1vDv1atXExERAcDQoUNZvnw5d+7c4fz58yQlJdG5c2cCAgJo0KABCQkJ6HQ6lixZwp/+9CfD\nexYtWgTAypUr6dOnj6IT6Kha1nQAhTnb9DhLAdGT6bFMap3thDrZxlLzmNCajqAoqQ2OTWpd7SG1\nzrFJbXBstpoei0d0d+/ezdKlS4mMjCQ6OhqADz74gO+++47Dhw+jUqlo0aIFX331FQBt2rQhNjaW\nNm3aoNFomDdvnuGi4nnz5vH000+Tl5fHoEGDGDBgAACTJ09mwoQJhIWF4evry/Lly20yoUIIYY7U\nOiFEXSC1TghRl1js6D788MPcvXu33PMDBw40+5633nqLt956q9zzHTp04NixY+Wed3d3Z8WKFdZk\nFUIIm3CWWlfT16wJIRybs9Q6IYSwhtV3XRZCCCGEEEIIIWoD6egKIYQQQgghhHAqFd51WQghRO3g\nCD+5UdPt1xTj6Tb+6ZG6Ol+EcFayTgvh+OSIrhBCCMXUxd+WtGaDty7OFyGcmazTQjg+6egKIYST\nkCMMQgghhBDFpKMrhBBCMXWxs23NkZ26OF+EEEKImiQdXSGEcBJyKl3NsXRNrnRyhXA+sl4L4fik\noyuEEEIxdbmzXYTa8AcYHgkhnE9drnVC1BbS0RVCCKEY6dgJIeoCqXVCOD7p6AohhJNwhA0vOcoh\nhKgLpNYJ4fjkd3SFEMLBVLXDquSGV3U6zUrkqOn2HSWDEEIIIapGjugKIYSTcIQjukIIIYQQjkA6\nukII4SQc4SiiI2QQQghbkx2LQjg+OXVZCCGEqCZLPy9k6nUhhBBC2JYc0RVCCCchRxgcl3w2Qggh\nhH1JR1cIIYRi6mKHTo7WClH3yHovhONzilOXp166xOpBg7hy8CCx27dz5MsvOb18OQBtnnqK/vPn\nl3vPyr59Sd261fBY5eJCx9dfp+0zz9CgeXPyb9zAOz6NqVPX2yVD/wULaDNxYrlhpuvA3/9fdpkH\nD40ZQ6c336RRWBgFt25xcdcudrzxBpyzahYokiF88mSip0+n0f33k3ftGsfnz+e3996zLoAQTu4N\nZrCERWi5yCSmsJ99HOMoAFFEM4wR5d6zgEWc47zhsQoVj9CD9rSnEQ3JJ59TJLKGtXbJMJLhRNHO\n5Lg/5BO7ZACIIJxHeQRffCiggAsk8xM/k0lWldo/zAkAooliBMPKvWcRCzhLsuFxB9rTnW74cB+3\nyOUAB9nKNqumXwhnN4M3WMQSLqJlCpPYx36OcgywvI6dL7XBokJFDx6hPe1pSCPyySeRU6xljV0y\nDGck7YgyOe5P+NAuGQDCieARHsUHXwooIJkL/MxPZJFptwzt6UA3unMfPuRyi4McYBtby71PCKXV\n+o5uowcewNXLiyuHDuHi6op/x46k79pVZpi7RUV8HRQEKpXhufysshsz/RcuJLBLF3a88QZXDx/G\nrX59frz/bbtl2Pryy8WdyhIqlYqha9ZwIqcJGRl5Nm8/qHt3Bi5bxu633+b08uV4+PrSc/Zshv/4\nI1Naf2+XeRA+ZQq9Pv+czVOnkr5zJ40jIuj79de4uLrCO3XvKJEQpfnggyuuXEKLGjVBBJNcquME\noEPHR/wTFffWsTzK1o+RDKcpIWziZ7Rcwh03fPCxW4b1bGATP5d5z5OM4w755JJrlwzNaEoso/iF\nzRzlOF54MpABTORJPmNOldpXU2Q4wqNDxz/5yNB+Eeoy7XekA4MZSDzruEAyAfgzjKGoUbOZLRXO\nAyGcmX4d03IJNWqCCTK5jpdex6B8rRvOSEJoys9s4hJa3HCvdK2rToYNrOdnNpV5zzieJJ87lap1\n1cnQlGaMIpbN/MJxjuKJFwMYyJNMZA6f2SVDBzoykMGsI55kLuBPAEMZhho1W9hcYQYhqqPWd3SD\nevRAm5AAOh0BnTpxOyODnLS0csPlXbtmdhwhMTE89MQTLImMJDMx0fD82uOn7ZbhTnY2ZGcbHjcK\nCyOwSxdeGr3SLu37d+pEflYW+z/+GICbyckcmD2bP8XH4+3tRk7OHZtnaPvUU5xYuJBTS5caMuz/\n+GN6/OMfeLz/ObdvF1rMIIQza0Zz0khFh44ggskjl5vcKDecpQ2oFrQgkgjmMJer3FsXL3PFbhny\nS/7T88WXEIJZzgq7ZQghmDzy2EHxzrjrXGc3exjPWNxwq3L7aopw4S4A2aWm0Vg0URzkMIc5Ymh/\nBzvpSx+2sZ1CpNaJuqs5zUglDR06ggkilzxucLPccBXVuggimcscrnHV8PwVLtstg6laF0wIK1hu\ntwzBhJBHHrvYARTXmj3sZizjK6x1SmWIIprDHOQIhw0ZdrKDPvRlu5zFImys1nZ0X8jKApLine truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0xc4624d0>"
"<matplotlib.figure.Figure at 0xaa72208>"
]
}
],
"prompt_number": 44
"prompt_number": 17
},
{
"cell_type": "markdown",
@@ -457,15 +475,15 @@
"cell_type": "code",
"collapsed": false,
"input": [
"xr = np.linspace(-400, 400, 41)\n",
"yr = np.linspace(-400, 400, 41)\n",
"xr = np.linspace(-300, 300, 41)\n",
"yr = np.linspace(-300, 300, 41)\n",
"X, Y = np.meshgrid(xr, yr)\n",
"Z = np.ones((size(xr), size(yr)))*50"
"Z = np.ones((size(xr), size(yr)))*0."
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 45
"prompt_number": 18
},
{
"cell_type": "code",
@@ -479,7 +497,7 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 46
"prompt_number": 19
},
{
"cell_type": "code",
@@ -493,7 +511,8 @@
"if flag=='secondary':\n",
" Bxr = Bxr-Box\n",
"\n",
"Bxra, Byra, Bzra = MagSphereAnalFun(X, Y, Z, 100, 0., 0., 0., mu0, mu0*(1+chiblk), H0, flag)\n",
"# Bxra, Byra, Bzra = MagSphereAnalFun(X, Y, Z, 100, 0., 0., 0., mu0, mu0*(1+chiblk), H0, flag)\n",
"Bxra, Byra, Bzra = MagSphereAnalFunA(X, Y, Z, 100., 0., 0., 0., chiblk, np.array([1., 0., 0.]), flag)\n",
"\n",
"Bxra = np.reshape(Bxra, (size(xr), size(yr)), order='F')\n",
"Byra = np.reshape(Byra, (size(xr), size(yr)), order='F')\n",
@@ -501,8 +520,16 @@
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 47
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"100.0 kang\n"
]
}
],
"prompt_number": 20
},
{
"cell_type": "code",
@@ -522,21 +549,21 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 48,
"prompt_number": 22,
"text": [
"[<matplotlib.lines.Line2D at 0xc44e810>]"
"[<matplotlib.lines.Line2D at 0xa11f550>]"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAD9CAYAAADqB5DpAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXl4VdXV/z93yM29SW7mmcwhIQQQAoGAA6IVHNDawdah\ntYP2V1rbqrX4OrR9a/taS7WvtaJWtFrrgLWtbR2qIqiIoIDMY8gcMs/jTXLH8/vj5A4JZJ8TkVeU\n/XkenmRf1jp7n+QmZ2Xt717LoCiKgkQikUgkEonkU4Hxk16ARCKRSCQSiUQ/MniTSCQSiUQi+RQh\ngzeJRCKRSCSSTxEyeJNIJBKJRCL5FCGDN4lEIpFIJJJPETJ4k0gkEolEIvkUccLB26ZNm5g+fToF\nBQWsXr36uDZ33HEHeXl5zJs3j/Lyck3fQ4cOcemllzJnzhwuu+wyDh8+fKLLlEgkEolEIvlMYDjR\nOm8lJSX84Q9/IDs7mwsvvJDNmzeTmJgY+P/t27dzyy238PLLL7Nu3Tqee+45Xn311eP6btmyhYSE\nBK666iq+9KUv8dWvfpXnn3+el19+meeff/7E7lQikUgkEonkM8AJZd76+voAWLx4MdnZ2Sxbtoxt\n27aNsdm2bRtXXHEF8fHxXH311YEs2vF8t27dCkBMTAxdXV34fD66urqIi4s7kWVKJBKJRCKRfGYw\nn4jzhx9+SFFRUWBcXFzM1q1bWb58eeC17du3c+211wbGSUlJVFdXU1tbO6Hvfffdx4IFC7j99ttJ\nT09n+/btx8xtMBhOZOkSiUQikUgk/6d8XE2tTvqBBUVRjlnsRIGX//XrrruOH/3oR3R1dfG9732P\n66+/Xnjt0+nfL37xi098DfK+5X3L+5b3Le9b3re878n9+zg5oeBt/vz5Yw4gHDx4kIULF46xKSsr\n49ChQ4FxR0cHeXl5lJaWHuNbVlYGwObNm7nuuuswm81cf/31bNq06USWKZFIJBKJRPKZ4YSCt5iY\nGEA9NVpXV8f69esDAZifsrIyXnzxRbq6uli7di3Tp08HIDY2dkLf8847j5dffhmAl156iaVLl57I\nMiUSiUQikUg+M5yQ5g3ggQceYMWKFbjdbm688UYSExNZs2YNACtWrGDBggWcffbZlJaWEh8fz7PP\nPiv0BfjZz37G3XffzT333MPMmTP5+c9/fqLL/MywZMmST3oJnwjyvk8v5H2fXsj7Pr04Xe/74+SE\nS4V8UhgMho99D1kikUgkEonkZPBxxi2yw4JEIpFIJBLJpwgZvEkkEolEIpF8ipDBm0QikUgkEsmn\nCBm8SSQSiUQikXyKkMGbRCKRSCQSyacIGbxJJBKJRCKRfIqQwZtEIpFIJBLJpwgZvEkkEolEIpF8\nipDBm0QikUgkEsmnCBm8SSQSTRRFobm5+ZNehkQikUiQwZtEItFBZWUll156KQAOh4OHH374E17R\nqc9DDz1Ef38/AOXl5QwPD3/CK5JIJJ8VZPAmkUg0ycjICARsPp+Pzs7OT3hFpz5DQ0O43W4AfvrT\nn9LY2PgJr0gikXxWkI3pJRLJpPB4PBgMBkwm0ye9lFMa/+8nRVF44403uOSSSz7hFUkkkk8S2Zhe\nIpH8n1JRUcENN9wAwGuvvcaVV1550ud0Op34fD7d9l6vl4qKiknPMzIyMmkfPcTGxtLX14fT6eSJ\nJ544KXNIJJLTExm8SSQSTVJTU3njjTdoampi6dKlnHvuuZPy93g8um29Xi8Al112GTt37hTaulwu\n3nzzTQBaWloCAaZeNm7cyJw5cyblo5cXXniByspKbDYb99xzj9S8SSSSjw3zJ70AiUQylv5+2LwZ\npkyB2bO17YeHYeNGUBQIC4PzzwetHc077vgj0dHTmD37fMxm1ccs+G0QGRnNj3/8V7ZtiwN87Nun\nrXnbu9fDbbd9n+9+9wFeeOEe8vKy+M1vVgh9Vq/ewt///iC33/4CixevJCZG/AVobx/myiu/wWWX\n/ZCrrvoZP/nJBhwOiIyc2OfgQQdvvnmAiIgYkpPL+PWv39a8l+3boaFhEKs1ErfbSXx8D4sXpwl9\nDh/24vW66OiAe+/9bx555JcUFxdNaO92Q2HhLFat2oTdHkdaGpSUiNfl8cDbb6sfjUY47zwID9e8\nHXbvhpYWWLwYoqK07SUSySmG8inlU7x0iUTIn/6kKHFxilJYqM/+lVcUxWK5RJk372UlKkpR9u/X\n9omJ+ZMyZ85byoUXupXIyL3Krl1i+z17FMVuV5SLLvIpZWUHldRU7TkWLFCUadP+pSxbNqwsXtym\nxMYeFdp3diqKyfRX5eyz9ysXX6woZ5yhKNdeK57jL39RlJSUNuWss/YqF1+sKOHhlypPPNEr9Dnz\nzL8pYWEZyqxZTykXX6woJpOi9PWJ57HbFSU+fqly1ll7lMzM3yj5+Y+IHRRFiYvzKeef71MWLHhb\nsdmOKAcPiu23blUUm+0JZdkyh7JkiaLk5GhOoezcqSjh4Xcrs2c/pyQkKMq6ddo+iqIoubnqe+wv\nf9FnL5FITpyPM26R26YSySmG2w1z56rZFD14vbBgwX/z7W8fxW7/HaO7jkKs1ut5/fXzue++wzgc\nszV9qqoOEx7+I554ooXw8JvweLRFt14vPPPMF1i3zsq//50MZArtfT4ID6/i2WftvPYaLFr0DO3t\n2zV9Lroomc2bz+C11+Ccc+7AbI4Q+kyZ8hWefbaBffu+yWuvqZknLWmdy7WJN974PZs3z+avf72d\n5OTvix2Anp4onnrKweWXf0BGhlnza+z1wpw51/H661b6+hbS1KSddvV6ITu7jN//Po1Zs1p0fe9h\n8u8xiURyaiGDN4nkFMPrVbc/9T6IFQXi48u44IILiI6+BD2HmbzeDvbs+ZCbbrqJzMzVmj6JienE\nx19Leno6f/nLywwPP6g5R3f339iw4e/6bgL1PiIjf0p2djYAMTEpmM12oc/IyBAtLW8FxklJZ2Iy\nhWnO42f//v04HJdr3r/Ptz9Qs00vMTEOoqKiuPPOO1EUD8PDQ5rrGhjYzmOPPUZ7ewtxcY9rzqEo\nEBNzAX/961/ZuHGKru89TP49JpFITi1k8CaRnGL4fOqDVe9BS0UBt7uLu+++m+HhD3U9wIeGHuDr\nX1/Ot771LVJSfqhpHxUVQ1TUAgCMRgM+X4emj9VaTF5eMQAbNrzO0NBtmvdhMATHZ5yxjOjo6UKf\nkZEBamqeC4xD/SfC5RrA4egBoKCggIiIhzW/ZmbzD1i4cBEAg4O9uN29mvOE3k9Hx100NtYK7T0e\nDwcOlGGxWHj11R1YLAt0zTE4+AFf+9rXOOecw7qDt8m+xyQSyamFDN4kklMMrxcslsll3jZsyCci\nIoKEhG/qeoAbDHH87W9v8o1vfIPh4T14veKneGggYrNZiYy8W3MOm20m+fkzAJg/fyHh4donQUdG\n/kpPT4/2DYwSHZ3C2Wc/GRi/995X6OlpFfo0N/+TV175HQBWqxWjMUP3fACvvvokHR1PadqNSlwA\nyMpay9SpM4T2BoORmTPf4brrriMxMUnX91FRoKNjDS+88AJ2+7RJZd4m8x6TSCSnFjJ4k0hOMT7K\ntunCha9w8cUX09x8p64HuM22klmz1BIZdXXfw+l0Cu2rqw/Q0HDzmDn1rMsf8MXFxWEwZGvae72H\nA2vZtu1vtLe/p3sOgOLildhssUKfrKxvcs01vw6MDQbt+/F43qGpqQGAa665hdTUm8UOwMCAdczX\nVWsOg8FIbOwSAHbt+oCeHm1dnaLAlCm3c8455zAy0ii3TSWS0wQZvEkkpxgfZds0Kekc8vPzSUi4\nVvcD3M+MGVuxWm1Cm6SkDBISvgaA2+1iePgBzet2dz/Lu+++BOjbzgSIivolqampAERHJxEWFiO0\nHxkZoLX13cA4MbEMi8WqbzKgqqqKgYGlmnaKspuOjnZgMvfixGZT1+JyVTA05NC9rsLCGURF/UTH\nusBmK2LNmjVs3bpEbptKJKcJJxy8bdq0ienTp1NQUMDq1auPa3PHHXeQl5fHvHnzKC8v1+X75z//\nmenTpzNjxgxuu02slZFIPkt8lMybong577zzCA/P0/UAdzpfobe3G9CXebLbY4mMnB8Y+3ztmnNY\nrbPIzp4GwLvvvs3wsDhbNT6LNmPGecTEnCH0GRzsprb2hcBYz724XP0MDamataysLCIjn9T0MZlu\nYe7ceaNz9uF269/aBWhr+xUNDdVCm87OVsrLrwIgOjoak2mq5nUVBfr73+HWW2/lnHN2ysybRHKa\ncMLB20033cSaNWvYsGEDDz/88DENq7dv3857773Hjh07WLlyJStXrtT0PXDgAI899hgvv/wyBw8e\nHOMjkXzW+SiZt927V/DMM89gMoXreoC73VsZGhoEYHj4oGaLqNDAKjzcgs12j+YcVuts8vLUorQl\nJfMIC7tJ02d4+BkGBwc17fwkJGRz5pmPBMZbtnyDjg7xwYCGhud4442HAbBYLJhM4hImMPb+1617\njvb2NZo+Pl9Q85ad/SwFBeJANDIyhowMNcDVE4T619Xf/w45OTlYLDGTyrzBEG63rBUikXwaOaEO\nC319fQAsXrwYgGXLlrFt2zaWL18esNm2bRtXXHEF8fHxXH311fzsZz/T9H399de5/vrrKSgoACAp\nKem48991112Bz5csWcKSJUtO5HYkklOC/v5OWlt3MTj4GPAPTXtFgczMK0lIiKG+fgWKoh1Y2Gy/\nJnM0ZmlouJPu7geBiTVpFRV7aWj4C3C/7sAilJiYGIxG8RaoooDHcxC3+1IAduz4N62tduBzQp/Q\nbN306TditycL58nN/T5XXBEc67kfn28Dzc3F5OWlc8UVN7Bxo9geYGjIjM/nBMy65rBYbMLine truncated
"text": [
"<matplotlib.figure.Figure at 0xa52a7d0>"
"<matplotlib.figure.Figure at 0x1826c630>"
]
}
],
"prompt_number": 48
"prompt_number": 22
},
{
"cell_type": "code",
@@ -556,33 +583,34 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 49,
"prompt_number": 24,
"text": [
"<matplotlib.colorbar.Colorbar instance at 0x47e1518>"
"<matplotlib.colorbar.Colorbar instance at 0x000000001244C608>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0xa52a950>"
"<matplotlib.figure.Figure at 0x12fb62e8>"
]
}
],
"prompt_number": 49
"prompt_number": 24
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"id = 21\n",
"fig, axes = subplots(1,3, figsize=(14,5))\n",
"epsx = np.linalg.norm(Utils.mkvc(Bxr))*1e-6\n",
"epsy = np.linalg.norm(Utils.mkvc(Byr))*1e-6\n",
"epsz = np.linalg.norm(Utils.mkvc(Bzr))*1e-6\n",
"axes[0].plot(Y[:,1], Bxra[:,1], 'b', Y[:,1], Bxr[:,1], 'r.')\n",
"axes[1].plot(Y[:,1], Byra[:,1], 'b', Y[:,1], Byr[:,1], 'r.')\n",
"axes[2].plot(Y[:,1], Bzra[:,1], 'b', Y[:,1], Bzr[:,1], 'r.')\n",
"axes[0].plot(Y[:,id], Bxra[:,id], 'b', Y[:,id], Bxr[:,id], 'r.')\n",
"axes[1].plot(Y[:,id], Byra[:,id], 'b', Y[:,id], Byr[:,id], 'r.')\n",
"axes[2].plot(Y[:,id], Bzra[:,id], 'b', Y[:,id], Bzr[:,id], 'r.')\n",
"print X[:,1]"
],
"language": "python",
@@ -592,22 +620,22 @@
"output_type": "stream",
"stream": "stdout",
"text": [
"[-380. -380. -380. -380. -380. -380. -380. -380. -380. -380. -380. -380.\n",
" -380. -380. -380. -380. -380. -380. -380. -380. -380. -380. -380. -380.\n",
" -380. -380. -380. -380. -380. -380. -380. -380. -380. -380. -380. -380.\n",
" -380. -380. -380. -380. -380.]\n"
"[-285. -285. -285. -285. -285. -285. -285. -285. -285. -285. -285. -285.\n",
" -285. -285. -285. -285. -285. -285. -285. -285. -285. -285. -285. -285.\n",
" -285. -285. -285. -285. -285. -285. -285. -285. -285. -285. -285. -285.\n",
" -285. -285. -285. -285. -285.]\n"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "iVBORw0KGgoAAAANSUhEUgAAA0sAAAE1CAYAAAA283vuAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3X9ck+e9P/5X0IrSORB/cOoULEpJsK2ghNhZIbOKCKtY\nlVl37LpKGwp0do/+mO2x+x7d6rrabvPH8Ve2w9ZT5WtdO7aesyGia6DuHBKstrUQxDqQllYUVECL\nSvX6/HHDLYEEEpKQX6/n48FDcnNfV67ccF/mnfd9vW+FEEKAiIiIiIiILAR5egBERERERETeiMES\nERERERGRFQyWiIiIiIiIrGCwREREREREZAWDJSIiIiIiIisYLBEREREREVnhdLBUXl4OlUqFmJgY\nbNu2zeo+L774IqKjozFr1izU1NQM2La6uhrf/e53ER8fjwcffBBms9nZYRKRl3DHnPHHP/4R06dP\nx7Bhw3Ds2DF5e319PUaNGoWEhAQkJCQgLy/PfS+MiJzijrmhvb0dmZmZiIyMxJIlS3D58mX5Z1u3\nbkVMTAzi4uJw5MgRebvZbMbMmTMRHR2NdevWyds7OzuRnZ2NqKgoaLVanD171pUvn4i8lXBSfHy8\nKCsrE/X19SI2NlacP3/e4udGo1HMmTNHtLS0iMLCQpGRkWGzbXNzsxBCiBUrVoi33npLCCFEYWGh\nePjhh50dJhF5CVfOGd1tzWazOHnypNBqteKDDz6Q96+rqxN333330LwwInKKO95PvPrqq+Kpp54S\nV69eFfn5+eK1114TQgjR1NQkYmNjxZkzZ4TBYBAJCQlyX4sWLRL79u0Tzc3NYs6cOaKyslIIIcRb\nb70lli1bJq5cuSJeeeUVkZ+f7+5DQkRewKnMUmtrKwAgOTkZUVFRSE1NhdFotNjHaDRi+fLlCA8P\nx8qVK+UskbW2FRUVAIDQ0FC0tLTg5s2baGlpwZgxY5wZJhF5CVfPGd1tlUol7rrrriF8JUTkSu56\nP2EymZCdnY3g4GCsXr1a7tNoNCItLQ2RkZFISUmBEELOOp08eRIrVqzA2LFjsXTpUos2q1atQkhI\nCHQ6XZ/xEZF/Gu5M48rKSiiVSvlxXFwcKioqkJGRIW8zmUx45JFH5Mfjx4/H6dOnUVdXZ7Pta6+9\nhqSkJLzwwguYOHEiTCZTn+dWKBTODJ2I3EAI0e/P3TVn9Keurg7x8fHQaDTIy8vDjBkzLH7OuYTI\ne/Q8H0NDQ52eG3rOOUqlUn4/YTQaoVKp5DaxsbEwGo2IiorChAkTLPrau3cv8vPzYTKZkJOTAwAI\nDw9HU1MTrl27huDgYKvjJyLvMdD7k/64vcCDEKLPAG1NJt3bV69ejR/96EdoaWnBk08+iezs7H77\n9qavf//3f/f4GDgu/x6bt47LE3PGQCZOnIjPPvsMH374IZYsWWLxRsvac3rbl7f+rjku/xiXN42t\ntLQUDz/8sPzY2bmhe7utvvpr0/s5e/bVs7+BxulNX97ye/alsXFc/jEuIZx/f+JUsKRWqy0WWFZV\nVWH27NkW+2g0GlRXV8uPz58/j+joaCQmJvZpq9FoAABHjhzB6tWrMXz4cGRnZ6O8vNyZYRKRl3D1\nnNG7bW8jRoyQL+NdtGgRhg8fjk8//dQVL4WIXKj33ADAJe8n1Gq1fLme2WyGWq222ldNTQ3UajWm\nTZuGpqYmeXt1dbXcV882Fy5cQEREhEVWSZaeDly6dOuxTgdotZbbrW1z5XYib+SKv+/B9OEkp4Kl\n0NBQAFIVmvr6epSWlsqTSjeNRoN33nkHLS0tKCwslNPeYWFhNtt+5zvfwbvvvgsA+Mtf/oIFCxY4\nM0wi8hLumjN66vkpUnNzM27cuAEAOHbsGDo6OjBt2jS3vDYiGrzecwMAl8wNGo0GBQUF6OjoQEFB\ngRyAJSUloaSkBA0NDTAYDAgKCsLo0aMBSJfr7du3D83NzSgqKrLoa8+ePbhy5Qr0er3tD2uKiy3f\noNXWAmVlltutbXPVdgZWNJS6/6727h04oHHF3/dg+nCWcJLBYBBKpVJMnTpVbNmyRQghxK5du8Su\nXbvkfdauXSumTJkiZs6cKaqrq/ttK4QQn3zyiXj44YfFvffeK77//e8Ls9nc53ldMHS3eO+99zw9\nBKs4Lsd569i8dVz2npPumDP+9Kc/iUmTJomRI0eKiIgIkZaWJoQQ4u233xbTp08XM2bMEMuWLRNl\nZWWDHrcneOvvmuNyjLeOSwjvGlvP87v7vHR2bmhraxOLFy8WkydPFpmZmaK9vV3+2ebNm8XUqVOF\nSqUS5eXl8vaqqiqRkJAgpkyZIl544QV5+/Xr18Vjjz0mJk+eLFJSUsSXX37Z5zUAEEKtFuLixVsb\nFy0Sovd2a9tctT0lRdoGCJGVJYTo+j1b2e4NvOlvsCeOy05df1fv9fy7svW35oq/70H04ez/8977\nLmEA3vwGhygQ+eo56avjJvJnvnpeArB8oyaE9Dgry3K7tW2u2u7om8knnpDe3C5a1Ld/om62/k4c\nCWhc8fc9iD6cnU8UQrhg5ZMHKBQKlyzaIiLX8NVz0lfHTeTPfPW89IpxX7okXYak1wNdlyj2u12r\nlS5fAoCsLGD//iEdLvkIW38n1v6ubP2teYiz5yWDJSJyCV89J3113ET+zFfPS58cd3q6tM5DrQYO\nHvSKN7fkhXz474TBEhF5BV89J3113ET+zFfPS58ct5dlAchL+fDfCYMlIvIKvnpO+uq4ifyZr56X\nvjpuq3Q6qZJYSAhQWOhzb5BpkPzw9+7seen2m9ISERERkY+xVYqZ/Bt/730wWCIiIiIiSyEh0r9q\ntXTpFQUG/t774GV4ROQSvnpO+uq4ifyZr56Xvjpuq3x4jQo5wQ9/71yzRERewVfPSV8dN5E/89Xz\n0lfHTeTPuGaJiIiIiIjIDRgsERERERERWcFgiYiIiIiIyAoGS0RERERERFYwWCIiIiKigel0gFYL\npKdLVdPId/F3aTcGS0REREQ0MN6w1H/wd2k3BktERERENDDesNR/8HdpN95niYhcwlfPSV8dN5E/\n89Xz0lfHbTc/vGFpwAqg3yVvSktEXsFXz0lfHTeRP/PV89JXx03kz3hTWiIiIiIiIjdgsERERERE\nRGQFgyUiIiIiIiIrGCwRERERERFZwWCJiIiIiIjICgZLdEsg3M05EF4jEZEPaW9vR2ZmJiIjI7Fk\nyRJcvnzZ6n7l5eVQqVSIiYnBtm3b7Gq/detWxMTEIC4uDkeOHJG3m81mzJw5E9HR0Vi3bp28vbOz\nE9nZ2YiKioJWq8XZs2fln6WlpWHMmDF48MEHXfnyicjLMViiW6zdzdlXgwtb4+Ydq4mIvMrOnTsR\nGRmJU6dOYdKkSdi1a5fV/Z5++mns3r0bhw4dwvbt29HS0tJv+3PnzmHHjh04fPgwdu7ciTVr1sh9\nPfvss1i7di0qKytRVlaGo0ePAgCKiorQ2toKs9mMtLQ0vPzyy3Kbn/zkJ3jzzTfddRiIyEsxWKJb\nrN3N2VZwYSsYcWdw5chz2ho371hNRORVTCYTsrOzERwcjNWrV8NoNPbZp7W1FQCQnJyMqKgopKam\noqKiot/2RqMRaWlpiIyMREpKCoQQctbp5MmTWLFiBcaOHYulS5datFm1ahVCQkKg0+ksxjJv3jx8\n4xvfcOuxICLvM9zTAyDPuHIF+PRTy21B/1aISTd0+Pynetw8EwacAe78OgTfBHBluhr/XKPHzY+k\nfacer8U3jpYBAC6u0KFh0/5+t3/rZzqMbKjFzeAQnPllIW6ODrO6zda+jj6nrXFbe409KZVAcLBL\nDjERkYWWFuB73wMOH/b0SLxLZWUllEolAECpVMJkMvW7DwDExcWhoqICGRkZNtsbjUaoVCq5TWxs\nLIxGI6KiojBhwgSLvvbu3Yv8/HyYTCbk5OQAAMLDw9HU1IRr164h2IH/GNavXy9/r9VqodVq7W5L\nRM4zGAwwGAwu64/BUoB6/XVg504gIqLn1jAA+4H8W1tG3yjET0N1+Dn0aM8Pk7f/xz9DMBfAJ6PU\neLJRj/Yf9L/9d6drob4iBTRffFeHn0Ttt7rN1r6OPqetcVt7jd0aG4Gf/xzIzXXwYBIR2eHLL4H3\n3gOuXwdGjPD0aIbWggULLNb/dNu4cSOEEIPqU6FQAIBD7bvb9CSEsOirZ3+DGVvPYImIhl7vDyk2\nbNjgVH8MlgLU5cvAM88AP/nJQHtKwcXC3psvFQI6He7W63EkLGzg7ekhQDEAtRoLD+qxMMzGNlv7\nOvycNsbdj2eflTJuRETu0N4OCAE0NADTpnl6NEOrtLTU5s/eeOMNmM1mJCQkwGw2Q61Wo6GhwWIf\ntVqN559/Xn5cVVWFtLQ0+We92wOARqPBoUOH5DY1NTVQq9UYPXo0mpqa5O3V1dXQaDRym+rqasTG\nxuLChQuIiIiwyCpZC7aIyL9xzVKAunbNycvNwsKA/fulf+3ZXlgIZGUBBw/e+pm1bf1td/Q5HRQc\nLB0XIiJ3aGuT/q2r8+w4vI1Go0FBQQE6OjpQUFCA2bNn99knNDQUgFQRr76+HqWlpRYBjrX2SUlJ\nKCkpQUNDAwwGA4KCgjB69GgA0uV6+/btQ3NzM4qKiiz62rNnD65cuQK9Xt9nLIPNghGR72KwFKCu\nXRviy0CsBTRuDn4cNWIEgyUich8GS9bl5uaioaEBsbGxaGxsxJNPPgkA+OKLL5CRkSHvt3nzZuTk\n5GD+/PnIy8vDuHHj+m0fERGB3NxczJs3D3l5ediyZYvc1+uvv45NmzZBrVZj7ty5SExMBAA89NBD\nCA0NhUqlwoEDB/DSSy/JbebOnYvvfe97OHz4MCZPntxvtoyI/IdC+OjHJAqFgp/wOOGHPwLine truncated
"text": [
"<matplotlib.figure.Figure at 0x152faf50>"
"<matplotlib.figure.Figure at 0xaa70e80>"
]
}
],
"prompt_number": 50
"prompt_number": 25
},
{
"cell_type": "code",
@@ -627,21 +655,21 @@
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 51,
"prompt_number": 26,
"text": [
"[<matplotlib.lines.Line2D at 0xf0bfc50>]"
"[<matplotlib.lines.Line2D at 0x139014e0>]"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x15309ad0>"
"<matplotlib.figure.Figure at 0x12897198>"
]
}
],
"prompt_number": 51
"prompt_number": 26
},
{
"cell_type": "markdown",
+175
View File
@@ -0,0 +1,175 @@
{
"metadata": {
"name": ""
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "code",
"collapsed": false,
"input": [
"from SimPEG import *\n",
"%pylab inline"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Warning: Python backend is being used for solver. Run setup.py from the command line.\n",
"Warning: mumps solver not available.\n",
"Warning: upgrade your scipy to 0.13.0"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"hxind = ((10,25,1.3),(41, 12.5),(10,25,1.3))\n",
"hyind = ((10,25,1.3),(41, 12.5),(10,25,1.3))\n",
"hzind = ((10,25,1.3),(40, 12.5),(10,25,1.3))\n",
"hx, hy, hz = Utils.meshTensors(hxind, hyind, hzind)\n",
"M3 = Mesh.TensorMesh([hx, hy, hz], [-sum(hx)/2,-sum(hy)/2,-sum(hz)/2])"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from MagAnalytics import MagSphereAnalFunA, MagSphereAnalFun"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"bx,by,bz = MagSphereAnalFunA(M3.gridFx[:,0],M3.gridFx[:,1],M3.gridFx[:,2],100.,0.,0.,0.,0.01,np.array([0.,1.,0.]),'secondary') \n",
"Box = 1.\n",
"mu0 = 4*pi*1e-7\n",
"H0 = Box/mu0\n",
"flag = 'secondary'\n",
"Bxra, Byra, Bzra = MagSphereAnalFun(M3.gridFx[:,0],M3.gridFx[:,1],M3.gridFx[:,2], 100, 0., 0., 0., mu0, mu0*(1+0.01), H0, flag)\n"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 10
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"colorbar(M3.plotImage(Bxra, imageType='Fx'))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 11,
"text": [
"<matplotlib.colorbar.Colorbar instance at 0x000000000AAF71C8>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0xabe94e0>"
]
}
],
"prompt_number": 11
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"fig, axes = subplots(1,3, figsize = (15, 5))\n",
"bx,by,bz = MagSphereAnalFunA(M3.gridCC[:,0],M3.gridCC[:,1],M3.gridCC[:,2],100.,0.,0.,0.,0.01,np.array([0.,0.,1.]),'secondary') \n",
"M3.plotSlice(bx, vType='CC', ind=5, ax = axes[0], grid=True, gridOpts={'color':'b','lw':0.3, 'alpha':0.5}); axes[0].set_title('$b_x$', fontsize = 16); #axes[0].set_xlim(0,500); axes[0].set_ylim(0,500)\n",
"M3.plotSlice(by, vType='CC', ind=5, ax = axes[1]); axes[1].set_title('$b_y$', fontsize = 16);# axes[1].set_xlim(0,500); axes[1].set_ylim(0,500)\n",
"M3.plotSlice(bz, vType='CC', ind=5, ax = axes[2]); axes[2].set_title('$b_z$', fontsize = 16);# axes[2].set_xlim(0,500); axes[2].set_ylim(0,500)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 12,
"text": [
"<matplotlib.text.Text at 0x120c3f60>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x1073cb70>"
]
}
],
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"fig, ax = subplots(1,1, figsize = (5, 5))\n",
"M3.plotSlice(np.c_[bx, by, bz], vType='CCv', view='vec', ind=1, ax = ax, grid=False, gridOpts={'color':'b','lw':0.5, 'alpha':0.8}); "
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAU4AAAFLCAYAAAC5nmXaAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXd0VNX3t587M5l0ShISCAm99w7Se5ciCiiC9KqIoCIq\ngg0FQRQpAlJEQBAEKSKd0HvvHQIBAuk90+77xyGQkHunJfxe5TvPWiyTmTPnnhlz9+xz9mfvLcmy\nLOPChQsXLuxG8/97AS5cuHDxX8NlOF24cOHCQVyG04ULFy4cxGU4Xbhw4cJBXIbThQsXLhzEZThd\nuHDhwkFchtPFf5rFixfTqFGjJ7/7+vpy69at/38LcvE/gctwuvjXc+LECQYNGkRoaCj+/v40bNiQ\nY8eOKY5NTEykWLFiuXr9mTNnUqtWLTw8POjXr1+uzu3iv4nLcLr41zNgwAAqVqzI+fPniYiIYMKE\nCbi7u/+fXb9w4cKMHz+e/v37/59d08W/G5fhdPGv5sqVK1y6dIm3336bPHny4OHhQatWrahcubLi\neI1Gw40bNwAwGAz8/vvvtGzZknz58tGoUSPS0tIAuH79Oh9++CFFixZl0KBBXLhwQXUNXbt2pXPn\nzvj7++f+G3Txn8RlOF38qylTpgyFCxemZ8+ebNy4kfj4eLtfO2vWLH744Qc+++wzYmJi+O6779Bo\nNJjNZurXr0+FChU4d+4cjRo1ok2bNjbnc2Unu8jAZThd/OvZtWsXpUuXZvjw4YSEhDBq1ChiYmJs\nvm7FihWMGzeOxo0bo9FoqFevHnq9np07d1K1alX69u2Lr68vffr0ISAggKNHj1qdT5Kk3HpLLv7j\nuAyni389oaGhfPPNN4SHh7N9+3a2bdvGDz/8YPU1ycnJHDt2jAYNGmR7bvv27ezdu5f8+fM/+Xft\n2jX27NljdU6Xx+kiA93/7wW4cOEIdevW5fXXX2fr1q1Wx3l7e1O7dm327dtH165dszzXvHlzzpw5\nwz///OPQtV0ep4sMXB6ni381ly9f5vvvvyciIgKz2cyJEydYtmwZffr0sfnanj17MmXKFPbt24fZ\nbObgwYMYDAZatmzJ2bNnWbJkCbGxsaSlpREWFkZERITiPGazmbS0NEwmE2azmfT0dMxmc26/VRf/\nIVyG08W/Gl9fXw4fPkzdunXx8/Nj9OjRvPHGG08MpyRJWTzBzD8PHz6cESNG8Mknn+Dv78+4ceOw\nWCxotVrCwsK4fPkyNWvWpEiRIkybNg2LxaK4hi+//BIvLy8mT57M0qVL8fT05Ouvv36+b9zFvxrJ\nVcjYhQsXLhzD5XG6cOHChYO4DKcLFy5cOIjLcLpw4cKFg/yn5UgueYgLFy6eF9bCP/9pwwlALRks\naXBrIIROBbeC6mMNERDxCRSdAxpP9XGyDOHvQNA74FE263MvPTP2xFQIrAkhzayv895+eHAIaozJ\n/ly1TD+vmwidJ1qfC8Bigb+/hhYjwSsvlLIyds9a0LtDvfZPHwtR+KO4dAZOHIA3hj55yDMgzuoy\nvHxSFB/XawwAJE74AdlgIOCbd588Z34YTeofm8j39htoeSrryfyz+N2U5XcdZpL2ncYcFUfeLk2y\njc+MITySuL/2EDjyNavrB7j70RwKfz0YSavN9pyZp489mrUa7/YN0RcvzMOJ8wmcOAjzM7dQxvjM\nrzNl+tnA0+IkxjOXMB47i65vL8V1pSR5ASCnpGCaPAXdxAlPnIXUqHzKb2b6BOgzAvwDH785O52L\nRROh30Tx87VMj989C1f2QPMR9s0DcMrKc7IMe9+Dau9BnqL2zwlwUOXx+H8g9TwUfD/r4/cmQvDE\np7+n34J7E6DYApCsmL7EMLhs/X5+MbbqGg/wKCPerOG++ji3IJCNcL07WFLVx0kSeNeEW8PAcM/6\ntQvUgBPTIP669XF5S8DtTXB3l/Vx9qLRQPRt2PCF7bFuepj7kTC21vDNC9+Ph5Tk3FkjYNh3DPPt\nrJ+h5ONFzNjpWFLTHJ/vegRxa3bbHGeKjidq4d82x8kmE5Hf/S4+TxtE/bQaS0q6Xeu0h7Q/N2O6\nfMPmOPPmLVjOnrO9w7p4GlYvhDz5c2eBsgzL3hb3Q25x8ntIiwFvKw6OIyQdhNvvgE/2DLEspN+G\nS03Bq5Z1o5kQBtdtf9m+GIYTIPgzKDAMrrQA4wPlMZIOiv8K+uJw/VWwWLkJAvpBnlZwtQOYE9TH\nhTaHYu1hY2cwJKqP8y4ENcfC1t6Q+si+92SLVybBgSVw/5L1cfXag84N9q+3Pq5wUajZADb8njvr\nA9xb1Md8MzzLYxovT/QVSpB+XL0ikRpuIQUw3n1oc5zkoceSZrA5zpKchsbbw6ZRkmUZQ/gD3Irm\n0g0PpG/di3vrhjbHmVetRvtqN9sT/jYLXh8Cbm65sDrgyApIS4QmQ3JnvgeH4MRkqPcFaHOhLGDq\nJbjWFYrOAp9nt4KZMNwRTlXweLGLVCMxDG4PhBKrbF76xTGcAEEjwe918SFZM56h00DygBs9wGJU\nn6/QR+BT97GRtTKu8jAo1AC29QbZildXpDWU6w3b3lIfV7ap+uufJU8gdBgHK0YJ70ANSYI+4+HX\nL6yPA+g1DJbOtj3OTvQt6mOJjM72uEf9aqQdsLanU8YtJNAuw6nxdEe2w3Cak9PQeFs5tskYFxWH\nxtMdrY/YPns3rWF7sVawxMZjOncFfYNaVsfJsXFY9u1D27GD9QnjYuCf1fD6YOcWVK1p1t/TEmHV\nB9BrJmiyH2E4TFosbO4JzeZBnmI5n89wD662hZBvIa9KZSvfpmLc5eYQOAIKDFCfLzFMeJrFfoE8\nTW1e/sUynCC+VfzesG48NW5Q4neQTXCzl/ivEpIERWYKI3t7kLoxkSRo8pPYghyeaH19db+A9Fg4\nNV35+XJNrb/+WZq/LbbsBzZaH9egE1jMcGiT9XENW0FyIpw67Ng6VHCrWQlLbDzmyKgsjzttOAsX\nwHD3oc2CGxoPPZZU29tqS3IqWh/bhtNw+wH6Ik+9Te+mNW0v1grpOw+ib1gLycO652VevwFNs2ZI\nefJYn/CPBdDi5adnm45SvWnW3zd8CeVbQqn6zs2XGVmGHf2gRBco2SXn85ni4Wo7KDAYAvqqj/Mo\nL3agAf2hoEJsIYMMo1lylTC2dvDiGU7IbjwffAe3nznc1uih5Gowx8HNfiCrBBoknTCyaRfFwXLM\nBVhRExKzbj/R6qHdari0BK6ugsvLYHXj7PNp3aDN73B8MkRaL2NmFzo99PwBZr0Hx7bBiAYQfjn7\nOI0Gen9q2+vUaERwaOnsnK8NkHQ69E3qkrYzqyF2f6ka6QdPO1xxSOvjhcZdjznGyvEJwuO0a6ue\nlIrG28PmOMPtB+hzcZtu2LoXfetGNseZ//wTna1tutkMy+ZAn7dzZ3H3L8G+RfDqt7kz3+kZkBQB\nDabkfC5LOlx/BXwaQsFx6uOMj+ByC/DrCYWsjHPCaMKLajjhqfE8XwXufgZRC7MHhDQeUPIvMN6B\n20PVt89abyi1AaIWwIoaEH0WwrdlH+cVCO1WwbY+sGMgRB6GZIVgVZ5i0HSO2Lqk21+YV5WA4pAU\nDx92gMvH4Z5KwKFJN0hNgqPWKwvRrS/s2ADRuXMW696iPmk7soZEdaEFQaclccVmYqYvxfTIdn3N\nDNxCbW/XJQ89sl0ep31bdUN4ZK6db8qybNf5pnz/PpbTp9G0bmV9wp0bISAIqtTOjcXB8neg4yeQ\nNxfeb+RROPY1tF0pnIscrc0Ct/qCNi8UmaEetDLFwJVWkK8TFPpMfT4njSa8yIYTAEl4lKQBWojf\nkn2I1gtKbRRyhvCR6t5Y3HowRoM5XZx33lbY8hoSYecg4b2a08QfysPjyvOV6gZF28CuwTk7T4y5\nC+MrQHwUmI2g1QnjqIRGA70/se115veH1l1FhDYX0LdsQOr2g0+8y+Q12wgv1Q7z/UdE9p9A1PtT\nMd2NtHs+t5BADLYMp94N2WRGtlHFyJxsn8dpzEWP03z9NrLBiK5Caevj1v6FtkMHJA8b61syM/e8\nzb1rIe4+NHNAfqRGehxs7iGchLwlcj7f3Q9EoKfEMpBUzl1NcXClNeRpCYW/VjeuOTCa8CIYTlO0\n0HFlezwO7k8C6XGEUU6Ghz8rz6H1gdL/QPIReDBZeUzyIZB4KmUI3559jMUEOm/QPB5jTIL7B9TX\n3vB7SLgNh5arj7FF/sLQ/1fw9Hl8zXR1wwnQrIcwmkf3Wp+311A4GGbT8NiDrlxJtMGBmG7cAUBb\nMADTnQcgy8hp6Uge7rhXLWtjlqd4VCiO6ZF1fakkSXjVKGvznFM2mHAvZtsgWtIN6IsXsnuN1jDs\nPYp71zY2I/mWo8fQdHvF+mRXL0BiPLSzLaGxSXoqrJ8LvX4SKoycIMvivL9oe+Ek5JRz8yFhJ5Ra\nr67BNicJ/bVPfQj5Tt1oJoQJCZOTRhNeBMNpvA+3+kPMH1kf1+WDag+h2ELwbQlIkLgFklSCHrq8\nUHoTRC+FBwpnMcV+gUpXoOpI0LiDMQGurMw6xiM/vLYfuu2FkNbisXNz1Neu84AWC2DFuxB51e63\nnAVJgpd6wW+XoEI9MJvg4hH18VotvDwYZtjQf1atA3HRWLbvcG5dWZYo4VYi9Mk5p0f96gRM/xD0\nbo9/r4pkh44yA20ebwzXlWtnZib9RgRyuhU1BGCOS7RLm5ly5AL6ECcDL8+Qtm477vWrW1/X9VuY\n9+5D20ThnDwzS2dD0/agz+E2GGDlNPDyhXI2kjns4cJCiNgFDafmfK4b6+DIRCi1FnR+ymMs6XCt\nizh+C/3Ruqd54zUo8pPTRhNeBMPpWQlKb4E770LMiqzPaX3ArweU3QbV48G9FNx4HYwq2zLine truncated
"text": [
"<matplotlib.figure.Figure at 0xa397518>"
]
}
],
"prompt_number": 9
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}