{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Mise a la masse experiment\n", "\n", "Here, we deomstrate setting up a 3D mise-a-la-masse experiment. A point electrode is connected to a conductive target at depth and potential measurements are taken on the surface" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "from SimPEG import Mesh, Maps, Utils\n", "from SimPEG.EM.Static import DC\n", "\n", "try: \n", " from pymatsolver import Pardiso as Solver\n", "except ImportError:\n", " from SimPEG import SolverLU as Solver\n", " print(\"Using LU solver. Will Be slow\")\n", "\n", "import matplotlib.pyplot as plt\n", "plt.rcParams['image.cmap'] = 'viridis'\n", "\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Mesh" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "cs = 10. \n", "core = 600. \n", "npad = 16\n", "ncore = np.ceil(core/cs)\n", "\n", "hx = Utils.meshTensor([(cs, npad, -1.3), (cs, ncore), (cs, npad, 1.3)])\n", "hz = Utils.meshTensor([(cs, npad, -1.3), (cs, ncore)])\n", "\n", "mesh = Mesh.TensorMesh([hx, hx, hz], x0=-np.r_[hx.sum()/2, hx.sum()/2, hz.sum()])" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "643264\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "mesh.plotGrid()\n", "print(mesh.nC)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Conductivity Model" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "sigma_background = 1e-5\n", "sigma_target = 1e-1\n", "\n", "sigma = np.ones(mesh.nC)*sigma_background" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "target_thickness = 30. \n", "target_width = 100.\n", "target_length = 200. \n", "target_center = -450.\n", "target_dip = -80. " ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "# find the coordinates of the top and bottom of the place\n", "dz = 0.5 * target_length * np.sin(np.deg2rad(target_dip))\n", "dx = 0.5 * target_length * np.cos(np.deg2rad(target_dip))" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "target_line = lambda x: np.tan(np.deg2rad(target_dip)) * x + target_center" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "target_right = target_line(mesh.gridCC[:,0] - target_thickness/2.)\n", "target_left = target_line(mesh.gridCC[:,0] + target_thickness/2.)\n", "target_top = target_center - dz \n", "target_bottom = target_center + dz \n", "\n", "target_inds = (\n", " (mesh.gridCC[:, 2] <= target_right) & (mesh.gridCC[:, 2] >= target_left) &\n", " (mesh.gridCC[:, 1] >= -target_width/2.) & (mesh.gridCC[:, 1] <= target_width/2.) &\n", " (mesh.gridCC[:, 2] <= target_top) & (mesh.gridCC[:, 2] >= target_bottom)\n", ")" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "sigma[target_inds] = sigma_target" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "import ipywidgets" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "def plot_model(i=mesh.vnC[1]/2):\n", " i = int(i) \n", " fig, ax = plt.subplots(1, 1)\n", " plt.colorbar(mesh.plotSlice(np.log10(sigma), normal='Y', ax=ax, ind=i)[0], ax=ax)\n", " ax.set_xlim([-250, 250])\n", " ax.set_ylim([-800, 0]) " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "2705caea90204de4a778944053f3c747", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(IntSlider(value=46, description='i', max=92), Output()), _dom_classes=('widget-interact'…" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ipywidgets.interact(\n", " plot_model,\n", " i = ipywidgets.IntSlider(min=0, max=mesh.vnC[1], value= int(mesh.vnC[1]/2.))\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "src_a = np.r_[0., 0., target_center]\n", "src_b = np.r_[0., 1500., -cs/2. ]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(-800, 0)" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEWCAYAAACJ0YulAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAH3tJREFUeJzt3X+0XWV95/H3hziAYjMmTRHyQ4ljdMQfpTQEWusUFUnIsqB27MROByxDUzpk2s4qVWJWayvNUvHXjKuMetWs6lRMmVaGjERDonVc1oUkOvyKgFxBzSVYGoNgB43k3s/8sZ97Odycc+6595579jnJ58XaK3s/+9l7P/uSPN/7PM9+9pZtIiIiAI6ruwAREdE/EhQiImJCgkJERExIUIiIiAkJChERMSFBISIiJiQoxECS9GZJX2nY/mdJz6uzTBFHgwSF6FuSfkXSVyU9KumgpH+QdFazvLafafv+OSrHCkk/kfTXk9J/TtJ1kn4o6RFJn5qL60f00tPqLkBEM5LmA58Ffg+4HjgeeAVwqIbiXAvsbpL+mZL+XOBx4CW9LFTEXEhLIfrVCwBsf9r2qO0f277Z9h3NMkuypOeX9adLep+k75ZWxlckPb3sO6e0Pn4o6XZJ57YrhKR1wA+BL0xKPx9YBvyx7UdtP2H7/876riNqlqAQ/epbwKikT0i6QNKCaRz7XuAXgV8GFgJvAcYkLQFuAv6ipF8J/J2kn2t2ktJaeQfwR012nwPcC3xC0g8k7Zb0q9MoY0RfSlCIvmT7MeBXAAMfBf5J0jZJz253nKTjgEuBP7D9YGllfNX2IeC3gO22t9ses70T2AOsbXG6q4GP297XZN9S4Hzg74FTgPcBN0paNP27jegfCQrRt2zfbfvNtpdS9dcvBv7rFIctAk4Evt1k33OBN5auox9K+iFV4Dl1ckZJZwDnAR9ocZ0fA9+x/fHSdbQV2Ae8vJN7i+hXGWiOgWD7Hkl/BfzuFFkPAD8B/hVw+6R9+4D/Yft3OrjkucBpwPckATwTmCfpdNtnAncAv9Zp+SMGRVoK0Zck/WtJfyRpadleBrwJuKXdcbbHgC3A+yUtljRP0i9JOgH4a+DXJK0u6SdKOnf8GpMMUQWWM8ryYarxiNVl/w3AAkmXlHP9W2AJ8A+zvvmIGiUoRL/6EXA28DVJ/48qGNxF80Hfya4E7qR6XPQg8G7guDI2cBHwNuCfqFoOf0yTfwe2H7f9/fEF+GfgJ7b/qew/CFxYrvUocBVwke0DM7/liPopH9mJiIhxaSlERMSEgQsKktZIulfSsKSr6i5PRESvSXqjpL2SxiStbJNv2vXlQAUFSfOoXjlwAXA68CZJp9dbqoiInrsLeAPw5VYZZlpfDlRQAFYBw7bvt/1TYCvVwGFExDGjzOG5d4psM6ovB22ewhKqJ0bGjVA9oTJB0npgPcA85v3iM5jfu9JFxMD6EY8csN30lSedWv3Kk/yDg6Md5f36HYf2Us2pGTdke2g2159kyvqymUELCmqS9pTHp8oPdQhgvhb6bL26F+WKiAG3y3/73dme4wcHR7l1x3M6yjvv1Pt+YrvdeMAuqleoTLbJ9o0dXGLK+rKZQQsKI1Rvphy3FNhfU1kiIp7CwBhj3TmXfd4sTzGj+nLQgsJuYIWk5cCDwDrgN+stUkRExZgn3Fn3UQ/MqL4cqIFm24eBDcAO4G7gett76y1VRMSTxjr8bzYkvV7SCPBLwE2SdpT0xZK2w8zry0FrKWB7O7C97nJERExmzGgP3hJh+waq929NTt9Pw6vgZ1JfDlxQiIjoZ2NTj+X2tQSFiIguMTCaoBAREePSUoiICKBqKTwx4G+eTlCIiOgS43QfRUREYRgd7JiQoBAR0S3VjObBlqAQEdE1YrTpK4cGR4JCRESXVAPNCQoREcH4PIUEhYiIKMbSUoiICEhLISIiGhgxOlgvnz5CgkJERBel+ygiIoCqpfBTz6u7GLOSoBAR0SXV5LV0H0VERJGB5oiIAMAWox7slkItpZf0Rkl7JY1JWjlp30ZJw5LulbS6IX1NSRuWdFXvSx0RMbUx1NEyG+3q0En5viPpTkm3SdrTybnraincBbwB+EhjoqTTgXXAi4HFwC5JLyi7rwVeA4wAuyVts/3N3hU5IqK9aqC5J9Vq0zq0hVfaPtDpiWsJCrbvBpCOiJYXAVttHwIekDQMrCr7hm3fX47bWvImKERE3+jVQHObOnTW+q3zawmwr2F7pKS1So+I6CujVkdLjxi4WdLXJa3v5IA5aylI2gWc0mTXJts3tjqsSZppHryafsqi3Ph6gBN5RgcljYjojmnOaF40qZ9/yPbQ+MYM69DJXm57v6STgZ2S7rH95XYHzFlQsH3eDA4bAZY1bC8F9pf1VumTrzsEDAHM18IB/wZSRAyasc6fPjpgu+Ug8Qzr0Mnn2F/+fFjSDVTd8W2DQr91H20D1kk6QdJyYAVwK7AbWCFpuaTjqQajt9VYzoiII1QvxDuuo2WuSTpJ0s+MrwPnUw1Qt1XXI6mvlzQC/BJwk6QdALb3AtdTDSB/HrjC9qjtw8AGYAdwN3B9yRsR0TeMeMLzOlpmo1UdKmmxpO0l27OBr0i6neqX65tsf36qc9f19NENwA0t9m0GNjdJ3w5sP/KIiIj+YNOTyWut6tDSXbS2rN8P/Px0z50ZzRERXTP7iWl1S1CIiOgS05uWwlxKUIiI6KJ8ZCciIoBqoDkf2YmICKDqPnqiN+8+mjODXfqIiL6ifE8hIiIqZlozmvtSgkJERBelpRAREUD15bW0FCIiAhgfaJ7dKyzqlqAQEdE1g/+N5gSFiIguqQaaM6YQERFFZjRHRASQGc0RETHJWFoKEREB1fcUnhhLUIiICMa7jxIUIiKiyIzmiIgAjo5HUmtp50h6j6R7JN0h6QZJz2rYt1HSsKR7Ja1uSF9T0oYlXVVHuSMi2qu6jzpZZnWVNnXopHzTrjfr6vzaCbzE9suAbwEbASSdDqwDXgysAf67pHmS5gHXAhcApwNvKnkjIvrKWPlO81TLLDWtQxvNtN6sJSjYvtn24bJ5C7C0rF8EbLV9yPYDwDCwqizDtu+3/VNga8kbEdE3qqeP5nW0zO46LevQRjOqN/thmPxS4HNlfQmwr2HfSElrlX4ESesl7ZG05wkOzUFxIyKaG5+81skCLBqvq8qyfoaXbaxDG3Vcbzaas4FmSbuAU5rs2mT7xpJnE3AY+NT4YU3ym+bBy82ua3sIGAKYr4VN80REzJVpdA0dsL2y1c4Z1qFPOUWTtCnrxDkLCrbPa7df0iXAa4FX2x4v6AiwrCHbUmB/WW+VHhHRF7r59NEM69BG7erTlup6+mgN8FbgQtuPN+zaBqyTdIKk5cAK4FZgN7BC0nJJx1MNRm/rdbkjIqbSo6ePWtWhjWZUb9Y1T+EvgROAnZIAbrF9ue29kq4HvknVJLrC9iiApA3ADmAesMX23nqKHhHRnC0O92ZGc9M6VNJi4GO219o+PJN6s5agYPv5bfZtBjY3Sd8ObJ/LckVEzFYvJq+1qkNt7wfWNmxPu97MjOaIiC45GmY0JyhERHRRgkJERAD5yE5EREzShVdY1CpBISKiS2w4nI/sRETEuHQfRUQEkDGFiIiYxAkKERExLgPNEREBVAPN6T6KiIhCjObpo4iIGJcxhYiIAPLuo4iIaORqXGGQJShERHRRnj6KiAigmryWgeaIiJiQ7qOIiJgw6E8f1dLOkXS1pDsk3Sbp5vJdUVT5oKThsv/MhmMukXRfWS6po9wREe3YVVDoZJkNSe+RdE+pJ2+Q9KwW+b4j6c5S1+7p5Nx1dX69x/bLbJ8BfBb405J+AbCiLOuBDwFIWgi8HTgbWAW8XdKCnpc6ImIKY1ZHyyztBF5i+2XAt4CNbfK+0vYZtld2cuJagoLtxxo2T6J6vBfgIuCTrtwCPEvSqcBqYKftg7YfofqBrOlpoSMiOmB3tszuGr7Z9uGyeQuwdLblHlfbmIKkzcDFwKPAK0vyEmBfQ7aRktYqvdl511O1MjiRZ3S30BERbRgx1vnTR4smdekM2R6awWUvBf6mZZHgZkkGPtLJ+ecsKEjaBZzSZNcm2zfa3gRskrQR2EDVPdSsTeU26UcmVjc9BDBfCwf8OYCIGDTTqHQOtOvSmaoOLXk2AYeBT7U4zctt75d0MrBT0j22v9yuUHMWFGyf12HW64CbqILCCLCsYd9SYH9JP3dS+pdmXciIiG5y954+mqoOLQ/cvBZ4td28Q8r2/vLnw5JuoBqTbRsU6nr6aEXD5oXAPWV9G3BxeQrpHOBR2w8BO4DzJS0oA8znl7SIiP7iDpdZkLQGeCtwoe3HW+Q5SdLPjK9T1Zt3TXXuusYU3iXphcAY8F3g8pK+HVgLDAOPA78NYPugpKuB3SXfO2wf7G2RIyKm1qN5Cn8JnEDVJQRwi+3Ly+P9H7O9Fng2cEPZ/zTgOtufn+rEtQQF27/eIt3AFS32bQG2zGW5IiJmw8DY2NwHBdvPb5G+n+oXa2zfD/z8dM+dGc0REd1iYMBnNCcoRER0Ud59FBERT0pQiIiIyuzfa1S3BIWIiG5KSyEiIoBq8loPnj6aSwkKERFdlaAQERHj0n0U0Vs79t8+q+NXL572fJ6IziUoREQEkMlrERHxVJm8FhERT8rTRxERMU5pKUREBNCVbyXULUEhIqJrlIHmiIhokJZCRERMGKu7ALOToBAR0S1HwTyF4+q8uKQrJVnSorItSR+UNCzpDklnNuS9RNJ9ZbmkvlJHRLQmd7bM6hrS1aWOvE3SzeXbzM3yTbverK2lIGkZ8Brgew3JFwArynI28CHgbEkLgbcDK6li8dclbbP9SG9LHf2g2WsqpvPqi2Z58+qL6JrejCm8x/afAEj6feBPgcsbM8y03uyopSDpC5LWTkob6rz8TX0AeAtP/RFeBHzSlVuAZ0k6FVgN7LR9sNzQTmDNLK8fETGQbD/WsHkSzUPRjOrNTlsKy4G3SjrL9p+XtJUdHnsESRcCD9q+XXpK/9sSYF/D9khJa5Xe7NzrgfUAJ/KMmRYxImJGptE1tEjSnobtIdsd/7ItaTNwMfAo8MomWTquNxt1GhR+CLwa+KCk/w381lQHSNoFnNJk1ybgbcD5zQ5rkuY26UcmVj/UIYD5WjjgD4dFxEAx03nNxQHbLX+5bleH2r7R9iZgk6SNwAaqrqKnnKJFCdvqNCjI9mHgP0l6M/AVYEG7A2yf1/RE0kupWh7jrYSlwDckraKKZMsasi8F9pf0cyelf6nDskdE9E6XfhVtVYc2cR1wE0cGhRnVm50+ffTh8RXbfwW8Gbi5w2Ofwvadtk+2fZrt06gKfqbt7wPbgIvLU0jnAI/afgjYAZwvaYGkBVStjB0zuX5ExFzq0dNHKxo2LwTuaZJtRvVmRy0F2x+ZtP114NJOjp2m7cBaYBh4HPjtcr2Dkq4Gdpd877B9cA6uHxExO73ptH6XpBdSTZX7LuXJI0krgcttXzbTerP2yWultTC+buCKFvm2AFt6VKyIiJnpQVCw/est0vcAlzVsT7verD0oREQcLbrRNVS3BIWIiG7KR3YiImJcWgoREfGkBIWIiADgKBhTqPUtqRE99ZnH0FkPoMX3obMegM88NvUxEdPlDpc+lZZCHBs+8xi68mH04/KvceQwXPlw9W/zDfPrLFkcZTTgH9lJSyGOCXrnD54MCONpPzZ65w9qKlFEf0pLIY4Krb6HMPHthAcPNz+wpLf6HkO+sxDT1sddQ51ISyGODUta/P7TKj1iJjp871E/D0YnKMQxwRt/Fj/9qZOK/HThjT9bU4niqJWB5ogB8Ib51b/Dd/6g6jJa8rQqIGSQObqtjyv8TiQoxLHjDfNxgkDMITH4Tx8lKEREdEufjxd0IkEhIqKbEhQiImJCgkJERIxL91FERDxpwINCLfMUJP2ZpAcl3VaWtQ37NkoalnSvpNUN6WtK2rCkq+ood0REW66ePupkmQ1JV0u6o9SfN0ta3CLfaEM9u62Tc9fZUviA7fc2Jkg6HVgHvBhYDOyS9IKy+1rgNcAIsFvSNtvf7GWBIyKm1JuWwnts/wmApN8H/hS4vEm+H9s+Yzon7rfuo4uArbYPAQ9IGgZWlX3Dtu8HkLS15E1QiIi+0osxBduN730/iS6Gojpfc7GhNH+2SFpQ0pYA+xryjJS0VulHkLRe0h5Je57g0FyUOyKitc5fc7FovK4qy/rpXEbSZkn7gH9P1VJo5sRy7lskva6T885ZS0HSLuCUJrs2AR8Crqb60VwNvA+4lGpC4GSmefBqGhltDwFDAPO1cMCHfCJioEzvvUYHbK9stbNdHWr7RtubgE2SNgIbgLc3yfsc2/slPQ/4oqQ7bX+7XaHmLCjYPq+TfJI+Cny2bI4Ayxp2LwX2l/VW6RERfUF0r/uo0zoUuA64iSZBwfb+8uf9kr4E/AJQT1BoR9Kpth8qm68H7irr24DrJL2faqB5BXAr1c96haTlwINUg9G/2dtSxyBq9j2EVt9OaKZZ3nxjIdrpxZiCpBW27yubFwL3NMmzAHjc9iFJi4CXA9dMde66BpqvkXQGVUPrO8DvAtjeK+l6qgHkw8AVtkcBJG0AdgDzgC2299ZR8IiItnrTaf0uSS8ExoDvUp48krQSuNz2ZcCLgI9IGqPqgn9XJ09s1hIUbP+HNvs2A5ubpG8Hts9luSIiZq03Tx/9eov0PcBlZf2rwEune+5+eyQ1ImJw5S2pERHxFAkKERExLh/ZiYiICek+ioiIyvQmr/WlBIWIiG5KUIiICOjujOa6JChERHSRxgY7KiQoxDEnr6mIOZMxhYiIaJTuo4iIeFKCQkREjEtLISIinpSgEBERQPVCvLzmIiIiIPMUIiJiMg92VEhQiIjoorQUIiKichRMXjuurgtL+s+S7pW0V9I1DekbJQ2Xfasb0teUtGFJV9VT6oiI9jTW2dKVa0lXSrKkRS32XyLpvrJc0sk5a2kpSHolcBHwMtuHJJ1c0k8H1gEvBhYDuyS9oBx2LfAaYATYLWlbJx+hjojopV49fSRpGVWd+L0W+xcCbwdWUrVfvl7qzUfanbeulsLvAe+yfQjA9sMl/SJgq+1Dth8AhoFVZRm2fb/tnwJbS96IiP5hqoHmTpbZ+wDwFlp3WK0Gdto+WALBTmDNVCetKyi8AHiFpK9J+j+SzirpS4B9DflGSlqr9CNIWi9pj6Q9T3BoDooeEdGa3NkCLBqvq8qyvuNrSBcCD9q+vU22juvNRnPWfSRpF3BKk12bynUXAOcAZwHXS3oe1WO+k5nmwatpdLQ9BAwBzNfCAR/yiYiB03mtc8D2ylY7p6hD3wacP8X5W9Wnbc1ZULB9Xqt9kn4P+IxtA7dKGgMWUUWyZQ1ZlwL7y3qr9IiIvtDNyWut6lBJLwWWA7dLgqo+/IakVba/35B1BDi3YXsp8KWprltX99H/Al4FUAaSjwcOANuAdZJOkLQcWAHcCuwGVkhaLul4qsHobbWUPCKiFRuNdbbM/BK+0/bJtk+zfRpV5X/mpIAAsAM4X9ICSQuoWhY7pjp/XfMUtgBbJN0F/BS4pLQa9kq6HvgmcBi4wvYogKQNVDc0D9hie289RY+IaKPGTmtJK4HLbV9m+6Ckq6l+qQZ4h+2DU52jlqBQniD6rRb7NgObm6RvB7bPcdEiImal1zOaS2thfH0PcFnD9haqX8I7lhnNERHdYiDfaI6IiAmDHRMSFCIiuikvxIuIiAmzebKoHyQoRER0y1HwltQEhYiILqkmrw12VEhQiIjopnyjOSIixqWlEBERlYwpRETEk2b3XqN+kKAQEdFN6T6KiAgA3LvPcc6VBIWIiG5KSyEiIiYMdkxIUIiI6CaNDXb/UYJCRES3mExei4iIinAmr0VERIMBDwrH1XFRSX8j6bayfEfSbQ37NkoalnSvpNUN6WtK2rCkq+ood0TElOzOli6QdKUkS1rUYv9oQ127rZNz1vWN5n83vi7pfcCjZf10YB3wYmAxsEvSC0rWa4HXACPAbknbbH+zpwWPiGinh2MKkpZR1Ynfa5Ptx7bPmM55a+0+kiTgN4BXlaSLgK22DwEPSBoGVpV9w7bvL8dtLXkTFCKir/Tw6aMPAG8BbuzmSWvpPmrwCuAfbd9XtpcA+xr2j5S0VukREX2kw66jWXYfSboQeND27VNkPVHSHkm3SHpdJ+ees5aCpF3AKU12bbI9HtneBHy68bAm+U3z4NX0pyppPbAe4ESe0XF5IyJmzUynwl8kaU/D9pDtofGNdnUo8Dbg/A6u8Rzb+yU9D/iipDttf7vdAXMWFGyf126/pKcBbwB+sSF5BFjWsL0U2F/WW6VPvu4QMAQwXwsH+zGAiBg8nfceHbC9stXOVnWopJcCy4Hbqx54lgLfkLTK9vcnnWN/+fN+SV8CfgFoGxTq7D46D7jH9khD2jZgnaQTJC0HVgC3AruBFZKWSzqeajC6o5H0iIhekt3RMlO277R9su3TbJ9G9cv0mZMDgqQFkk4o64uAl9PBOGydA83reGrXEbb3SrqequCHgStsjwJI2gDsAOYBW2zv7XF5IyKmVuM8BUkrgcttXwa8CPiIpDGqBsC7Onlis7agYPvNLdI3A5ubpG8Hts9xsSIiZs6G0d6+56K0FsbX9wCXlfWvAi+d7vkyozkiopsGfEZzgkJERDclKEREBFBmNCcoREQEUE1eG+x3ZycoRER0i+n5QHO3JShERHRTxhQiImJCgkJERFS6962EuiQoRER0i4HevTp7TiQoRER0U1oKERFR6f1rLrotQSEiolsMzjyFiIiYkBnNERExIWMKEREBVAEhTx9FRMSEtBQiIqJiPDpadyFmJUEhIqJb8ursiIh4igF/JPW4Oi4q6QxJt0i6TdIeSatKuiR9UNKwpDskndlwzCWS7ivLJXWUOyKiHQMec0fLbEj6M0kPljr0NklrW+RbI+neUqde1cm562opXAP8ue3PlZu5BjgXuABYUZazgQ8BZ0taCLwdWEn1c/+6pG22H6mj8BERTbmnH9n5gO33ttopaR5wLfAaYATYXerNb7Y7aS0tBaqKfX5Z/5fA/rJ+EfBJV24BniXpVGA1sNP2wRIIdgJrel3oiIipeHS0o6UHVgHDtu+3/VNgK1Ud21ZdLYU/BHZIei9VYPrlkr4E2NeQb6SktUo/gqT1wPqy+c+7/Lf3drHc7SwCDvToWr10NN7X0XhPkPuarefO9gQ/4pEdu/y3izrMfqKkPQ3bQ7aHpnG5DZIuBvYAf9Sk56RZvXn2VCeds6AgaRdwSpNdm4BXA//F9t9J+g3g48B5gJrkd5v0IxOrH+p0frBdIWmP7ZW9vu5cOxrv62i8J8h99QPbXevBmKIO/RBwNVU9eDXwPuDSyadoVsSprjtnQcH2ea32Sfok8Adl838CHyvrI8CyhqxLqbqWRqjGHBrTv9SlokZE9J12dWgjSR8FPttkV6v6tK26xhT2A79a1l8F3FfWtwEXl6eQzgEetf0QsAM4X9ICSQuA80taRMQxp4y1jns9cFeTbLuBFZKWSzoeWEdVx7ZV15jC7wD/TdLTgJ/w5BjAdmAtMAw8Dvw2gO2Dkq6mukmAd9g+2NsiT6nnXVY9cjTe19F4T5D7OpZcI+kMqu6g7wC/CyBpMfAx22ttH5a0geoX6HnAFtt7pzqxPODv6YiIiO6pq/soIiL6UIJCRERMSFCYAUnvkXRPeRXHDZKe1bBvY5lSfq+k1Q3p055u3kuS3ihpr6QxSSsn7RvIe2pmEMs8TtIWSQ9LuqshbaGkneX1LzvLgxhtXxnTTyQtk/T3ku4uf//+oKQP9H0NNNtZprlQPf30tLL+buDdZf104HbgBGA58G2qAZ55Zf15wPElz+l138eke3oR8EKqR31XNqQP7D01uceBK/Ok8v8b4Ezgroa0a4CryvpVDX8X1wKfo3pW/Rzga3WXv8U9nQqcWdZ/BvhW+Ts30Pc1yEtaCjNg+2bbh8vmLVTP/0I1hXyr7UO2H6B6imoVM5xu3ku277bdbPb3wN5TE4NY5gm2vwxMfuruIuATZf0TwOsa0pu9Mqav2H7I9jfK+o+Au6lm4g70fQ2yBIXZu5TqNxfowms6+tDRdE+DWOapPNvVXB7KnyeX9IG7V0mnAb8AfI2j6L4GTb6n0EK7Kea2byx5NgGHgU+NH9Ykv2kefHv+LHAn99TssCZpfXNP0zSjaf8DaqDuVdIzgb8D/tD2Y1Kz4ldZm6T17X0NogSFFjzFFPPyTYfXAq926eyk/bTyaU8377ap7qmFvr6naZrRtP8+94+STrX9UOlGebikD8y9SvoXVAHhU7Y/U5IH/r4GVbqPZkDSGuCtwIW2H2/YtQ1YJ+kEScupvgtxKzOcbt4njqZ7GsQyT2UbMP7RqUuAGxvSm70ypq+oahJ8HLjb9vsbdg30fQ20uke6B3GhGmzdB9xWlg837NtE9YTLvcAFDelrqZ6s+DZVd03t9zHpnl5P9VvYIeAfgR2Dfk8t7nPgytxQ9k8DDwFPlP9X/xH4WeALVO8P+wKwsOQV1QdWvg3cScMTZf20AL9C1f1zR8O/p7WDfl+DvOQ1FxERMSHdRxERMSFBISIiJiQoRETEhASFiIiYkKAQERETEhQiImJCgkJERExIUIhjhqSzyjv4T5R0Unl//0vqLldEP8nktTimSPoL4ETg6cCI7XfWXKSIvpKgEMeU8s6j3cBPgF+2PVpzkSL6SrqP4lizEHgm1Ve+Tqy5LBF9Jy2FOKZI2kb1xbXlwKm2N9RcpIi+ku8pxDFD0sXAYdvXSZoHfFXSq2x/se6yRfSLtBQiImJCxhQiImJCgkJERExIUIiIiAkJChERMSFBISIiJiQoRETEhASFiIiY8P8B+S30qXAJpR0AAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(1,1)\n", "plt.colorbar(mesh.plotSlice(np.log10(sigma), normal='Y', ax=ax)[0], ax=ax)\n", "ax.plot(src_a[0], src_a[2], 'ro')\n", "ax.set_xlim([-250, 250])\n", "ax.set_ylim([-800, 0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Survey parameters\n", "\n", "Specify the receiver locations" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "rx_x = mesh.vectorCCx[(mesh.vectorCCx >= -300) & (mesh.vectorCCx <= 300)][::2]\n", "rx_y = mesh.vectorCCy[(mesh.vectorCCy >= -300) & (mesh.vectorCCy <= 300)][::2] \n", "rx_z = np.r_[mesh.vectorCCz.max()]\n", "\n", "rx_locs = Utils.ndgrid([rx_x, rx_y, rx_z])\n", "plt.plot(rx_locs[:,0], rx_locs[:,1], '.')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "rx = DC.Rx.Pole(rx_locs)\n", "src = DC.Src.Dipole([rx], src_a, src_b)\n", "survey = DC.Survey([src])" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "prob = DC.Problem3D_CC(mesh, sigmaMap=Maps.IdentityMap(mesh), Solver=Solver)\n", "prob.pair(survey)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Compute Data" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "%%time\n", "dpred = survey.dpred(sigma)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "plt.colorbar(\n", " plt.contourf(\n", " rx_x, rx_y, \n", " dpred.reshape(len(rx_x), len(rx_y), order='F'), 30,\n", " ), \n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.6" } }, "nbformat": 4, "nbformat_minor": 2 }