{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Populating the interactive namespace from numpy and matplotlib\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Vendor:  Continuum Analytics, Inc.\n",
      "Package: mkl\n",
      "Message: trial mode expires in 29 days\n"
     ]
    }
   ],
   "source": [
    "from SimPEG import *\n",
    "import simpegDCIP as DC\n",
    "from simpegem1d import Utils1D\n",
    "%pylab inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# DC Forward Modeling of Schlumber array"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here we test the accuracy of DC forward modeling using analytic solution."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Step1: Generate mesh"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "cs = 25.\n",
    "npad = 11\n",
    "hx = [(cs,npad, -1.3),(cs,41),(cs,npad, 1.3)]\n",
    "hy = [(cs,npad, -1.3),(cs,17),(cs,npad, 1.3)]\n",
    "hz = [(cs,npad, -1.3),(cs,20)]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "mesh = Mesh.TensorMesh([hx, hy, hz], 'CCN')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nqw44eCh89fl85OY6yt2ya/VesPD5DIJBCUWB117z8PrrEj16GMyZE+Pxx81ItnNngzfeUDj9dIP8\n/GofouB3zOjRUXJzYcmS0rUBlwtOPlnlhBM03n7bwc6dErt3l7Bxo8w//+lm5Upz3q1YUdrSEVKX\nkjVEs5v58+dz3nnnsWjRIvsqN57nn3+eDz74gKVLl9q3tWnThh07dti/W+aT6TSlhEa0kNZQohuL\nxSgqKiISidhlafE+aalIdo7wemHrVolp0xxs366wY4dE9+4G27dL5OdLeDzYZpR33KHy2GMxBg40\nI+iOHTOzvZ0gfbz6qotZs8yUwPz5Zp13SYk5D8NhCUmyrrYkZs1y8cMPMqNGxRgzJpoguJC6ZCxd\nJIu7qqopy0AXLlzI//7v/zJ//nw8ntKNIeeffz6vv/460WiUbdu2kZ+fz8CBAznqqKPSZkoJjSTS\nraueutUZQ1VVgsEguq7bi2Txx+H3G5SUpP5Os9IJhgE//ww33WR+DAMH6jRpojJunMo337h44w2Z\n4mKJL7+U+PJLc6y331YIBEqL0/furdVbFjRicnMNCgslTjxR5cABie++M7eajx7t5ccfZd57z0m/\nfho//2zOrcGDfVx+eYyZM8O88IKTH34oO3+DwbL26w3hj2adp6led8KECUSjUXtB7YQTTmDmzJl0\n796diy++mO7du+NwOJg5c6b9/JkzZ3L11VcTCoUYNmxYginlmDFj6NKlC82bN+f111+v9ftoFKIL\n6Yt0rWqJWCyG1+sttyytovaODgfousSkSQovv6wwdqzGokVw3XUaCxcanHlmjPPPVxg3TmPwYBet\nW5snz9atEtOnKwluwCUlmdVLVJA+CgtLvc9OOcXM095/f5ibb45x8sk+zjpL5b33SiXgrbdC9O1r\nXkGVF9EeTvbrkFp08yvIv02ePJnJkyeXuT1dppTQCNILUPeRbnleaZYxpSzL5Obmpuy7W1kjc1WF\np582/+wzZjg4/XSd3r3N13M4zM5O1uv7fGbut3Nng/PPN+ssH3xQNLgRVI+lSx08+aSZXli5UuHA\nAfP277+XbSv1Tp10W3AhsWQsHlOM6/2QyyXTXSOgkYgu1LynbvIYyVTWmay840hl2bNkicTAgU7e\neMOc6E8+GaNHD4M33zTHuuoqJ++95+L++z0sWCBz4IApuh4PHDhgjnX11U6GDFHp1cus1LjsstpV\n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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x104395510>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "mesh.plotGrid()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Step2: Generating model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "sighalf = 1e-2\n",
    "sigma = np.ones(mesh.nC)*sighalf"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Step3: Design survey: Schulumberger array"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"http://www.landrinstruments.com/_/rsrc/1271695892678/home/ultra-minires/additional-information-1/schlumberger-soundings/schlum%20array.JPG\"> </img>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### $$ \\rho_a = \\frac{V}{I}\\pi\\frac{b(b+a)}{a}$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Let $b=na$, then we rewrite above equation as:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### $$ \\rho_a = \\frac{V}{I}\\pi na(n+1)$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Since AB/2 can be a good measure for depth of investigation, we express "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### $$AB/2 = \\frac{(2n+1)a}{2}$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "matplotlib.rcParams.update({'font.size': 14, 'text.usetex': True, 'font.family': 'arial'})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "ntx = 16"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "xtemp_txP = np.arange(ntx)*(25.)-500.\n",
    "xtemp_txN = -xtemp_txP\n",
    "ytemp_tx = np.zeros(ntx)\n",
    "xtemp_rxP = -50.\n",
    "xtemp_rxN = 50.\n",
    "ytemp_rx = 0.\n",
    "abhalf = abs(xtemp_txP-xtemp_txN)*0.5\n",
    "a = xtemp_rxN-xtemp_rxP\n",
    "b = ((xtemp_txN-xtemp_txP)-a)*0.5"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-600, 600)"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\njZy3QesAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10e08b5d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(1,1, figsize = (12,3))\n",
    "for i in range(ntx):\n",
    "    ax.plot(np.r_[xtemp_txP[i], xtemp_txP[i]], np.r_[0., 0.4-0.01*(i-1)], 'k-', lw = 1)\n",
    "    ax.plot(np.r_[xtemp_txN[i], xtemp_txN[i]], np.r_[0., 0.4-0.01*(i-1)], 'k-', lw = 1)\n",
    "    ax.plot(xtemp_txP[i], ytemp_tx[i], 'bo')\n",
    "    ax.plot(xtemp_txN[i], ytemp_tx[i], 'ro')\n",
    "    ax.plot(np.r_[xtemp_txP[i], xtemp_txN[i]], np.r_[0.4-0.01*(i-1), 0.4-0.01*(i-1)], 'k-', lw = 1)    \n",
    "\n",
    "ax.plot(np.r_[xtemp_rxP, xtemp_rxP], np.r_[0., 0.2], 'k-', lw = 1)\n",
    "ax.plot(np.r_[xtemp_rxN, xtemp_rxN], np.r_[0., 0.2], 'k-', lw = 1)\n",
    "ax.plot(xtemp_rxP, ytemp_rx, 'ko')\n",
    "ax.plot(xtemp_rxN, ytemp_rx, 'go')\n",
    "ax.plot(np.r_[xtemp_rxP, xtemp_rxN], np.r_[0.2, 0.2], 'k-', lw = 1)    \n",
    "\n",
    "ax.grid(True)    \n",
    "ax.set_ylim(-0.2,0.6)\n",
    "ax.set_xlim(-600,600)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.text.Text at 0x10ee9dcd0>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZwAAAEiCAYAAADNgWQ8AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3U1vG9mZL/D/IwewVyYt3w9gkc7epOjcXSK03hYO7gDR\ni3tmNQO0LA5w7Wxi004CRFkktqSsbAxsUb2eiSU5K2nRlhSoe3ktS72PRPYXsF68soG0nruoU1Sx\nVFV8LxbJ/w8gRNZzqniqSNajOudUlagqiIiIWq2v3RUgIqLewIRDREShYMIhIqJQMOEQEVEomHCI\niCgUPZ9wRGReRIarLBsXkRURibW6XkRE3aanE46IzAM4U9Xtasqr6gmApwCqKk9EROd6NuGIyAiA\nGVV9Ust8qroPoCAiD1tTs+YQkRER2TWPA3NklhCR9yIy0O760TkRSbXjMxGRe/b32Dw/EJEz8zjy\n+P6kTNl5Ez8TkZmw6x3EfMePW10vEXnL31HtejbhAMgBeF3nvK8B1JSowmSS6SsAk6qaUdWbAJYA\nvAeQAsAmwWjJAkiE+YYicg/AhKouAoCq5s33ZA+AAvjCfHcyAAZN/d6LyLCq5gDYzdBRO3P8CMAH\n82ilWQCbbF6vTU8mHBGJw/rBvHdPF5FV89/LgfnvbsJjEdsA4j6xKMgBWFXVH+wJptlw0rzsb0el\nyNcwQtxxi0gC1j8ksx7hYwAC4MSeoKqnsJqS4ZjntJV1rJeqnqjqTVX9W4vfpwhgDcByK9+n2/Rk\nwgGQMX8LrumrAGKqOmb+29sy08qYvhzncqImAeu/0jIm6eyFXx3yY/oRE7B28mGZB/De+Q9JFYrm\nb6r51elYSwAm2bRWvV5NOHbzxZFr+jHK/9PcBQARuVFhOVHzHsCIOUp76PpBTJm43RZ/bNriv3BM\ns9vnH3pMmzDt/ZumP+iVo93/tSk/KSKHzmlm+j1z1PjWPJx9AvYyvhGRmOmDurAMN8dRqXO58/YR\naqX3dsQfOeKlkYhmeqm/wrzXkVn+jHn/TRM/cC+30noDsI+S503saYVtvisiz+rdXsYErH+mamH/\ncxX4D4uILJn1sPt+njlijxzftxlT1t6WgX2ipmzQ92zFfBfLvruO+f0+g0eO5b402/K94/P8lVh9\nbPb72Ed69lEOYLUoUDVUtecesJqWzgDc8ojFTPwVrITjV+4MwOt2r4vP+sUcdbcfx2adBlxlJ0z8\nC8e0ATPtN45pw2baMzPPKwA/Arhhnp8BuOoo/xDAS8freVgJ/qrrfWOO8u56zFTaxgA2AbzzWh/7\n/at47yUAB45lPANw5HidMuWPzHJjAN6aaQcAbplpB875qnzvC9u/ym1e7/YaMfN9FbA9z5zfE1j/\nWB3a7+2YVrYcWK0BBx71n/GYdgbgKwBXzfqdARiuUHd7/YO+Z17f3Uqfgf3+zuWeuZY743ztmH4A\n4Jt2/+Y75dH2CrRlpc9/LF+4pk+aL9BX5kdtfzH9Es7Tdq9LhfUcNj/Sf5gfqv1DTznKjLi3BYC4\nx4/WLvcP8zoG4Ffmuf0jf+Yov+v4gdvLe+rxHs55zgCsOF6/tXdwAevoXm7ZjrDSezvKO9fVXp+H\n5nXaYwc04TGfnQRuVLveOP/nxyvh+G7zBraX/X6/8onbCefAfIa75vlL57Ld29lMewXgQ4XPx96W\nr4PK+dQt8HvmqtdvavgM7Hncn7fzn44Vr20Lq7XgKKjefJw/erJJTVXtvptSk5hYHakrsL6EX6vV\nvn3da35TFgDetbKe9TBNPPOA1WejqllV/SmAmzg/9G9khN2WWfapmo5ZtZoWtgDcM3VIACio6kcz\nj90cM2o3acDa1ocoHzG3ANMmbm9jrdzPkIfVTGibhNUsajcZVXrvtImX+vP0vKlkxPVezkEmdqd5\nwWNavMr3rtaFbW7Us71OKsRtI2pGqanVCf+flZZtvmvXTfPeM7O+wPn2cPL67XiVcy6/0vfMS8XP\nwOwP9nA+IGLWPOKmOTMOIBGw/lEbqRdZP2l3BdooD2AMwNfmtXMn8bX5Mj8y05IAvnfMmwZwrC0e\nCVOnfliH/2XtyubHuigiSVzckboF9U2995k+D2uY6AysAQuvHDF7275S1a8vzHnuKaxtbv/wXwWU\ntS0AmDb9NbuwfvxJx84h8L1FZNI9LYC7zw8I3oFXu97O+gzA+o/ZOQrMb5vXs73sBNn0kYpmWz4z\n9firqj4WkbMK9ahV0PfMS7WfwRKAJbFOKRhU1VkRsRNPf8D7xFH/uvScnjzCMXKwOtbt/3L2cL7z\nOoD1Y07D+o8qL6ZT3XiC6HYUHsH6z8yvE/YU/jswW9DoO6+dLtQaAVeAtV0GVfXvjrD9fmXLNUdj\npRP0zE52DdZOdKLKhP4eVlNHxvyH7f5PvNJ72/GkI2Yn3M0q3r9S3YLeG7iYsBZgNR05+W3zmreX\n4+j+wijGRjhaCFZV9S+q+r05MmiqCt8zL/Ygh0rfPXt48wqAv5rnS7D+OXsUkKwGUPsAjJ7VswnH\n/FhzcIyjV9XHqtpvmhDuqupHtYZIX7e/2Oa/uINq/2Nto2ceI3USsI5+njom2zugMVMmDtNkAeB/\neSw3aPiuPcS3bJSUnp+zcE/MuUvmfVZwsWnFrttSwPvALCMBq1lkwYw2emRGI5WO4Cq9t4nnUX5O\nyiysI9i/uN7S2cRq70y9tofUsN6l7W9iA6r6vdfyfFS9vRxyAG77xOwjn2tVLstdt0GgtJ72KQVJ\nOT9Bst9nPr9pXjy/Z17LMgm22u/eGqzvU968XjF/PUfmiYjdHFvLtu9t7e5E8nrAGhU0A6sTdgUX\nR8w8hNUh/hBmpEmlWMB7TaDC6BhH2RgcHZZRfMDaEf4D56N/7DbrFfPcawDEBM47iV/jfFTWGawf\npR3/0fz17dyFdYb3VZ/YMzP/kXmvCx3lptyB3zI8yi456up87Nby3ub7smu20WucD3iwB5L8aLbr\nQ/PddE6zv6tHjmm/quG9n5nYgR1zvW+lbV719nLMc4TywSP3zHLOzHsemc/+wm/IfB92HeWeOrbh\nkXl8A2v0nj3ttet7ZG/LFM5H/P0Ij5Fg1X7PYP3u7Xp9QPlAgYrfPTP/N65pKwHf09Vq68uH2Wbt\nroDHhxjDxWGUzqGWu66yqwGxlVbVk4+mfub2f/aA1YRR7U4n4dxJO6bPwLooa9vXLUrby7WMYbiS\nMh81bb8ROIbj81HdI4pNakmU94+8B5AQkavmELbUnq1Ws9gwUDq8dccqdY5TNLyH1RGcgPWfaLX9\nY7MArunFdnxB5X6qTlbv9ipRqy9kptIJl+RrUlX9miXJR+RGqanqnrMNHlZn37GqfjQ/MHcn65E5\na9gvdksvtolTtLyCNRDjJawfctAwV6c/A4iZQR7O0VfvcH5xyW5U7/Yqo9aVz/ebWbFeoarZdteh\nE0Uu4QAXziW4B6uJBAgeylltJydFjFpXLF6sY75TWFda7in1bi+idotik1qJGbb4Vz0f7vkBF08O\n64d17sWRT4yIiCIgkkc4ACDWbZ8PXe3zBXgkEbXG/Pf5xTyWzTODiYhqpKoNXdU8kkc49gAALT/3\nxW5zdpZLwJycp9aJm54xL47RJrWOTmmoTKtjf/jDHyJTl15av2Ytz7l+UVk3rl/nr18tZfzKN0Pk\njnBMorBvC2BPPoR1UhZwPrKmAOvkNeetZINiRETURpFLOGqdGex75KXlI2veVBsjIqL2imSTGtVv\naGio3VVoKa5fZ+P69TZpVttcJxERtddbRGpqn6ymfFAZxrozFpV6MMZYkEb2d+Z59w0aICKi7tOz\nRzjtrgMRUadp9AgncoMGwsImNcbYpNaZMWod93Z3N6k1ik1qREQUCiYcIiIKBRMOEVGL5HI5LC8v\nVy7osL297bmcsbGx0mNrawuZTNCd4M8Vi0UUi8Wa6tAqTDhERC2Sz+extFT9HahzudyFvpLR0VF8\n/PgRb9++xdu3b7G6uorZ2dmqk8jAwAByuRz299t/JwomHCKiFtja2sLp6Sn29/erSg5bW1soFov4\n4osvStMWFhawvb2Nly9flqbFYjGsra3h+Pi46rosLy9jamqqthVoASYcIqIWsI9uVLWqo5zZ2Vlk\ns+W3d3r8+LFnokilUkgmkxemF4tFzya5WCyGdDpdc/NeszHhEFHH2dj4DuPjv8fQ0BzGx3+PjY3v\nIrEsp729PczMzCCVSiGfzweWLRQKKBaLZf0ye3vWBfATiYTnPLu7uxemvX//Hrmc9x3HM5lMTc17\nrdCz5+EQUWfa2PgOv/71Nzg8/FNp2uHh7wAAd+78vG3LclpbW8Po6CgA4Msvv0Qul8P29jaGh73v\nfG4nl6tXr5amFQrWXdOvX7/uOU8sFrswLehcmXg8XnqfduERDhF1lOfP35YlCAA4PPwTXrzwvf1V\nKMtyWlpawr179wAAMzMzpWl+7OTiZB/ZfPjwoer3DTpZtr/fuj/lx48fq15es/EIh4g6yufP3rut\nT58utXVZtpOTE2xvb5cSjW1tbQ2np6eeRyZezWb2NK9kBFh9PgsLC3j37h3GxsbKYn191rHE1NQU\nXr9+XRZzHkWFjUc4RNRRLl/+p+f0K1d+bOuybPl8HgsLC9jd3S09VldXAQArKyue83glnHg8jsnJ\nSWxueh9tFYtFxGIxjIyMoFAooFAoYH5+Hul0uvTaOUigUChgcHCw7vVqilpuN9otD2u1Lc7n1aim\nfFAZxrozFpV69EJsff1bTSZ/q4CWHsnkE11f/9Z3njCWZYvH47q3t+c5PZlM+s6XTCZ1a2urbNrJ\nyYkmk0mdnZ0tmz41NaXb29sXlrG6uqqDg4Oey5+cnNTFxcXAuru3u8e+srF9b6MLaNUDwKbHtHkA\nZwCOYN2GOuWIJQA8BDBs/sYClq188MFHtB9B1te/1fHx3+svfvEHHR//fUMJolnLOj4+1kQioX19\nfXrt2jVdXl5WVStpjIyMaF9fn/b19Wkmk9GTk5ML86+trenU1JTnsmdnZ3V0dLT08Eo29jIymYxn\n3YKSna2Kz6Sh/Xrkbk8gIsMAkgBeqWqfKzajqp4DyUVkV1Uz5nkMwLKqTvuUVXu9ebVoxpoRi0o9\neiHWzaanp/HkyROkUqmmLjebzWJ6errspFIvla4Wrd12AzZV3VbV4EHrLiKShnXUYy/jFMBIs+tG\nRNRKKysrvoME6lUsFpHNZismmzB03Cg1EZkAcAJgFMBTk1wSZprTkYjcUtXvw64jEVG9JiYmmrq8\ngYGBpi6vEZ2WcHZVdR8AROQIwDaADID+ttaKiIgqilyTWhA72Tiep0XkKqzmtLirOJMQEVGEdEzC\nEZG0iFy4eJCqfgRQgEeCYXMaEVF0dFKT2iGAp/YLERkBsAoAqrrnvIaQiCQABF6bYm5urvR8Z2cH\nQ0NDTa0sEVEn29nZAVC+r2xUFIdFp2AGBABYhHU+zraJDcMaIABYQ6f/bI5w7PlGYB3t3HbGPN6D\nw6IZ47DoDo1R67R6WHTkEk4YmHAYY8Lp3Bi1Ts+dh0NE1Iny+Txu3ryJvr4+9Pf3Y2xsDJlMBplM\nBouLi1Utw+vmablcDmNjY6XH1tZW2X1z3IrFYtW3nw6dNnipgk58wHHZDFS4hIZbNeWDyjDWnbGo\n1KMXYlFWKBRURMquWba1taUiomtra4HzPnr06MIla0ZGRjSbzZZen5ycaCKR0P7+/sBlTU1NeV7P\nrRL3dvfYVza07+URDhFRk1y7du3CNPuma35XigaAra0tFIvFsqsBLCwsYHt7Gy9fvixNi8ViWFtb\nw/HxcWA9lpeXPW9N3W6dNEqtqVyj2uqet54yjHVnLCr16JZYN4nFYqUboHmZnZ0tu5UAADx+/Ngz\naaRSKSSTyYrvl06nsby8fOG+PJW4P5NmfkY9m3C0vCOs6vk4aIAxr1hU6tFNsSDfbWzg7fPn+Mnn\nz/jn5csYe/AAP79zJ3CeMJZlc65XPp9HX18fcrmcZ9lCoYBisVjWL2PfCtrrPjkAsLt74ZTECzKZ\nDJaWlmpOOM66uwcNNKpnEw4RdabvNjbwza9/jT8dHpam/c48rzVRNHNZTktLS3j37h329vZwfHyM\nlZUV3Lhxw7OsnVycd+K0L+B5/fp1z3m87hrqFo/HS8uOCvbhEFFHefv8eVmCAIA/HR5i88WLti7L\nKZvNYmVlBQcHB9jd3cXk5CSy2axnWa+rQ9tHNh8+fKi7DnYT3sePnqcjtgUTDhF1lJ98/uw5/dKn\nT21dlp+BgQHMzs4in8/jhx9+uBD3ajazp/ndqmB2dhanp6el5rq+vj5cunTJs6zzyKnd2KRGRB3l\nn5cve07/8cqVti4rSFC/r1fCicfjmJycxOam9xW6isUiYrEY7t69i5/97GeeZQqFAgYHB+urcIvw\nCIeIOsrYgwf4nWuU1m+TSYzev9/WZTm5E8za2hqSyaRnP046nUYikbhw0ufy8jL6+/svNMVNT0/j\n8ePHAKy+nFu3bpUeTu/evcPdu3cbWo9m46VtOEqNsSbEolKPXogBVmf/5osXuPTpE368cgWj9+83\nNEqtGcvK5/NYWFhAsVhEPB7H4OAgjo6OcHJygtHRUczPz/s2b7158wavX7/2PFcnm82WNa09fvy4\n4t07T05OkMlkcHBwUNM6tPrSNkw4TDiMNSEWlXr0QqxbTU9P48mTJ0ilUg0vK5vNYnp6uubbSrc6\n4bBJjYgoAlZWVnwHCdSiWCwim83WnGzCwCMcHuEw1oRYVOrRCzFqHR7hEBFRV2DCISKiUDDhEBFR\nKHq2D6fddSCiYL24b2q3ShfobLQPJ7JXGhCRTVUddU1LAJgAsAcgDSCvqqeVYl44aIAxDhqIdoza\nI2jQQKMil3BEZBhAEsCwR3hFVTOm3C6ArwFM+cSWAUy3vsZERFSNyPXhqOq2qubd00UkDeDIUe4U\nJin5xEZaX1siIks+n8fNmzdLF9MsFosXytixmzdv4i9/+Uvg8uxL3TiX29/fj7GxMYyNjeHmzZul\nS9xUUiwWPesTOtXG7lHdqgeAM9frSVhHMc5pBwBSAbFbPstWG2q8d3o15YPKMNadsajUoxdiUVYo\nFDSZTKqI6MLCQllsdXVVk8mk9vX1abFYDFzOo0ePdHt7u2y5IqKLi4sXpuVyuarqNjU1pXt7e4Fl\n3NvdY1/Z0H49ckc4AfzvzwpcvJE4EVHI+vv7SxfjfP36dVlsa2sLk5OTvv1WznLFYrHsSgH2PPF4\nvDRtYGAA6XQaa2trVdVteXnZ85bVYeqkhPMBQNw1rR+AwmpO84oREYVucnISe3t7OD09H7dUKBSQ\ndF2Z2svs7KzvzdrcVBXXrpX/v10sFi9ceRqwriydTqexvLxc1bJboZMSTgEeSURVvwdQDIh5mpub\nw9zcHABgZ2enWXUkohBsbGxgfHwcQ0NDGB8fx8bGRiSWZR+JzM7OArD6XwDrNtKjo6O+89kKhQKK\nxSIymUzg8gHrSGh/f7/0Xrb3798jl8t5zp/JZLC0tFR5RXC+X3TuKxvWaJtcqx5w9eGYabuO5wkA\nr6uJeSzHt82ykmrKB5VhrDtjUalHL8TW19c1mUwqrNYNBaDJZFLX19d95wljWaqqx8fHOjU1paqq\nyWRSBwcHVVU1l8tpsVjUpaUlFRHfPpzV1VU113osc3h4qCKig4ODOjU1pVNTUzo6Oqpv3ry5UHZt\nba30vm72+/txb3ePfWVD+/UoDotOARgFoCLyDMCmqtrHhzMi8hDW0c5tADOOWYNiRNQlnj9/jsPD\nw7Jph4eHePHiBe7UeB+bZi7LbWJiAouLizg9PcXe3h5ueNx8za3S1aKz2Sy++uqrwDIa0EfU3281\nBH38+LEtt56OXMJR1X0A+wAWAmIA8KbaGBF1j8+fP3tO//TpU1uX5fbll19icXERuVyuqr4bwPt2\n09XY2trC2NhY2bS+PqvHZGpq6sIAhnYkGyCCCYeIKMjly5c9p1+5cqWtywJQusMnAKRSKSQSCeTz\neWxtbVU1f70JZ2RkpHR0tLq6itevX5dGr9lHNYB1BDU4OFjXezRDJw0aICLCgwcPLhwxJJNJ3L9/\nv63LAqzBAc5mscnJSYhIaYiznYz8mr3sIdVeo8wA4Pj42Pe9b9y4gRs3bmBgYKDstfNo5t27d7h7\n925tK9VMjXYCdeIDHDTAGAcNdGxM1ersHx8f11/84hc6Pj5edyd/M5f16NEjFRHt6+vTmzdvaqFQ\n0L29PZ2enlZV1cnJSb127Zr29fVpMpksO4nTaW1trTTwQNXq6LdPGL127ZqOjY0F1mNtbU0zmcyF\n6cfHx5pMJgPndW93j31lQ/teXi2aiCKpF/dNtunpaTx58gSpVKppy8xms5ieng689XSrrxbdswnH\nXm9eLZqxZsSiUo9eiPWKN2/eYGJioinLKhaLOD09xa1btwLLtfoW00w4TDiMNSEWlXr0Qoxap9UJ\nh4MGiIgoFEw4REQUCiYcIiIKBRMOERGFggmHiIhCwYRDREShYMIhImqCXC6H/v5+9PX1YXFxsSw2\nOjqKvr4+9PX14fbt24HL8bqsTS6Xw9jYWOmxtbXle88cwDrvplgs1rciLcTzcHgeDmNNiEWlHr0Q\ni7JisVi6Ntvh4WHpumaAdaa/iODly5e+8+dyOYyPj5ddDWB0dBQ3b94szXd6eop0Oo2TkxN8+PDB\nd1n1XK2A5+EQEXUIVcXIyAgA67YAToODg0in077zbm1toVgsliWbhYUFbG9vlyWpWCyGtbW1wAt5\nAsDy8vKFOrQbEw4RURPF43Gsrq5ib2/vQtNakNnZWWSz2bJpjx8/9kwaqVSq4j12YrEY0uk0lpeX\nq65DqzHhEFHH2djcwPh/jGPo34cw/h/j2NjciMSybBMTE5icnEQul8P+/n7F8oVCAcVisaxfZm9v\nD4D/PXJ2d3crLjeTyWBpaanKWrdez96AzXlV1EpXSA2at54yjHVnLCr16JaYn43NDfz6v36Nw9T5\nraEP/8t6fme0tttCN3NZbsvLy9ja2sLU1BQODg4Cy9rJxXnvGvu+OtevX/ecJxaLVaxDPB4vLbta\n7s+kns/IT88e4dj3Z3A+r+ZRTfmgMox1Zywq9eimmJ/n//28LEEAwGHqEC/+50XgfK1ellssFsPq\n6ioKhQIeP34cWNZ50zabfWQTNDCgEvtunx8/fqx6Hr/PqBk6LuGIyLyInInIkYjsikjKEUuIyEMR\nGTZ/K/8LQEQd5bN+9pz+6exTW5flZXh4GPfu3cPCwgLev3/vW86r2cye5pWMAKvP5/T0FPl8vjTk\n+tKlS55lnUdO7dSJTWoHquqXKFdUNQMAIrILYBnAdGg1I6KWuyyXPadf6bvS1mX5efXqFba2tpDP\n55HP5z3LeCWceDyOyclJbG5ues5TLBYRi8Vw9+5d/OxnP/MsUygUMDg4WH/lm6zjjnD8iEgawJH9\nWlVPAYy0r0ZE1AoP/u0BkvvlI7SSe0nc/9f7bV0WYPXFePWZrK6uBs6XTqeRSCQunPS5vLyM/v7+\nC6PXpqenS810sVgMt27dKj2c3r17h7t379azKi3RiUc4EJEJACcARgE8NcklYaY5HYnILVX9Puw6\nElFr2J35L/7nBT6dfcKVviu4/3/v19XJ38xl5XI5LC4uQkTw05/+FJubm7hx4wYAaxjzo0ePAuef\nn5/H0tIShoeHS9NisRgODg6QzWYxNjZWmv748ePAW0UDwMnJCfb39ysmuzB13JUGRCSlqvv2cwDL\nqpoRkXsARlR12lH2AMCkO+HwSgOM8UoDnRvrZvVcHcBPNpvF9PR0xcTk1OorDXTcEY6dbOznIpIW\nkauwmtPiruL9fsuZm5srPd/Z2cHQ0FBzK0pEVKOVlRW8efOm4YRTLBaRzWYvNLHVYmdnB0D5vrJR\nHXWEY/pp8vbAADPtTFX7fGJHqnoh6fAIhzEe4XRujFqn1Uc4nTZo4BDAU/uFiIwAWAUAVS3rqROR\nBADv4R1ERBS6jmpSU9VTETkRkRkzKQlgxlFkRkQeAigAuO2KERFRG3VUk1qzsEmNMTapdW6MWodN\nakRE1BWYcIiIKBQ926TW7joQUbBe3De1m1S4MnTPnYfTLOzDYYx9ONGOVdr5UWsE9eE0qmcTDhFF\nW5SSX6fHainTSuzDISKiUDDhEBFRKGpOOGJdt4yIiKgmVSUcEZkR6+6aZwBOxLrj5jsR+U2L60dE\nRF0icNCAWJf/XwWwB2AFQB7nNzlLAPjfYt0C4J6q/r2VFSUios7mm3BEZADAEwCDat3gzK9cHMAz\nsa7MzBudERGRp8AmNVWdDko2psyJqmYBBJYjIqLe5ptwVLVYzQJE5GUt5YmIqDdVfeKnaWJbhdV3\n4xQD8J/NrBQREXWfWq40sAnrPjMrAE4c0x81tUZERNSVakk4/ap60z1RRA6bWB8iIupSVV8tWkTm\nAfxDVb92TX+qqk9aUblW4dWiiYhq1+jVomtJOAMADgEoAOcAgQFVvdRIJcLGO34yxqtFM9ZLsVrK\n+JVvxh0/a2lSs08A3QbwwTH9XiMVaCYRSQCYgFXPNIB8pWHdREQUjloSTkJV+90TI9aHs6KqGQAQ\nkV0AywCm21slIiICaks4eRH5lar+zTU9A+BNE+tUFxFJ4/yyO1DVUxEZaVd9Nja+w/Pnb/H5809w\n+fI/8eDBGO7c+TljHRKr/3PfwPPnz/H582dcvnwZDx48aGh5Fd9vcwPP//s5PutnXJbLePBvjb/f\ndxsbePv8OX7y+TP+efkyxhzrwFjzYl7Tf37nTkOxyFPVqh4AdgGcwWpO23U8fqx2Ga18AJiEdYTj\nnHYA4JZHWbU5n1ejmvIANJn8rQJaeiSTv9X19W8Z65BYrZ8/AF1fX9dkMqmw+jnNeyTrWl41sfW3\n65r8l6RiDqVH8l8ae79v19f1t8mkOjfMb806MNbcmNf0b9fXG4pV0sj+zjxvbD9ddUHgGMAzAPOu\nx1GjlWjGA1ZfUmQSjnNHZj/Gx3/PWIfEav38AejY2Jg6k43zUc/3qVJs7N/HypJN6dHAMn83NnZx\no5h1YKxjro9qAAAOzUlEQVS5Ma/pvx8fbyxWQbsTTi1Nak9VdcE9UUTe1bCMVvoAIO6adqHPyTY3\nN1d6vrOzg6GhoZZUyunTJ//BfIxFP1bJ58+f6563rvfT5r/fTwLWgbHmxrxc+vSp6bF67ezsACjf\nVzaq6oTjlWzM9LWm1aYxBXgkGPW5grW9Ef/4xz+GkmwA4MqVHxnr4Fglly9frnveut5Pmv9+/wxY\nB8aaG/Py45UrTY/Vy94vOveVDfM79AEwDOCLag6TAKQATDR6uNXoA8Cu43kCwGufcp6HjNWopjzg\n1T/wJKDvgLGoxWr9/IGI9OH8n+b34TwJ6I9grP6Y13S/fppqY5U0sr8zzxvaRwee+GmuLjAA4JXZ\nmX90xYcBzJo9eNuHH5sbxo3AOtq5DeDP7jqbcmqvd6tO/Fxf/xYvXmzi06dLuHLlR9y/P4o7d37O\nWIfE/D7jSid+bmxs4MWLF/j06ROuXLmC+/fv45e//GXNy6s2trG5gRf/8wKfzj7hSt8V3P/X+/jl\nWGPv993GBjZfvMClT5/w45UrGL1/H78w68BY82Lfrq9fmP7zO3cgInXHqtk31bu/a8aJnxWvNGCG\nFi/BSjxuBQA5VW37sOha8EoDjPFKA4z1UqyWMn7lQ7nSgKpuAUias/jTsJqqCgAKqrrXyJsTEVHv\nqGXQQAFWoiEiIqpZ1Rfv7CbCq0UTEdWs5U1q3Yp9OIyxD4exXonVUsavvEhDuQYA0FfDG99q+N2I\niKhnVZ1wAPydSYeIiOpVS8I5BpAVkbci8pWIXG1VpYiIqPvU0oczqar7QOmEz69N5/uSqv69JbUj\nIqKuUUvCuQYAInIDwKh5xAAci8g0gLd68V45REREAGprUsuLyDewzsWZBPAIwDVVzapqFsB1EflN\nKypJRESdr5aEkwBwCmBUVW+q6rKqnjricQDZptaOiIi6Ri1NaouqmguIfwlgq8H6EBFRl6rl0jZB\nyQaqOth4dYiIqFvV0qRGRERUNyYcIiIKBRMOERGFgleLJiKiqvBq0XXi1aIZ49WiGeuVWC1l/MqH\nerVoIiKiRnRUwhGReRE5E5EjEdkVkZQjlhCRhyIybP7G2llXIiIq12lNageq6pckV1Q1AwAisgtg\nGcB0aDUjIqJAHXWE40dE0gCO7Nfmkjsj7asRERG5dVzCEZEJ02z2zNFslgBw4ip6xBvGERFFR6c1\nqe067slzBGAbQAZAf60LmpubKz3f2dnB0NBQc2pIRNQFdnZ2AJTvKxvV9vNwRGQGQDKgyKaqbvvM\newbrKtVjAO6p6pgjdgTgC1X93mM+5bBoxjgsmrFeidVSxq+8ed7Z5+Go6nI15Uw/Td4eGOCY/6OI\nFOBxlOOVbIiIqD06qQ/nEMBT+4WIjABYBQBV3XMWFJEEgM1Qa0dERIHafoRTLVU9FZET0wQHWM1w\nM44iMyLyENYdSW+7YkRE1GZt78NpB/bhMMY+HMZ6KVZLGb/yzejD6aQmNSIi6mA9e4TT7joQEXWa\njh+l1i5sUmOMTWqM9UqsljJ+5UV4tWgiIuoQTDhERBQKJhwiIgoFEw4REYWCCYeIiELBhENERKFg\nwiEiolAw4RARUSiYcIiIKBRMOEREFAomHCIiCgUTDhERhYJXiyYioqrwatF14tWiGePVohnrlVgt\nZfzKd/XVokVk02NaQkQeisiw+RurJkZERO0XuSMcERkGkAQw7BFeUdWMKbcL4GsAUz6xZQDTra8x\nERFVI3JHOKq6rap593QRSQM4cpQ7hUlKPrGR1teWiIiqFbmEEyAB4MQ17UhEUgGxW6HUjIiIKuqk\nhNMfELsWWi2IiKguofThiMgMrH4ZP5uqul1hMR8AxF3T+gEorOY0r5ivubm50vOdnR0MDQ1VeHsi\not6xs7MDoHxf2ajInocjImeq2ud4nQKwbA8MMNOOVLXf9OHkvWI+y1YOi2aMw6IZ65VYLWX8ypvn\nDY2N7pgmNVXdd74WkQSATRPb84sREVE0RHFYdArAKAAVkWcob26bEZGHAAoAbgOYccwaFCMiojaL\nbJNaK7FJjTE2qTHWS7FayviV76kmNSIi6mxMOEREFIqebVJrdx2IiDpNo01qkRs0EBb24TDGPhzG\neiVWSxm/8iJdfLVoIiLqLkw4REQUCiYcIiIKBRMOERGFggmHiIhCwYRDREShYMIhIqJQMOEQEVEo\nmHCIiCgUTDhERBQKJhwiIgoFEw4REYWCV4smIqKq8GrRdeLVohnj1aIZ65VYLWX8ynf11aJFZNNj\n2ryInInIkYjsikjKEUuIyEMRGTZ/Y+HWmIiIgkTuCEdEhgEkAQx7hA9U1S9JrqhqxixjF8AygOnW\n1JKIiGoVuSMcVd1W1Xwt84hIGsCRYxmnAEaaXTciIqpf5BJOJSIyYZrNnjmazRIATlxFj0TkVsjV\nIyIiH5FrUqtgV1X3AUBEjgBsA8gA6G9rrYiIqKJQEo6IzMDql/GzqarblZZjJxv7uYikReQqrOa0\nuKt4YBKam5srPd/Z2cHQ0FCltyci6hk7OzsAyveVjYrseTgicuYcIGD6afL2wABnGZ/Ykap6Jh0R\nUQ6LZozDohnrlVgtZfzKm+cNjY3upD6cQwBP7RciMgJgFQBUdc9ZUEQSAC4MqyYiovaJXB+OObdm\nFICKyDOY5jZVPRWRE9M8B1hNdDOOWWdE5CGAAoDbrhgREbVZZJvUWolNaoyxSY2xXorVUsavfK81\nqRERUQdjwiEiolD0bJNau+tARNRpGm1Si9yggbCwD4cx9uEw1iuxWsr4lRfp4qtFExFRd2HCISKi\nUDDhEBFRKJhwiIgoFEw4REQUCiYcIiIKBRMOERGFggmHiIhCwYRDREShYMIhIqJQMOEQEVEomHCI\niCgUvFo0ERFVhVeLrhOvFs0YrxbNWK/EainjV55XiyYioo4RuYQjIikRmRGRhyKyIiIDjljCTB82\nf2PVxHrJzs5Ou6vQUly/zsb1622RSjgmSWRUdVlVFwEsAdh0FFlR1UVV3QaQB/B1QGw5tIpHSLd/\n4bl+nY3r19silXAAJAHkHK/fA0iIyFURSQM4sgOqegpgGAB8YiOh1JiIiKoSqYSjqnsoTxQZAMeq\n+hFAAsCJa5YjEUkFxG61rLJERFSTSA+LFpEVAH9V1b+JyD0AI6o67YgfAJiClZhGPWKTqvq9x3Kj\nu9JERBHVEcOiRWQGVnOZn03T9+Ke56+q+jcz6QOAuGu+fgAKqznNK+ap0Y1GRES1CyXhqGpNHfgi\nMgzgUFX/7phcgEcSUdXvRaTPL1ZrXYmIqDUi1YcDnA8AsJONiEwCgKruu8olYEawmb4fzxgREUVD\npPpwTKI4cE0+VNWfmngK1qCCAoDbAP5sBhQExoiImkVEVlV1yvE6AWACwB6ANIC8GSkbGOtFkUo4\n1Bj+EDpXp38e5h++DKy+1NsAcqpaNLGu+R6KyAiAt6ra55i2q6oZ8zwG4Gv7d+gRW3YObooSEZlw\nvlbVN2Z68z4/Ve36h9kgpYdjegLAQ1jn8zwEEKsmFsUHrKO7M9e0XcfzGIDVgNhKu9fBY51SAGbM\n9l8BMNCNn12nfB4BdY8BmHG8HgZwELBuHfU9dNXPbvK3p6VhJSBnuaNKsag9ADwC8CvHejo/l6Z9\nfm1f0W7ZkG1ex677IfTKTqxTPo8q6u/8bOIAzgBc7fTvoatuE+46Aph0f79gdQukAmK32r0urjrF\n/bZ7sz+/yA0aaCYRiQN4rGZotaqe6vnhbTdduWBEXQMn0PknyvbSVSc64fPwpT1wwrYZOes1EMn3\n9AsA11pUnWbLACiIyITjWpT2NSyb+vl1++0JShsS1oZJA1hTq225rg2pERtq3a0/BFXdM+3lttJO\nzLQbd/xn5xD0WXUEVf3B8fIerKZQoMO/hwBgdr5H6j0IqWnnB7ZRAta+cdP8vnZh/YN3E03+/Lo9\n4YS2IZup2hNlu/2H0M07MRe/z6rjtPKE7TZKA+gXkYx5HReRrwBsozvODywAKNj7EVU9NVffvwH/\nz6iuz68jE04NVy4IbUM2k1Z/omzH/RCidtWJiPD9rNpQl7p16wnbakZr2URkSVW/drx2xsrOD/SL\nRUzBY5rdSnCIJn5+HZlwatghh7Yh26ETfwg1fHYAuncn5qSq+x2yY/LlOGF737yeVNW1oHXroB0y\ngNKw5lkAKiK/AfDGNM/PiMhDnJ8DOOOYLSgWCapaEJETEYmZf8rjsH5zPwD4oZmfX9efh2Oa0YYd\nG3JTVW/bMccgggSAp6p6t1Isahw/hKewOtrfqGqx00+UNTsxde/EzPOu+OxsnfB5+OEJ253PNM/P\nAngH63N4ZTdpN/Pz64WEE8qGpObiToyo+3R9wiEiomjo6vNwiIgoOphwiIgoFEw4REQUCiYcIiIK\nBRMOERGFggmHqM3Mya31zDfguMgiUeQx4RC1kYjMw7okT83MWe7z5rwjoshjwiFqE3M17AHXZXtq\nNQNgtUlVImopJhyi9lkC8KqRBZj7/eyZC5wSRRoTDlGTiMi8iJyJyJG5kZX9+huPsgkAAwB2HdMe\nicixiOyKyDOznF3TVzNvXh949Nvswrp8E1GkMeEQNYmq5gAswLo9QgHWlXOXVHXco3jazPPRMf8C\nrKOeNID/p6r2Va8PAfzDvC7gYhOafXNBokhjwiFqIlV9DGAPwBqAR6r6nz5FEz7TBdadTe17/2xb\niy3ddmLLY94jABCRq3VXnCgETDhEzTcNIAXr7rJ+vO7VZCs6nn9wvXbfPruEV8SmqGPCIWq+RwDy\nAHIBQ5aDEk6tEghObkSRwIRD1EQicg/WfXuysJrDPIcsq+oegEK9J3263AbwugnLIWopJhyiJhER\ne5hzxtyFVQEMiMg7nysC5OAYXSYik7DOq0mJyFMRmQBwzyzjqUlOjwDEROSlmScOIKWqf2npyhE1\nAW/ARtRGIrIC6xbY+3XO/wrASoMnjxKFggmHqM1EZEJV39Qx3wCAmKp+34JqETUdEw4REYWCfThE\nRBQKJhwiIgoFEw4REYWCCYeIiELBhENERKFgwiEiolAw4RARUSj+Pz5OxS4SpyBaAAAAAElFTkSu\nQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10e069890>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(1,1, figsize = (6,4))\n",
    "ax.plot(xtemp_txP, ytemp_tx, 'bo')\n",
    "ax.plot(xtemp_txN, ytemp_tx, 'ro')\n",
    "ax.plot(xtemp_rxP, ytemp_rx, 'ko')\n",
    "ax.plot(xtemp_rxN, ytemp_rx, 'go')\n",
    "ax.legend(('A (C+)', 'B (C-)', 'M (P+)', 'N (C-)'), fontsize = 14)\n",
    "mesh.plotSlice(sigma, grid=True, ax = ax, pcolorOpts={'cmap':'binary'})\n",
    "ax.set_xlim(-600, 600)\n",
    "ax.set_ylim(-200, 200)\n",
    "ax.set_title('Survey geometry (Plan view)')\n",
    "ax.set_xlabel('x (m)')\n",
    "ax.set_ylabel('y (m)')\n",
    "ax.text(-600, 210, '(a)', fontsize = 16)\n",
    "# fig.savefig('DCsurvey.png', dpi = 200)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "txlist = []\n",
    "rx = DC.RxDipole(np.r_[xtemp_rxP, ytemp_rx, -12.5], np.r_[xtemp_rxN, ytemp_rx, -12.5])\n",
    "for i in range(ntx):    \n",
    "    tx = DC.SrcDipole([rx], [xtemp_txP[i], ytemp_tx[i], -12.5],[xtemp_txN[i], ytemp_tx[i], -12.5])\n",
    "    txlist.append(tx)\n",
    "survey = DC.SurveyDC(txlist)\n",
    "problem = DC.ProblemDC_CC(mesh)\n",
    "problem.pair(survey)\n",
    "try:\n",
    "    from pymatsolver import MumpsSolver\n",
    "    problem.Solver = MumpsSolver\n",
    "except Exception, e:\n",
    "    problem.Solver = SolverLU    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Step4: Run DC forward modeling"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "CPU times: user 5.26 s, sys: 554 ms, total: 5.81 s\n",
      "Wall time: 4.06 s\n"
     ]
    }
   ],
   "source": [
    "%%time\n",
    "data = survey.dpred(sigma)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$$ \\rho_a = \\frac{V}{I}\\pi\\frac{b(b+a)}{a}$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x10f990a10>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nm9M0u0dEpIEUDCLuvu2C+WbWV8z5ZtZnZiNAX5RjwIq7t7h7u7sn3F3rDIhI0aamphoyx/rU1NSm\nfPADAwMMDAyQSCQYHx9nYyP/v8nHxsYy5w4MDDA/P1/33xdpxnrYxHUUuOzub5pZK3DY3S8U+f1b\n7p43cOU7ZmbD7j5d5LXVJyJSpp3WJ7K8vMzCwgLf+EbjjQFaXV2lo6OD06dPZ8q3sbFBX18fqVTq\njnwl/f39dHZ28vLLL2fO7enpIZVKZZa1z6fRZqyPAUngmJmtANMEnetVY2ZHwtrKRBi0RESK0t3d\n3ZABBPIvBtna2sr09DTJZJLx8fHM/tOnT7OwsJAJIOlzZ2dnWV9fr0l5C4kaRM67+wV3H3X3TmAC\nOFuFcqUthvdbAM4BC1W8l4hI3XV3d2cCRNr4+Pgd2RbT53Z0dNSyeHcoa7Khuy8V03dSquw+kPBz\njyY7ikiu06dPMzQ0lMmBPj09ncmr3tnZmTmnra0t0+/Q3t5OIpFgdXWVsbEx2tvb6ezszKTKnZqa\nynz/xIkTJBKJzPlpW+VeX1paYmBggBMnTjAwMMDo6CidnZ0sLGz/b+F4PJ651tLSUmZfPouLi6X9\noVVI1KRUMWDJzM4Dc9WcG2JmPcCUu2/qNXL3jwp95/jx4+zfvz8oaCxGV1cXhw4dAuDSpUsA2ta2\ntrfYLsbIyAg//elPuffee3n11VeLSvRUzeulUinm5+e5ePEiEOT6MDMmJibYt28fZ88GjSWnTp1i\nbW2N06dP881vfpOJiQkSiQQdHR1MTU2xtrbGwMAAg4ODLC4uMjIyQjKZzASoM2fOMD4+vim/+la5\n1/v6+viHf/gHnnjiCS5cuMDw8DCzs7Pb5oQHaG9vB+Cjjz7K5DrZt29f3nNz0/nmk/33e+nSJa5e\nvbrtd4qWzi9czAs4STDJ8ChBM9YKcC7C928VewxoBY5kbR/e6l7BTxGRchTz/9EjjzziQFVeg4OD\nkcu8vr7uZuajo6M+NzfnyWTSk8mku7tPTk56R0dH5txTp055e3v7pu2WlpbM9uTkpLe1tRU8/8qV\nK25mvrS05OfPn3cz81Qqtakcy8vLmfNWV1fd3f3y5ctuZr6xsXFHuV988cU7flNPT0+mXOnvjo+P\nR/6zcd/67zQ8FikO5L6iNmctuXvS3Wf9dr/I6HZfMrNuMzsFeNhB3rfdMQ/mp6TCJVeGwyAynPcG\nIlIz9957LxBkBFxfXy/rAeTuPPbYY5nrTU1NRS5PLBbj7NmzzM/PMzAwQEdHxx0pbrNl1wT27du3\naTtfLSj7eLqGsLq6uin3+tDQECMjI5l7x+Nx4vE4c3PB9Lf5+fmi8runpa8Bt5uxCv2m0dHRgkOC\nayFqc9aamXV51sx0d09t9YXwnGVgGTgd8dgC6kwXaSivvvoqIyMjTE1Nld2UVYnrLS8vE4/HWVlZ\nYXV1lcnJScbGxirWV5D98F5bC1Z9isfjXLt2DSice31kZITJyUkuX76MmXH58uWi77exscHf/M3f\nAEFgO3r0aCYg5UpnX6yXqDWRY8CbZnbRzL5hZl3VKJSINK5YLMbMzExFAkglrnf9+nVGR4MGkQMH\nDmRqBJWSSqUyneFnz56lo6ODrq4uhoaGCuZeX1paYmZmhrNnzzI4OMjIyAi3bt3adN10QPKcORyj\no6P09vZuGpo8PT1Ne3t7JnVv2tDQ0KahwHURpdpJ2EdB0C8yAswAF8utzlbihfpERMrWjP8fzc/P\n++DgYObV39/vq6urPjs76x0dHd7S0uInTpzw2dlZb2tr85aWFh8fH990fHx83Ofn5zed7x70ifT2\n9vrY2Jj39vZ6IpHI9HO4uy8tLXlvb693dHR4b2+vX7hwwd2D/o54PO5mtuk1Ozvr7u5nz57N3Kut\nrc37+/u9v7/fe3t7t+z7GB0dzZzb39/vCwsL2/75bPV3SgX6RKLOWG8FEh40MzUUzVgXKd9Om7Fe\nrrGxMRYWFiI3jc3Pz3P69GlmZ2cz/SDj4+Mkk8mCzV/VUrdVfPPxoLM7E0DMrNW3WaBRRGS3mZ2d\nJR6Pb+pIb29v58EHH6xjqapj2z6RcMmRlXA13RUzeyFrwt9BM3u3ymUUEam52dlZpqenWV5e5pln\nnon03bGxMZLJJAMDA5mJiOvr6w27BEs5ik1KNQmsEkw27CdYcXfC3V8xsxUPhvrWlZqzRMqn5qyd\np97NWcfyBIjZ8OY94fyN+XIKICIizWu7mkhfI3ai56OaiEj5VBPZeRptKXgREZGM7YJIT6EDZtYa\n5vrYeT1FIiJSlO36RJbN7CJwiiAZVZwgCdUgcJmgw30ReKmahRSR2jErq3VDdpktg4i7z5tZHFjK\n2j0PjLr7qpnFgPzrE4tI01F/iERV9Ix1M+tx96Ws7VYg7lmJo+pJHesiItFUomM90rInjUxBREQk\nmqqOzgpnqj9aZEG6zexIOQUREZHms908kUngAHAGWPSc1LRhAqlRAHcfqmI5t6WaiIhINDVpzjKz\nwwSpcPMlBk4CY+5+oZxCVIKCiIhINDXtEwlHafUQDPNNAsnsjvZ6UxAREYlGHetZFERERKLRsici\nIlJXCiIiIlIyBRERESmZgoiIiJSs6CBiZl3VLIiIiDSfKDWRNxVIREQkW5Qgsg6cMLOLZva0mT1Q\nrUKJiEhziDLZsDu9Ym/WcicOnHX3N6tXxOJonoiISDS1nifSFt50P9AfvgaBITM7Y2ZPbHcBM5uL\ncszM4mZ2MlwM8mS4/LyIiDSIKDWRFeAKQfBIEmQ1nHH3jfD4MNDq7ndkOQxrLh3AGXdviXBs0d0T\n4edWYLrQQo+qiYiIRFPrtbNuAbMEzVcLeY6fJMh42LnVNXIDRaFjZtYDTLj7QNa+NXdvL/B9BRER\nkQhq3Zx12t2H0gHEzHJX9f1/BKlzKyUOpHL2rWmEmIhI49gyx3qO6znbg+Ey8Wfc/XV3761guQDy\n1jhERKRxRKmJHMzecPfTYVPTK5UtUsZ1IJazT4FFRKSBbFkTMbMZbj/IE2b2BmAEQ3uNoMlprUpl\nS5InaLj7O4W+cPz4cfbv3w9ALBajq6uLQ4cOAXDp0iUAbWtb29retdvpz1evXqVSislsGOd2ZsMl\nguABQfBYJ+hoXy3qZhE61sN92aOz4sAL7n6swPfVsS4iEkElOta37RNx9yTQb2an3P10KTcxs26C\nocFuZhPAXFYHfcFjwHA46itJ0Jw2XMr9RUSkOsrObGhmL7v7MxUqTznlUE1ERCSCqs4TMbNF4LX0\n5MFwsmE+B9x9TzmFqAQFERGRaKrdnDUFvJ21vQ/4Frf7RNJGyimAiIg0r4JBxN2ncnZNufuLueeZ\n2ZWKl0pERJpClGVPDhQ7Cqse1JwlIhJNrZc9uawlR0REJFuUmsgV4HK4+Zq7v161UpVANRERkWhq\nvYpvX9bcjiPAMYKlSc5uNYu8VhRERESiqclkwyxr4U0fIFjupCd8jwNfKacQIiLSnKLURBYJklIN\nEizRPkWwDMlG9YpXPNVERESiqXVNpIegNjLo7hfKuamIiOwMUYLItLuPVq0kIiLSdIoe4lsogJjZ\ny5UrjoiINBOtnSUisktp7SwREamrSqydlax4qUREpCmUnE+k0dbSUnOWiEg0NV07K8wwmG3QzC6a\n2RPlFEBERJpXlMmGM+4+lGf/mru3V7xkEakmIiISTdUnG5rZDBALNxNm9gZBx7qH73HC5VBERGT3\n2bYmYmZx4CxwAFji9uisNYLlT840Qt+IaiIiItHUehXfk/lGZzUKBRERkWhqnZQqZWZPm9kBM+sz\ns0UzO2dm+8spgIiINK8oQWQQSISf54BFYJJgUqKIiOxCkWoi7n4C6Ai3J919iaBfREREdqEoQSTt\nKJBshM50ERGpryhBZNHMLhKslTUZ9osUWpRRRER2gUjLnphZDMDdU2bWTbAoo6dzr9eTRmeJiERT\n69FZuHvK3VPh52V3nydo3iqKmc3l2Rc3s5NhzeakmbVmHZs0s1tmthaOBuuOUl4REamugjPWo+QT\nAZ7Z6iZm1kfQId+X5/CMuyey7jkNpJdXWXH3UvptRESkBmqSTyRs7lowszPZ+80snbc9fd6GmR3e\n7noiItIYouQTOVsgn8iVMu4f584hwmtm1uXu74TXPxKe0w+84O4bZdxPREQqaMsFGHNcMbOngQWC\nh/8kcAUYK+P+263+u+juyxCsFhzeO7H1V0REpFbqPWP9OrdXCU7LBJZ0AMn63GNmD5RxPxERqaAo\nNZGUu5/I6rOYdPdVMytnxnqSPLURd38n7C+ZSne6Zx37qNDFjh8/zv79+wGIxWJ0dXVx6NAhAC5d\nugSgbW1rW9u7djv9+erVq1RK5KRUYef4YXfvzN5f5DVu5Y62MrPFrNFZcYJ+j2PhUN/D7n4hPHYY\nGHb3YwWurXkiIiIRVD0pVY70jPXDwGg4bPcsQY6RLYXzO/oBN7MJYC5rguJwmHo3CRwEhiEzUitl\nZsPheR3pYyIi0hg0Y11EZJeqy4x1YL+ZPRF2dF9vhAAiIiL1UXQQCZNRrRA0X02Gu0fN7ImqlExE\nRBpelJrIWYI5Ie3AMkCYX+SbVSiXiIg0gahDfNMjpbL3587zEBGRXSJKTaQtzLGevcruSZTZUERk\n14oyTyROMFP9QNbuFNCXPbO8XjQ6S0QkmkqMzoo0xDe86VFuL5x4rlEWRFQQERGJpqaTDc1shqDW\nsa+cG4qIyM4RqU8EmKhWQUREpPlECSITQCp3FV0ze7myRRIRkWYRpWP9IsEckR6CPCIpYJ2giWtP\n1UpYJPWJiIhEU+sFGA8C5wgSQ2VTkigRkV0qShCZcvc7shiWmR5XRESaWOQhvo1KzVkiItHUfBVf\nERGRbAoiIiJSspKDiJkd2P4sEZHArVu3UJPzzhMln8jJnF2DZnZR+UREpJCNjQ3Onz/P8ePHue++\n+zh48CCPP/44qZTWbd0poswTmXH3oTz719y9veIli0gd6yL15+7853/+J9/97nf57ne/y+LiIn/0\nR3/En/zJn/Dtb3+bH/7whwAMDg4yMzNT59JK1eeJhOtlpfOFJMzsDcAAD9/jwFo5BRCR5vazn/2M\n73//+/zt3/4tV69eBeDJJ5/k61//Oo8++ij33XcfAP/yL/8CQCKRYGpqql7FlQrbMoi4+1C4BPxZ\ngmCxQRA8CLeXwmMisktcvXqV73//+5nXxsYGX/7yl/nss8+4efMmAL/4xS/40z/9003fe/XVVxkZ\nGWFqaopYTLnsdooozVmn3P10lctTMjVniVTexx9/zOXLl3n77bd5+eWX+a//+i/cnccff5z+/n4e\neeQRfvd3f5eWlhYef/xxvve975FIJJibm1OgaAI1XfakUAAxs9ZGySkiIqX7q7/6K9555x0++eQT\nfv/3f5//+I//4L333uP3fu/3OHjwIHv37uWXv/wlAHv37uWv//qvN31fNY3dqZSkVNmr+Bow4+5f\nqWipSqCaiEhxPv30U959911+9KMfbXqtrKxkhuD29vYyPT3Nl770Je6++24A1TR2oJpmNjSzPuA8\ntzva01yr+Io0nlQqxbvvvsvKygovvfQSH3zwATdu3ODTTz/loYce4ktf+tKm19e//nXeeOONgkEi\nlUqpprHD1DqIrADzwCybR2RNuPtAOYWoBAUR2W3cnQ8//JDR0VF++tOf8tlnn9HT08N7773HysoK\nn3zyCQ8//DAPP/ww//7v/84HH3wAwBNPPMGFCxfuuJ6CxO5T8yDi7p159h9w99VyClEJCiKy03zt\na1/jRz/6Ee7OU089xbVr13jvvfd4//33ef/99/nggw/43Oc+x40bN/jFL34BBMNn//7v/56HH36Y\nX//1X8cseD6oKUryqXUQOUnQdPVSzv4X3P3ZcgpRCQoi0gyGh4f58Y9/TEtLC6dOneLjjz/m5z//\ned5X9qzuL37xi3z1q1/loYce4otf/CIPPfQQv/mbv8l9991XVIBQLUPyqXUQWSTIaugE80PSN+4u\ntk/EzObcvT9nXxw4El6zhyBvycZ2x/JcW0FEau5rX/saP/7xj9mzZw9jY2PcuHGDa9euce3aNf7n\nf/7njs/pIbIADz74II8++ihf+MIXMq/f+I3fyHz+6le/yr/+679uW3tQgJBS1TqIrBNMLMy94fB2\ny56EnfIdwBl3b8k5tujuifBzK/CKuw8WODadb+mV8LiCiERy8+ZN/vd//5ePP/44856edb1nzx4G\nBwe5efMm6+vrpFKpzCt7+5NPPslc7/Of/zxf/vKXefDBB/n85z/Pgw8+mHmlt59++mnm5uaKalZS\ncJBqq3UQyTvZ0MyOuvtskde4lR1EzKyHnI759FpcWx0rcG0FkR3kV7/6FcPDw/zkJz9h7969vPTS\nS9x1113cuHGDGzdu8H//93+b3nP3fe973+P69esA/M7v/A43b97k448/3hQw3J3777+f+++/n899\n7nPcf//9/OQnP8k0I/3Wb/0Wf/mXf0ksFsu82traNn1+4okniqotpCkwSCOpy2RDM+sC4u7+upl1\nFxtACogDuct5rplZ9xbHutz9nTLuWRefffYZv/zlL7l582be962OZZ/zne98h2vXrnH33Xfz5JNP\ncs8992Q6T0t9Bzh37hwffvghd999N3/xF3/B3r17+dWvfsWtW7c2vRf6nL3vBz/4AalUipaWFhKJ\nBMAdvzHfK/uYmW1aOvyRRx4hHo9z7733cs8993DPPfcU/PyFL3yBTz/9lA8//BCA3/7t3+bv/u7v\nNgWL+++/n7179276M4DoHdDf+c53IgWFWCymhQdlRyk6iIT5Q+YIHu5XgNeBE2b2hru/XuL9t2oG\nayvxmjX3x3/8x/zbv/0bELRz5waM9CzfX/u1X2Pv3r13vOfbV+icn//85/zsZz8D4LXXXuPP/uzP\nADIP26jv6c/vvfce//3f/w3AP/7jP/Lnf/7n7Nmzh5aWFvbs2cOePXu46667Mp/T+7OPpz//4Ac/\nyDzAr1+/zrPPPnvH78x+5du3Z8+eskYUvfnmm6ysrJBIJPinf/qnor8bdda1goLseu5e1Au4SNDJ\nHSOYpZ7evxjhGrdyto8AF3P2rQFdWx0rcG3P93ruuefc3f2tt97yt956y9Oeeuqpip3/h3/4h5nt\nxx57zN9//30fGhqqSnkee+wxB3zfvn0Vvf4f/MEfOOCJRMLX19cr9uczNjZW8u/953/+Zx8cHCyp\nPE8++WTd/nvQ+dHP13Zttt966y1/7rnn/Kmnnsr8HXmRz+9CryhBZKbA55UI18gNIt3kBCFgLXzv\n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\nMgUREREp2f8P7ZpFX47AZacAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10ea722d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "appres = data*np.pi*b*(b+a)/a\n",
    "\n",
    "\n",
    "fig, ax = plt.subplots(1,1, figsize = (6, 4))\n",
    "ax.semilogx(np.r_[100., 500.], np.r_[100., 100.], 'k--')\n",
    "ax.semilogx(abhalf, appres, 'k.-')\n",
    "ax.set_ylim(90., 120.)\n",
    "ax.set_xscale('log')\n",
    "ax.set_xlabel('AB/2')\n",
    "ax.set_ylabel('Apparent resistivity ($\\Omega m$)')\n",
    "ax.grid(True)\n",
    "ax.text(100, 122, '(b)', fontsize = 16)\n",
    "ax.legend(('True', 'simpegDC'), loc = 1, fontsize = 14)\n",
    "# fig.savefig('comp_dc.png')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
