mirror of
https://github.com/wassname/simpeg.git
synced 2026-10-29 13:40:11 +08:00
archive
This commit is contained in:
1 parent
d43caf092b
commit
d1c34da5f0
8 files changed
+5177
-21
No files matched your search
@@ -151,6 +151,17 @@ Differential equation approach
|
||||
Inverse problem
|
||||
===============
|
||||
|
||||
.. image:: examples/model.png
|
||||
:width: 800px
|
||||
:align: center
|
||||
:height: 350px
|
||||
:alt: alternate text
|
||||
|
||||
.. image:: examples/obspred.png
|
||||
:width: 800px
|
||||
:align: center
|
||||
:height: 350px
|
||||
:alt: alternate text
|
||||
|
||||
Mag Differential eq. approach
|
||||
*****************************
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 59 KiB |
File diff suppressed because it is too large.
Load diff
Binary file not shown.
|
After Width: | Height: | Size: 445 KiB |
@@ -0,0 +1,82 @@
|
||||
from SimPEG import *
|
||||
import matplotlib.pyplot as plt
|
||||
from simpegPF.MagAnalytics import spheremodel, MagSphereAnalFun, CongruousMagBC
|
||||
import time
|
||||
|
||||
# Step1: Generate 3D tensor mesh
|
||||
hxind = ((5,25,1.3),(41, 12.5),(5,25,1.3))
|
||||
hyind = ((5,25,1.3),(41, 12.5),(5,25,1.3))
|
||||
hzind = ((5,25,1.3),(40, 12.5),(5,25,1.3))
|
||||
hx, hy, hz = Utils.meshTensors(hxind, hyind, hzind)
|
||||
M3 = Mesh.TensorMesh([hx, hy, hz], [-sum(hx)/2,-sum(hy)/2,-sum(hz)/2])
|
||||
|
||||
# Step2: Generate susceptibility model
|
||||
mu0 = 4*np.pi*1e-7
|
||||
chibkg = 0.
|
||||
chiblk = 1.
|
||||
chi = np.ones(M3.nC)*chibkg
|
||||
|
||||
sph_ind = spheremodel(M3, 0., 0., 0., 50)
|
||||
chi[sph_ind] = chiblk
|
||||
mu = (1.+chi)*mu0
|
||||
# Step3: Generate Boundary
|
||||
BC = [['neumann', 'neumann'], ['neumann', 'neumann'], ['neumann', 'neumann']]
|
||||
Box = 1 # Primary field in x-direction (background)
|
||||
Boy = 0 # Primary field in y-direction (background)
|
||||
Boz = 0 # Primary field in z-direction (background)
|
||||
B0 = np.r_[Box*np.ones(np.prod(M3.nFx)), Boy*np.ones(np.prod(M3.nFy)), Boz*np.ones(np.prod(M3.nFz))]
|
||||
|
||||
Bbc, Bbcderiv = CongruousMagBC(M3, np.array([Box, Boy, Boz]), chi)
|
||||
|
||||
# Step4: Compute system matrix and right hand side
|
||||
Dface = M3.faceDiv
|
||||
Pbc, Pin, Pout = M3.getBCProjWF(BC, discretization='CC')
|
||||
Mc = Utils.sdiag(M3.vol)
|
||||
Div = Mc*Dface*Pin.T*Pin
|
||||
MfmuI = Utils.sdiag(1/M3.getFaceInnerProduct(1/mu).diagonal())
|
||||
Mfmu0 = 1/mu0*M3.getFaceInnerProduct()
|
||||
A = -Div*MfmuI*Div.T
|
||||
rhs = -Div*MfmuI*Mfmu0*B0 + Div*B0 - Mc*Dface*Pout.T*Bbc
|
||||
|
||||
# Step5: Solve !!
|
||||
start = time.clock()
|
||||
m1 = sp.linalg.interface.aslinearoperator(Utils.sdiag(-1/A.diagonal()))
|
||||
phi, info = sp.linalg.bicgstab(A, rhs, tol=1e-6, maxiter = 1000, M =m1)
|
||||
elapsed = (time.clock() - start)
|
||||
|
||||
print np.linalg.norm(A*phi-rhs)/np.linalg.norm(rhs)
|
||||
print ('Cpu time = %10.3e ms') % (elapsed*1000)
|
||||
# Step6: Update for B and project to receiver locations
|
||||
B = MfmuI*Mfmu0*B0-B0-MfmuI*Div.T*phi
|
||||
|
||||
xr = np.linspace(-300, 300, 41)
|
||||
yr = np.linspace(-300, 300, 41)
|
||||
X, Y = np.meshgrid(xr, yr)
|
||||
Z = np.ones((np.size(xr), np.size(yr)))*80
|
||||
|
||||
rxLoc = np.c_[Utils.mkvc(X), Utils.mkvc(Y), Utils.mkvc(Z)]
|
||||
Qfx = M3.getInterpolationMat(rxLoc,'Fx')
|
||||
Qfy = M3.getInterpolationMat(rxLoc,'Fy')
|
||||
Qfz = M3.getInterpolationMat(rxLoc,'Fz')
|
||||
|
||||
Bxr = np.reshape(Qfx*B, (np.size(xr), np.size(yr)), order='F')
|
||||
Byr = np.reshape(Qfy*B, (np.size(xr), np.size(yr)), order='F')
|
||||
Bzr = np.reshape(Qfz*B, (np.size(xr), np.size(yr)), order='F')
|
||||
H0 = Box/mu0
|
||||
|
||||
flag = 'secondary'
|
||||
|
||||
Bxra, Byra, Bzra = MagSphereAnalFun(X, Y, Z, 50., 0., 0., 0., mu0, mu0*(1+chiblk), H0, flag)
|
||||
Bxra = np.reshape(Bxra, (np.size(xr), np.size(yr)), order='F')
|
||||
Byra = np.reshape(Byra, (np.size(xr), np.size(yr)), order='F')
|
||||
Bzra = np.reshape(Bzra, (np.size(xr), np.size(yr)), order='F')
|
||||
|
||||
# Step6: comparison to analytics
|
||||
fig, ax = plt.subplots(3,2, figsize = (10,15))
|
||||
dat1 = ax[0,0].imshow(Bxr); fig.colorbar(dat1, ax=ax[0,0])
|
||||
dat2 = ax[0,1].imshow(Bxra); fig.colorbar(dat2, ax=ax[0,1])
|
||||
dat3 = ax[1,0].imshow(Byr); fig.colorbar(dat3, ax=ax[1,0])
|
||||
dat4 = ax[1,1].imshow(Byra); fig.colorbar(dat4, ax=ax[1,1])
|
||||
dat5 = ax[2,0].imshow(Bzr); fig.colorbar(dat5, ax=ax[2,0])
|
||||
dat6 = ax[2,1].imshow(Bzra); fig.colorbar(dat6, ax=ax[2,1])
|
||||
plt.show()
|
||||
@@ -55,7 +55,7 @@ class MagneticsDiffSecondary(Problem.BaseProblem):
|
||||
.. math ::
|
||||
|
||||
\mathbf{rhs} = \Div(\MfMui)^{-1}\mathbf{M}^f_{\mu_0^{-1}}\mathbf{B}_0 - \Div\mathbf{B}_0+\diag(v)\mathbf{D} \mathbf{P}_{out}^T \mathbf{B}_{sBC}
|
||||
|
||||
|
||||
"""
|
||||
B0 = self.getB0()
|
||||
Dface = self.mesh.faceDiv
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"signature": "sha256:c0435d56d573db123d3d215787258fc96159c6d73d284724f152b2d5bc4ac8f8"
|
||||
"signature": "sha256:ccf93ffb36da34d96e9db949237c42f71adba319f5933dde309737a004e04064"
|
||||
},
|
||||
"nbformat": 3,
|
||||
"nbformat_minor": 0,
|
||||
@@ -2809,7 +2809,7 @@
|
||||
"vmax = chi.max()\n",
|
||||
"ps1 = mesh.plotSlice(chi, vType='CC', ind=indx, normal='X',ax = axes[0], grid=True, gridOpts={'color':'b','lw':0.3, 'alpha':0.5});\n",
|
||||
"axes[0].set_title('$\\chi_{true}$', fontsize = 16)\n",
|
||||
"axes[0].set_ylim(-300, 0.)\n",
|
||||
"axes[0].set_ylim(-500, 0.)\n",
|
||||
"cb1 = colorbar(ps1[0], ax = axes[0], orientation=\"horizontal\", ticks=[np.linspace(vmin, vmax, 5)], format = FormatStrFormatter('$%5.3f$'))\n",
|
||||
"axes[0].set_xlabel('Easting (m)')\n",
|
||||
"axes[0].set_ylabel('Depth (m)')\n",
|
||||
@@ -2818,35 +2818,27 @@
|
||||
"vmax = (actMap*xc[iteration]).max()\n",
|
||||
"ps2 = mesh.plotSlice(actMap*xc[iteration], vType='CC', ind=indx, normal='X', ax = axes[1], grid=True, gridOpts={'color':'b','lw':0.3, 'alpha':0.5});\n",
|
||||
"axes[1].set_title('$\\chi_{pred}$', fontsize = 16)\n",
|
||||
"axes[1].set_ylim(-300, 0.)\n",
|
||||
"axes[1].set_ylim(-500, 0.)\n",
|
||||
"cb2 = colorbar(ps2[0], ax = axes[1], orientation=\"horizontal\", ticks=[np.linspace(vmin, vmax, 5)], format = FormatStrFormatter('$%5.3f$'))\n",
|
||||
"cb1.set_label('Total magnetic intensity (nT)')\n",
|
||||
"cb2.set_label('Total magnetic intensity (nT)')\n",
|
||||
"cb1.set_label('Susceptibility (dimensionless)')\n",
|
||||
"cb2.set_label('Susceptibility (dimensionless)')\n",
|
||||
"axes[1].set_xlabel('Easting (m)')\n",
|
||||
"axes[1].set_ylabel('Depth (m)')\n",
|
||||
"\n"
|
||||
"fig.savefig('model.png', dpi = 200)"
|
||||
],
|
||||
"language": "python",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"metadata": {},
|
||||
"output_type": "pyout",
|
||||
"prompt_number": 501,
|
||||
"text": [
|
||||
"<matplotlib.text.Text at 0x16a97a50>"
|
||||
]
|
||||
},
|
||||
{
|
||||
"metadata": {},
|
||||
"output_type": "display_data",
|
||||
"png": "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 truncated
|
||||
"png": "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 truncated
|
||||
"text": [
|
||||
"<matplotlib.figure.Figure at 0x12447410>"
|
||||
"<matplotlib.figure.Figure at 0x13fa23d0>"
|
||||
]
|
||||
}
|
||||
],
|
||||
"prompt_number": 501
|
||||
"prompt_number": 513
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
@@ -2869,7 +2861,8 @@
|
||||
"ax[1].set_xlabel('Easting (m)')\n",
|
||||
"ax[1].set_ylabel('Northing (m)')\n",
|
||||
"cb1.set_label('Total magnetic intensity (nT)')\n",
|
||||
"cb2.set_label('Total magnetic intensity (nT)')\n"
|
||||
"cb2.set_label('Total magnetic intensity (nT)')\n",
|
||||
"fig.savefig('obspred.png', dpi = 200)"
|
||||
],
|
||||
"language": "python",
|
||||
"metadata": {},
|
||||
@@ -2879,11 +2872,11 @@
|
||||
"output_type": "display_data",
|
||||
"png": "iVBORw0KGgoAAAANSUhEUgAAAuEAAAGaCAYAAAChTZ0NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsvVmTHMeRLvpFVlU3FhJLUzsJCNuslzMDAtDGkuaMEQJ+\ngERwNG/X7Igg510SSJ1jVzbHxu5ckD9AIvALhgBf7uOgoTvnDosaiWADI82mQ7JBCaS4A91cQABd\nlXEeIrzS08sjMqt6q+6Oz6wsIzMiPCMjIz2j3L/0MNZai4SEhISEhISEhISEFUO22g1ISEhISEhI\nSEhI2GhIk/CEhISEhISEhISEFUaahCckJCQkJCQkJCSsMNIkPCEhISEhISEhIWGFkSbhCQkJCQkJ\nCQkJCSuMNAlPSEhISEhISEhIWGGkSXjC2GFmZgYnTpzAkSNHcODAARw4cABnz54tlTl27BiyLMOB\nAwdWqZVLi6effhoHDhxAlmV44oknVrs5CQkJCVE89dRTmJqaQpZlfV3MdfZy6bGQrpyZmcHOnTtx\n5cqV2rIuXry4LG1JSKiLNAlPGCs89dRTOHLkCP7qr/4Kly5dwiuvvIILFy7g9OnTOH78eL/chQsX\n8PDDD8MYs4qtXTp8//vfxyuvvAIA6+aaEhIS1i9+8IMf4Pr169i+fTuMMXjllVf6OvuZZ57BU089\nVdLZS4WQrtyxYwc+9alPDSXr9OnTmJ+fX/K2JCTURZqEJ4wNpqen8cQTT+Cpp57Ct771rf7xvXv3\n4sKFC/18QlpnKiEhIWF1MTU1NXDs6NGjOHToEC5evLioSe4w2LdvH15++WUcPHiwdp3p6ek0eU5Y\nVaRJeMLY4NSpUzDG4OTJkwN5e/fuxdGjR/HUU0/htddeW/nGJSQkJCTUxt69e2GtxUsvvbTaTVHx\n2GOPAUjGnITVRZqEJ4wF5ubmcPnyZezYsQPbtm1Ty+zbtw+As14QrLU4e/Ysjhw5gqmpqQFe3vT0\nNI4cOYLjx4/jkUcewZEjR3D58uV+/qlTp/r5jz/+eOk4cR2vXr2Kp556Cvv378fTTz+Nxx9/vJ/3\n5JNPlspPTU3hpz/9aaV8nj81NYXf+73fK11XQkJCwlrG7OwsjDHYt29fVJ8SFqMrH3vssT4/XfK8\nSe6RI0f6ck+dOtUvd+LECRw/frxUL+nthBWDTUgYA7z00kvWGGMPHDgQLHP69GlrjLFPPPGEtdba\nhx9+2Bpj7NNPP22ttXZ2dtYaY+xjjz3Wr7N//347Pz9fyr98+bK11tqTJ0/aI0eO9MueOHHCHjt2\nrL9//vx5a4yxp06dsrOzs3b//v399p04ccJOTU2V2nf48OG+7DryT548aY0x9urVq9Zaa7/5zW+W\nri8hISFh3LFv3z6bZVnp2DPPPGONMfbxxx/vH4vp06XQldPT09YYYy9evNg/9vDDD/fPQfqf3hfU\nRno/8HMlvZ2wUkiW8ISxwKi8PGMMvve97wFw7s+TJ0/izJkz/fzZ2VlcuHChn3/69Gns2LEDs7Oz\nOHv2bN8lCQCPPPIIpqen+3QX692UV69exd69e3Hu3DmcO3cOAPDkk0/ixo0beO655wA4S/7U1FSf\nj1glf25urp+/Z88eAO6j1ISEhIS1Bmtt39pM0azOnDmDH//4x6UywKA+XSpduXPnztL+7Owsnnvu\nOZw6dQoAcOPGDezcubPvUdWQ9HbCSqO52g1ISACABx54AABw/fr1YJlXX30VALB///7+MalQaf/K\nlSs4ePAgvvnNb+LEiRP9c3znO9/Bnj17cP78eQDAT37yEzz77LP9c+/fvx+zs7N9BQu4cIi8jZTe\nt28f/u7v/g7f/va3cebMmZLbcmZmJip/x44dA9eyd+/eeCclJCQkjCGMMbh06VKtslKfVuniUXUl\n6WB6Jxw6dAjvv/9+rTpJbyesFNIkPGFscOjQIczMzGB+fh7bt28fyCeO4Te/+U0AzvpsAx/VkLI8\nd+4cpqenceHCBTz77LM4depUPw9wVoyHHnoo2q4jR46ox0+dOoXHHnsMV69exbPPPlt6CdGfiZB8\n4hHytvB0QkJCwnqE1KfLpStjBh0NMzMzSW8nrDgSHSVhbEAL8nA6CWF2dhYXL17ED37wg76V+vr1\n65idnS2Ve/XVV2GMwZ49ezAzM4OHH34Y3/72t/GTn/wE169fx8mTJ3HhwoX+i0B+uX/+/HlcvXq1\ndCykZB999FEA7sMesu4QvvSlL0XlUz7FmKVrTEhISFjPkPp0uXRlSC5RCGVoxZMnTya9nbDyWF1K\nekJCGWfOnLHGGHv+/Pn+sVdffdXu27fPHj9+vFR23759dmpqyp45c8Zaa+2NGzfszp07+x/e0Mee\nXNbp06f7+ceOHbPGGDszM9Mvf/jw4X7Zc+fOWWOMnZ2dDbb3scceK32kw1El/8SJE3b//v12bm7O\nWlt88MM/LE1ISEgYZ+zYsWPgw0wNMX26FLrywoUL1hhjp6en+8cOHz5sd+7caaenp+2NGzfsww8/\nbJ977rlS+fPnz9sLFy7YRx55ZMnakpBQF2kSnjB2mJmZsSdOnLCHDx+2+/fvt/v377dnz54dKHfg\nwAE7Pz9vH3vsMXvs2DF7+PDh/gSb5Bw/ftyeOnWqn8+/1rfWTaJ37txpd+7caY8fP97/Uv6ZZ56x\n+/fvt1mW2cOHD/cn+hKzs7OlL+klQvJ5/v79++3x48f70QOyLOu/EBISEhLGEadPn+7ryCzL7M6d\nOwf0K+HMmTOV+nQxuvL8+fN9+QcOHOhPtOfm5uyJEyf6cvn7wVo3oTbG2CNHjpTOl/R2wkrBWDt+\nkepnZmZw48YNzM3N4cKFCzh16lT/4wf64pn4wydPnuzzh2N5CQkJCQnLg6SzExISEobHWE7Cp6am\n8Nprr2Hbtm04e/Ysnnnmmf5Hb0eOHOmn5+fn8d3vfrcfNk7mPfroo/0vnBMSEhISlgdJZyckJCQM\nj7H8MJOUOeBif1IM6ZmZmdLHFNu3b++vcqXlpZWsEhISEpYfSWcnJCQkDI+xnITzZcvPnDmD06dP\nA0ApTidhamoKly9fDuZduXJl+RuckJCQsIGRdHZCQkLC8BjbOOFXr17F+fPncfz48X68zljczxs3\nbtSWPerqjAkJCQmEMWTyrSqSzk5ISBhnjKPOHttJ+N69e/H9738fzz33HI4fP45/+Id/wNTUFObm\n5krlrl+/DmNMMC+M/8dvQzfFsp/xP/gtz5Mw7Ef5cgsAuSI/5pj4KQC5eIA8f50XldZ2Or9sUxbI\nq3MOkvuPvt2ybVo7ZJt42zJRR/Yp7/eQfCmPl+V1/j8A/0XUy1C+R7LdWpv4dchr1Nogx4McQ1XX\n/FMAf4H4PYpdf6jNywULfVwP2w5eblglK59tjtCzAgD/bcjzrH8sv87+0TK0ejnxj3DP41rDP2Lt\ntfsfsfbaDKR2ryT+ZrUboGLs6Cizs7N4+umn+/tHjx7F9PQ0XnvtNezfv19V0gcPHsTevXuDeWHI\nCY42yQvlxxCa5BrlWKbkDQOL4SbIsj000ctr1skiP+06eRv5T070IbZa38h2y3MNc49kHd6Hde4v\nvy7tTwtHqL1aPsngsmMyhr1e7VpifyJWAtrYqAvZJ8M+R/K6Y2Modg83LlZWZyckJCSsH4zdJPzq\n1at4//33+/uzs7PYuXMn9uzZgwceeKBUdnZ2tr9S4aFDh4J5IbTb96LdvheALaXL+0C7fV8/refd\nFyhHecand4Fe4O32rv5+kUZA5mC6aMd97Fz31pCxi7WDt8uytCZD1tPan4lrsdi1a5to432gyQ3v\nk3Z7d79ekebnku3IWN5uL3+XkE95JHM3O8778T7Wxl3YtasIkVaux/vj3opr2S3av1ukZR+Xx0G5\njVROyrBCBhT5vP28j+8T8uVYkueuGo/D5vFn7T7l3Hx8h2Ro43iUNspnvvxsFf26q3+uhAIrq7OL\n8Sz3Q+nlyBsXGcshf9eu7WPfRpkO6+zxaeO49+Mw8kcZI6vdB+OKsaOjHD16FHNzczh79iympqZw\n4cKF/tf0gFva/Omnn8a+ffvw4osv9pc6r8qrRh0r4DDWVdrGrGZVljVujdszxLnryIshVF+zOIaO\nOWzf/gcVbayyLIYsxzwtr2lxltzt2/8A165Judr4qPJ2aCC5mjVbg6SncBmyDV+sOK+UK89d1xq+\nWOs7x54hylY9T4tBqB80JEs4x+rp7HHHntVuwEjQdfZ4w+ns1W7FKNiz2g0YCWtxjIwrxjJO+HLD\nfeTzf/u9pZpMqGdC/ckWR6xcjPes0V2A6olV7FwyXTUBITpBrtTh7eAca0kH0agX8pp5uqpPNToL\n7cdkyD9TWp9KuZJGgop6GnibJM2lbv9W3S85LrW8qkl/qHxdVNE+tHPH/gQuN52Gn+uHY/mRz3qF\n09k/Wu1mJCQkrFn8zVjq7LGjo6wcyu7uxbnWQ+U093aVfF42ZzJylN343CVPNBDNtV52/3N5ZQpK\nxtw3RPUYhhogaQJUrqCWFGlNhkbFyNl1y3ZQ+3XKidwvt0O2kWTwPpBUEtmPGi1GXouki/B6hvU/\n3d97hXyNtiIpJxo1SObxa+N9QGNJytBoQ5L2RO3Vyg3zPHH6Dm8jHwdAefzHnhk7Yjvq5llw2lfC\nymKtuL5TG1Mb11ob13sfjCvGjo6yclhOC7h2nmHPJetwyyhBs0DmGLRIWpYnj1H90MdtS9FPo37M\nFrJsDtumkCVcti32gZ9GQ6lzXdo18I8vq2gu2j5HqM10PFPKaTK1vFi/16VuxFCH2mTFrw5NaLmw\nlDSchISEhISNjg1MR/nbUC5Lr0bX0EueaAfaxIpTH3gdjc7B5fItoE9+aF+jiGSITzq1dmLine truncated
|
||||
"text": [
|
||||
"<matplotlib.figure.Figure at 0xea1ba50>"
|
||||
"<matplotlib.figure.Figure at 0x133c4190>"
|
||||
]
|
||||
}
|
||||
],
|
||||
"prompt_number": 497
|
||||
"prompt_number": 514
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
Reference in new issue
Block a user