Fixed diverging UKF filter.

The UKF for the circle tracking was diverging. Also,
I have partially started the section on the ILS, but
much remains to be done on it.
This commit is contained in:
Roger Labbe committed 2015-02-27 16:23:53 -08:00
1 parent 457a938ce4
commit 458b12956e
3 files changed
+447 -70

No files matched your search

+277 -69
View File
@@ -1,7 +1,7 @@
{
"metadata": {
"name": "",
"signature": "sha256:5123227f02317fd83d71aa3ea353fa57c3d4ca1d4df752502464a6f416fc2d92"
"signature": "sha256:f703c39ccf197ee4e8df8f635110033a7e0d4b951edd2c89832e946c004b5836"
},
"nbformat": 3,
"nbformat_minor": 0,
@@ -260,7 +260,7 @@
"output_type": "pyout",
"prompt_number": 1,
"text": [
"<IPython.core.display.HTML at 0x7f35736aca58>"
"<IPython.core.display.HTML at 0x7f3e8034d048>"
]
}
],
@@ -300,9 +300,9 @@
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556efc160>"
"<matplotlib.figure.Figure at 0x7f3e63c4aa90>"
]
}
],
@@ -348,7 +348,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAv4AAAF0CAYAAABbpj2aAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl8leWd///X2XJO9hCyQBJkVUEBEVEBRRBFZRVBQEFa\nbR2ttYt2Zlr7m46dznRqO22/3abt2FZrVRRQUFRURJB9B2UXkEUIIQGykOWck7Pdvz/uhEUT1iT3\nWd7Px+N+JCZ3zvkkhpz3dd/X9blshmEYiIiIiIhIXLNbXYCIiIiIiLQ+BX8RERERkQSg4C8iIiIi\nkgAU/EVEREREEoCzuU+cOHGiLesQEREREZEWkpmZ+aWP6Yq/iIiIiEgCUPAXEREREUkAzU71OV1T\ntwpERERERCR6nGuqvq74i4iIiIgkAAV/EREREZEEoOAvIiIiIpIAFPxFRERERBKAgr+IiIiISAJQ\n8BcRERERSQAK/iIiIiIiCUDBX0REREQkASj4i4iIiIgkAAV/EREREZEEoOAvIiIiIpIAFPxFRERE\nRBKAgr+IiIiISAJQ8BcRERERSQAK/iIiIiIiCUDBX0REREQkASj4i4iIiIgkAAV/EREREZEEoOAv\nIiIiIpIAFPxFRERERBKAgr+IiIiISAJQ8BcRERERSQAK/iIiIiIiCUDBX0REREQkASj4i4iIiIgk\nAAV/EREREZEEoOAvIiIiIpIAFPxFRERERBKAgr+IiIiISAJQ8BcRERERSQAK/iIiIiIiCUDBX0RE\nREQkASj4i4iIiIgkAAV/EREREZEEoOAvIiIiIpIAFPxFRERERBKAgr+IiIiISAJQ8BcRERERSQAK\n/iIiIiIiCUDBX0REREQkASj4i4iIiIgkAAV/EREREZEEoOAvIiIiIpIAFPxFRERERBKAgr+IiIiI\nSAJwWl2AiIiISGuLRCL4/X7q6+vx+/0EAgHsdjsOhwOHw4HT6Tz5fuPhcrmw23WNVOKHgr+IiIjE\nBZ/PR2VlJRUVJ6iu9lNT46e2tp6aGj9+fxibzQO4AQ+QBESAMBDGZgtjGOb7hhECwjgcIdq3T6Wg\nIJP8/EwyMzPJyMjA6VR8kthkMwzDaOoTJ06cOPl+ZmZmmxUkIiIici6RSIQTJ05QWVlJcXEFhw5V\nUlNjYLNlY7Nl4XJ5cLncp71Nuqjn8Plq8HpPEAicwGY7AdTQrp2bgoJMOnbMoqCggOTk5Jb/BkUu\nwrnyu4K/iIiIRL1IJMLx48cpKzvOwYOVHDlSTTicimG0w+PJJi2tHW53SqvXYRgGfn8dXu8JfL5y\n7PYjdO2aQa9eRXTs2FF3A8RSCv4iIiISkwzDoLy8nM8/L2HbtiP4fGnY7XmkpmaTmpqFw+GwusSG\nOw9H8XoPkZRUzlVX5dO9exE5OTnYbDary5MEo+AvIiIiMaWyspKDB0vYtq2Emho3Dkch7doV4HZH\n95SaYDBARcVhQqFiMjPr6dfvMi6/vJvuAkibUfAXERGRqFddXc3Bg4fZvr2Eigo7TmchmZkFJCen\nWV3aRfF6a6is3Eta2lEGD76cLl06q0OQtDoFfxEREYlKhmFQWlrKxx/v5eDBemy2ArKyCklJybC6\ntBbj9VZTXr6T3Nxahgy5mg4dOlhdksQxBX8RERGJKpFIhOLiYtav30tZmYu0tB5kZeXH9Zz46urj\nnDixlauvTuWGG/qoE5C0CgV/ERERiQrBYJD9+z9n/fr9VFdnkpnZg/T0bKvLajORSISjR/dit+9j\n6NDL6dGjm9UlSZxR8BcRERFL+Xw+du/ex6ZNxdTX59OuXXdSUtKtLssy9fVeSks3ct11qdxwwzVR\n0Z1I4oOCv4iIiFiirq6OrVt3s3XrUSKRTrRv3zXqO/O0lXA4TEnJZrp183LrrdfjdrutLknigIK/\niIiItKlAIMCOHXtYt64Ym60bOTldcDpdVpcVlUpL95Ce/jkjR16vvCWXTMFfRERE2kQkEmH//gOs\nXPkZXm9H8vKuxOVKsrqsqFdRcYRQaCujRvWhY8eOVpcjMUzBX0RERFpdaWkpy5dv59ixDHJyesVs\n/32r1NWdoLJyA8OGdaJXryusLkdi1Lnyu7aSExERkYtWW1vL+vXb2bnTR2bmNXTqlGN1STEpNTWT\npKSbWbx4LTabjZ49L7e6JIlDCv4iIiJywcLhMDt27Gb16oM4HJdTVNQ1rvvwtwWXy03HjjeyePEK\n0tNTKCwstLokiTMK/iIiInJBysrK+OijrVRV5ZCXNwyXSx1pWorL5aZ9+xuYP381Eyd6aN++vdUl\nSRyxW12AiIiIxIZQKMSGDZuZM2c7kUh/Cgv7KfS3gpSUdFJT+zN//kZqa2utLkfiiIK/iIiInFNF\nRQVvvLGUDRtsFBTcklA77lohIyOHSOQq3n9/LfX19VaXI3FCwV9ERESaFYlE2LJlB7Nnb8Tn601h\nYV8cDs0Ubgvt2xdRWdmJxYvXEQ6HrS5H4oCCv4iIiDSpurqad95ZzooVXvLyhtKuXb7VJSWcDh2u\n4MCBdNav32J1KRIHFPxFRETkDIZhsHv3Z8yatYaKiu506jRAG3FZqGPHPmzaVMnRo0etLkVinIK/\niIiInOT1elm4cBULFx6jXbshtG9fZHVJCc/hcJCR0YelS7dqyo9cEgV/ERERAaCkpIRZs1Zw6FAB\nl102CLc72eqSpEFmZi7Hj2ezffsuq0uRGKbgLyIikuAMw2Dr1p288cZOUlIGkpfX1eqSpAn5+Vez\nenUxJ06csLoUiVEK/iIiIgksGAyydOk6li2romPHIaSkZFhdkjTD5UoiKakXK1duwTAMq8uRGKTg\nLyIikqBqamp4663l7NqVRqdOA7WANwbk5HTiwAEn+/btt7oUiUEK/iIiIgmotLSU119fTU3NFRQU\nXI3NZrO6JDlPubl9Wbp0Dz6fz+pSJMYo+IuIiCSYnTt3M3fuNpKTb1TXnhjk8aQSDF7Gp5/utboU\niTEK/iIiIgkiFAqxfPl6Fi06RocOQ0hNzbS6JLlIOTld+eSTwwSDQatLkRii4C8iIpIA6urqmD9/\nBdu3e+jUaRAul9vqkuQSJCV5qK/PZ//+z60uRWKIgr+IiEicq6ysZM6clZSXd6OwsA92u17+40G7\ndt1Zv34/kUjE6lIkRuhfvoiISBw7duwYc+eux26/ltzcy6wuR1pQSko6J05kcPjwYatLkRih4C8i\nIhKnSkpKeOONj0lJuZ7MzFyry5FWkJnZnQ0btMhXzo+Cv4iISBw6cOBz5s3bTmbmQNLS2lldjrSS\njIwcjhyxc/ToUatLkRig4C8iIhJndu36jHff3Utu7k3aiTcBpKR0Z/NmXfWXc1PwFxERiSNbtuzg\nww8P06HDTbjdKVaXI20gO7uAvXtrqa2ttboUiXIK/iIiInHAMAw2bNjM8uWVFBQMVrvOBGLuutyB\n0tIyq0uRKKfgLyIiEuMikQgrV25k3To/hYUDcTpdVpckbSwtrQO7d5daXYZEOQV/ERGRGBYKhfjo\no7Vs2WKjsPB6HA6H1SWJBdLT23PoUA319fVWlyJRTMFfREQkRoXDYZYsWcfu3SkUFfXXxlwJzG63\nYxh5lJVpuo80T38hREREYlAkEmH58g3s2ZNMUdE1DfO8JZF5PB347LMjVpchUUzBX0REJMYYhsGq\nVZvYscNBYWE/q8uRKJGVlcfevRWEQiGrS5EopeAvIiISY9av38yWLWEKC/vrSr+c5HA4CYeztZmX\nNEvBX0REJIZs2rSV9eu9FBQM0Jx++RKXqwMHDqi7jzRNfzFERERixNatO1m1qorCwhvUvUea1K5d\nB/bs0RV/aZqCv4iISAz49NM9LFt2lIKCG3E4nFaXI1HK5XLj87moq6uzuhSJQgr+IiIiUW7v3v0s\nWnSIjh0H4nIlWV2ORDmbLZMTJ05YXYZEIQV/ERGRKHbw4CEWLNhHfv4gXC631eVIDLDZMqmoUPCX\nL9O9wjjm8/moqKigsrKSioqKk0ddXR12u/3kYbPZzvjvxsPhcJCdnU1ubi45OTnk5uaSnJxs9bcl\nIpIwjhw5wrvvfkpu7mDcbv39lfOTnJzJkSP76N3b6kok2ij4xyiv18uePXvYtWsXn366i02bdrFv\n30GqqiqoqamktrYCw4jgdrfH4WiH3Z6NYWQTDmcTCqVisxnYbBEg0vD2i/8dwWYLYrdXYBjHCYWO\nUV9/DLvdSUZGLu3a5ZCTk0uHDjkUFubSrVsRV1xxBVdeeSVdunTB5XJZ+wMSEYlxVVVVvPvuVtq1\nG4jHk2p1ORJDUlMzOXJEV/zlyxT8o1xVVRUbNmxg586dbNmyi82bd7Fv325OnDhKcnI34Eq83isJ\nh28HugDZpx3JeL0t2d/ZIByuo7z8GOXlx/nss2PAceAYSUmfk5y8kHB4F35/CXl5XejR4wquvfZK\nrr76ipODgvz8fPWcFhE5B7/fz/vvb8Dl6ktKSobV5UiMcbnceL02fD6f7tTLGRT8o4hhGOzbt48V\nK1awaNEqlixZSWnp56Sk9Ke+/ir8/iuBUcCVQBdqatq6lZsNSGs4up7xmUDAPEx+Skr2UlKym2XL\ndpGSshqX6wXq63cDAa666jpuv30QN988kIEDB5Kbm9uW34SISFQLh8MsWrSOurqu5OV1sLociVGN\nC3wV/OV0NsMwjKY+cfpq8MzMzDYrKNGUlJSwePFi3nlnMR9+uAivN4jDcQu1tTcBg4G+QDxNmzkO\nrMduX0Na2mr8/nW0a5fDwIEDuf32gQwaNIi+fftqqpCIJKwVKzawdauToqJ+VpciMayk5FOGDrXR\ns+eVVpcibehc+V3B3wKHDx9m1qzZ/OUvr3LgwGe4XLdSWzscuA3zan4iTYWJAJ8Cq0lOXoLine truncated
"text": [
"<matplotlib.figure.Figure at 0x7f35736ae9e8>"
"<matplotlib.figure.Figure at 0x7f3e803539b0>"
]
}
],
@@ -429,16 +429,16 @@
{
"metadata": {},
"output_type": "display_data",
"png": "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\n97vf4fXXX2/UX2FhIS644AKsX78ep59+OtLS0tCrVy8sWbLkuMeTSCgmhSAIgiAIIggZOH/iaNaU\nTz75JOZr2pMVRSOSwnT55ZejV69emDdvHjZt2oTXXnsNDocD8+bN09vMmzcPDz30ECZMmIDrrrsO\nbrcbL7zwAs4++2xs3rwZdrsdALBixQpUV1fj5ptvhsPhwObNm/Haa69h69at2LBhQ6N7T5o0CT17\n9sScOXOiVkE/5ZRTsHTp0pBjbrcbd999d8jzXbZsGa666iqMGjUK8+bNQ21tLV555RWcc845KC0t\nRZ8+fQBIRebSSy9F//79MXfuXLjdblx33XXo3r17zAolYwyXXHIJbrzxRqxYsQI33HCDLkNBQQGG\nDh3a6JqamhoMHz4cBw8exM0334zCwkJ88803mDVrFg4cOIBXX31Vb/vss8/iz3/+My6//HIwxrBy\n5UrccMMN8Pv9uOmmm0Lk2LdvHyZMmIDrr78e1157LV5//XVMnToVgwYNwimnnBLTeBKOaId4vV79\np7NSWloqSktL21qMhEJj7BzQGDsHJ8O8ejycDM/jZPhex2OMqsqFqvKI52pqak6obyGEcLlcYvTo\n0QJAsz+DBg0Sv/766wnfMxYWLlwoGGPim2++idpm3759gjEmFi9erB+bOXOmYIyJ6667LqTt//zP\n/wi73a7/feDAAWE0GsVjjz0W0m7Pnj0iNTVVPPjgg/qx3377rdG9ly1bJhhjYv369Y3ufdlll0Ud\nz4EDByKORVVVMWbMGJGZmSl++uknIYQQR44cERaLpdFYPB6PcDgcYsqUKfqx3//+96Jbt26iqqpK\nP7ZmzRrBGBNFRUUR7xnMNddcI9LS0oQQQkyePFmce+65QgghOOeioKBAzJgxQzidTsEYE//7v/+r\nX/f444+LLl26iB07doT09/jjjwvGWMjxSN/XUaNGid69e4ccKygoEIwx8cUXX+jHKisrRWpqqrjn\nnnuijqG5/w/xnlfJ3YsgCIIgiJMWRWFxs5xE4nhiU9qjFSUamhVAY+jQoXC5XDhy5AgA4L333oOq\nqpg4cSKcTqf+k5mZiVNPPRVr167Vr01rSKEmhEBVVRWcTifOPPNMAMB///vfRve+5ZZbjlvehx56\nCJ988gkWLVqEvn37AgD+85//wOv1YvLkySEy+v1+DB06VJfx119/xebNm3HVVVchIyND73P48OHo\n37//ccsyefJkfPHFFzh06BC+/PJLHDx4EFdccUXEAPzly5fjnHPOgc1mC5Hx/PPPByDd2jS0wPv6\n+nq43W44nU786U9/wp49e1BdXR3Sb58+fUIsN3a7HX369GlXqZTJ3YsgCIIgCCJBBMemNOX21Z5i\nUWIhPIuWxWIBAHg8HnTt2hU7d+4EAF0hCKdXr1767z///DPuvfdefPzxx40W0z6fr8lrY+Gdd97B\n/Pnz8eCDD2L8+PH6cU3GkSNHRrzOYDAAAA4cOAAAKC4ubtSmuLgY33//fUxyaErImDFjYLFY8M9/\n/hN79+7Faaedhv79+8PpdDa6ZufOndiyZQuysrIanWOMobKyUv/7//7v//DYY49h8+bNUFU1pJ3P\n5wtRsCJlQTObzY3igNoSUlIIgiAIgiASSCyxKR3JigIEFvDhaAtxLah71apVMBobLzc164mqqhg1\nahRcLhcefPBB9OvXD+np6VBVFWPGjGkUHB58bSz88MMPuPbaazFmzBjMnj075JzW9+LFi9G9e/eY\n+zxRkpKScNlll+HNN99EeXk57rnnnqhthRA4//zzMWPGjIjntSQA69evx/jx4zFs2DC8/PLL6Nat\nG5KTk/Hhhx/ib3/7W6Pn2Nzn1x4gJYUgCIIgCCIC8VqwNWdN6WhWlFjQrB35+fno169f1HY//PAD\nduzYgcWLF+Oqq67Sj+/ateuEZfB4PLjkkkuQm5uLf/7zn43O9+7dG4B0dTrvvPOi9lNQUAAgYHkJ\nJtKxWJgyZQpeeeUVKIqCyZMnR23Xq1cvVFVVNSkfIJMPdOnSBatXrw5JxfzZZ5+1SL72AMWkEARB\nEARBhMG5QJTEUS2iqdiUjmZFiYXLLrsMBoMBjz76aMTzLpcLQGBHP3yn/6mnnjqh+3POcfnll6Oi\nogL/+te/YDKZGrUZPXo0zGYz5syZg/r6+kbnNVeq3Nxc/P73v8eSJUtQVVWln1+zZg1+/PHHmGUK\nVkKHDRuG2bNn47nnnkN+fn7UayZNmoTS0lJ8/PHHjc5VV1fr2c205xjs5uXxePDGG290WOWXLCkE\nQRAEQRAJJpo1pa2tKAsXLsTq1asbHf/rX/96Qv0WFRVh3rx5uPfee3HgwAGMGzcOZrMZ+/btw/vv\nv49JkyZh5syZ6NevH4qLi3H33Xfj0KFDsFgs+Pjjj3H48OETuv9LL72E//znP7j00kvx/fLine truncated
"png": "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\nACp8zTAM6uvrAXjllVcwDCPnz9SpU7Ou++KLL3LSSSdRWlpKaWkpp59+Ou+88063vjz77LMcfvjh\nFBYWcsQRR/Db3/6238/0wgsv5IUXXsjq23vvvce6deu46KKLcp6TSCS49tprmTJlCvn5+dTU1HD7\n7bdj23bWcffddx/z5s2joqKCwsJCPvGJT/CLX/yi2/Wqq6s5/fTTWb16NZ/61KcoLCykpqaGlStX\n9rs/Q4nWpGg0Y5SxOokfq/3SaDSjB0ebMlBNioPjTfnTn/7U53NGkxfFIZfBdMEFF1BTU8Pdd9/N\nW2+9xc9//nPC4TB33323e8zdd9/NTTfdxHnnncdll11GNBrlxz/+MccffzzvvPMO5eXlADz11FO0\ntrZy5ZVXEg6Heeedd/j5z3/OunXrWLNmTbd7n3/++UybNo0777yTjo6OnG0+7LDDeOyxx7K2RaNR\nrrvuuqznu2rVKi6++GIWLFjA3XffTXt7Ow899BAnnHACa9euZebMmYAyZM455xzmzJnDXXfdRTQa\n5bLLLmPixIl9NiiFEJx11ll89atf5amnnuLyyy9321BVVcW8efO6ndPW1sb8+fOpr6/nyiuvpLq6\nmr/97W8sX76cbdu28bOf/cw99kc/+hH/8R//wQUXXIAQgmeffZbLL7+cZDLJFVdckdWOuro6zjvv\nPL7yla/wpS99iV/84hcsWbKEuXPncthhh/WpP0OOHIXE43H3Z6yydu1auXbt2pFuxpAyVvpoWba0\nLDvnvsHsY2/3GUnGyufYG4dCHw+FcbU/HArP41D4Xg91H9va2g76GpFIRJ522mkSOODP3Llz5Ucf\nfTQILT8wDz/8sBRCyL/97W89HlNXVyeFEPKRRx5xty1btkwKIeRll12Wdex//ud/yvLycvfvbdu2\nSY/HI2+77bas4zZv3iwLCgrkd7/7XXfbvn37ut171apVUgghV69e3e3e5557bo/92bZtW86+WJYl\nFy5cKMvKyuQHH3wgpZRyz549MhAIdOtLLBaT4XBYXnjhhe62T37yk3LChAmypaXF3fbSSy9JIYSc\nOnVqzntmcumll8rCwkIppZSLFy+WJ510kpRSStu2ZVVVlbzxxhtlc3OzFELI733ve+55d9xxhywq\nKpLr16/Put4dd9whhRBZ23N9XxcsWCCnT5+eta2qqkoKIeRrr73mbmtqapIFBQXyW9/6Vo99OND/\nh8EeV3W4l0ZzAAxDDMvqfU/3GYtalcw+jcX+aTSajzeDOS71R5syGr0oPeF4ARzmzZtHJBJhz549\nADzzzDNYlsWiRYtobm52f8rKyjj88MN5+eWX3XMLU3mepZS0tLTQ3NzMcccdB8A//vGPbve+6qqr\n+t3em266iT/96U+sWLGCWbNmAfDnP/+ZeDzO4sWLs9qYTCaZN2+e28aPPvqId955h4svvpjS0lL3\nmvPnz2fOnDn9bsvixYt57bXX2LFjB//3f/9HfX09F110UU4B/hNPPMEJJ5xAKBTKauNnP/tZQIW1\nOTjC+87OTqLRKM3NzXzmM59h8+bNtLa2Zl135syZWZ6b8vJyZs6cOapSKetwL41mFNE1va6jVQGo\nqJADNpZGU9rezD6FQjaRiGrTwfRPo9FoBovMMaqs7OANlUxtSm9hX6NJi9IXumbRCgQCAMRiMUpK\nStiwYQOAaxB0paamxv19+/btXH/99fzxj3/sNplOJBK9ntsXnnzySe655x6++93vcvbZZ7vbnTae\neuqpOc8zTROAbdu2AVBbW9vtmNraWv75z3/2qR2OEbJw4UICgQCPP/44W7Zs4YgjjmDOnDk0Nzd3\nO2fDhg28++67VFRUdNsnhKDJ+bIC//u//8ttt93GO++8g2VZWcclEoksAytXFjS/399NBzSSaCNF\noxklDJZBMhTXlVJdZ6iNiExjajQZVhqNRnMw9EWb8nHyokB6At8VZyLuiLpfeOEFPJ7u003He2JZ\nFgsWLCASifDd736X2bNnU1xcjGVZLFy4sJs4PPPcvvDee+/xpS99iYULF3L77bdn7XOu/cgjjzBx\n4sQ+X/Ng8Xq9nHvuuTz66KM0NDTwrW99q8djpZR89rOf5cYbb8y530kCsHr1as4++2xOPPFEfvrT\nnzJhwgTy8vJ4/vnn+eEPf9jtOR7o8xsNaCNFoxnFOOJN5/eBkh50BmagxONempoGx3jK7pPh/g5o\nD4tGoxlxMseojo7BGXsO5E35uHlR+oLj7Zg8eTKzZ8/u8bj33nuP9evX88gjj3DxxRe72zdu3HjQ\nbYjFYpx11lmMHz+exx9/vNv+6dOnAyrU6eSTT+7xOlVVVUDa85JJrm194cILL+Shhx7CMAwWL17c\n43E1NTW0tLT02j5QyQeKiop48cUXs1Ix//Wvfx1Q+0YDWpOi0YwSDEMQCklCoexJ+WBoYqLine truncated
"text": [
"<matplotlib.figure.Figure at 0x7f35528a6fd0>"
"<matplotlib.figure.Figure at 0x7f3e5bc49780>"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Difference in mean x=-0.019, y=43.196\n"
"Difference in mean x=-0.029, y=43.180\n"
]
}
],
@@ -482,7 +482,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAyoAAAGNCAYAAAD+T4W4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlclPW+B/DPMMzAgCgiu6IogruIgArighKJlLmlWVnu\nYSdLvVnHjvfeU3mO5xw7HtOOaGlqmoalueKCCyhLKiJu4IoKKjMCKuICAzNz/+iesUcWTQd+M/B5\nv17+8XyehY/0vJIv8ywyg8FgABERERERkRmxEl2AiIiIiIjocRxUiIiIiIjI7HBQISIiIiIis8NB\nhYiIiIiIzA4HFSIiIiIiMjscVIiIiIiIyOxwUCEiIiIiIrNj8kFlyZIlaN26NVQqFYKCgpCcnPxU\n+124cAEODg5wcHCotC4pKQmBgYFQqVTw8fHBsmXLTF2biIiIiIjMiEkHlbi4OEyfPh1z5sxBZmYm\nQkNDERUVhby8vBr302q1eO2119CvXz/IZDLJusuXL2Pw4MEICwtDZmYmZs+ejWnTpmHTpk2mrE5E\nRERERGZEZso30/fs2RPdunWTfOLh5+eHkSNH4q9//Wu1+82YMQN3795F37598d5776GkpMS47uOP\nP8bmzZtx7tw5YzZ58mScOXMGqamppqpORERERERmxGSfqGi1WmRkZCAyMlKSR0ZG1jhQ7NixAzt2\n7MDixYtR1cyUlpZW5THT09Oh0+lMU56IiIiIiMyKtakOVFhYCJ1OBzc3N0nu6uoKtVpd5T43btzA\nlClTsHnzZtjZ2VW5jUajqXRMNzc3VFRUoLCw0LiuuLjYBH8LIiIiIiKqa02aNKmUCX3q19ixYzF1\n6lQEBweLrEFERERERGbGZIOKs7Mz5HI5NBqNJNdoNPDw8KhynwMHDuDTTz+FQqGAQqHApEmTcP/+\nfSgUCixfvhwA4O7uXukTGY1GA2trazg7O5uqPhERERERmRGTXfqlVCoRGBiIPXv2YMSIEcY8ISEB\nr776apX7nD59WrK8efNm/OUvf8HRo0fh6ekJAAgJCcHPP/8s2S4hIQHBwcGQy+VVHreqj45IKj09\nHQAQFBQkuAnVJzyvqDbwvKLawnOLagPPq6f3pFs3TDaoAMDMmTMxduxY9OjRA6GhoVi6dCnUajVi\nYmIAALNnz8bRo0exd+9eAEDHjh0l+x85cgRWVlaSPCYmBl999RVmzJiBKVOmICUlBatXr8YPP/xg\nyupERERERGRGTDqojBo1CkVFRZg7dy7y8/PRpUsXxMfHw8vLCwCgVquRk5NT4zEef4+Kt7c34uPj\nMWPGDMTGxqJ58+ZYvHgxhg0bZsrqRERERERkRkz6HhWRfvvRES/9ejJ+LEm1gecV1QaeV1RbeG5R\nbeB59fSe9PO70Kd+ERERERERVYWDChERERERmR0OKkREREREZHY4qBARERERkdnhoEJERERERGaH\ngwoREREREZkdDipERERERGR2OKgQEREREZHZ4aBCRERERERmh4MKERERERGZHQ4qRERERERkdjio\nEBERERGR2eGgQkREREREZoeDChERERERmR0OKkREREREZHY4qBARERERkdnhoEJERERERGaHgwoR\nEREREZkdDipERERERGR2OKgQEREREZHZ4aBCRERERERmh4MKERERERGZHQ4qRERERERkdjioEBER\nERGR2eGgQkREREREZoeDChERERERmR0OKkREREREZHY4qBARERERkdnhoEJERERERGbH5IPKkiVL\n0Lp1a6hUKgQFBSE5ObnabbOyshAeHg53d3eoVCr4+PjgT3/6E8rLy43bJCYmwsrKqtKf8+fPm7o6\nERERERGZCWtTHiwuLg7Tp09HbGwswsLC8O9//xtRUVHIysqCl5dXpe1tbGwwfvx4BAQEwNHREZmZ\nmZg8eTK0Wi3mz58v2TYrKwtOTk7GZWdnZ1NWJyIiIiIiM2LSQWXBggUYP348Jk6cCABYtGgRdu3a\nhdjYWPz1r3+ttL2Pjw98fHyMy15eXnj99deRkpJSaVsXFxc0a9bMlHWJiIiIiMhMmezSL61Wi4yM\nDERGRkryyMhIpKamPtUxLl68iN27d1c6BgAEBQXB09MTERERSExMNEVlIiIiIiIyUyb7RKWwsBA6\nnQ5ubm6S3NXVFWq1usZ9Q0NDcfz4cZSVlWHcuHH485//bFzn6emJpUuXIjg4GGVlZVizZg0GDhyI\npKQkhIWFVXm89PT05/77NBT8XlFt4HlFtYHnFdUWnltUG3hePZmvr2+N60166dez2rBhA+7du4fM\nzEzMmjULH330Ef7xj38AAPz8/ODn52fctlevXrhy5Qrmz59f7aBCRERERESWzWSDirOzM+RyOTQa\njSTXaDTw8PCocd8WLVoAANq3bw+dTocJEyZg3rx5kMvlVW7fo0cPxMXFVXu8oKCg39m+4fnPlM/v\n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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f35529486d8>"
"<matplotlib.figure.Figure at 0x7f3e5bceaf60>"
]
}
],
@@ -520,7 +520,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAv4AAAF0CAYAAABbpj2aAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3WlwHGWeJvAn61KVVKpUqUpXSfIh2ZYPbIMvbGwDNtiY\nwxjUDRiGpnFPT/d2z+zQXzZ2JmI/zLfdjf3S3Tvb19IN2wxgTCOmwbhpGxsMvm9s4wtLsq37qEtS\nqUqqqsz9UBbY40tHVr1Zlc8voiM6RDh4hCvz/9SbmW9KqqqqICIiIiKinGYSHYCIiIiIiNKPxZ+I\niIiIyABY/ImIiIiIDIDFn4iIiIjIACy3+gfhcDiTOYiIiIiISCOyLN/wM674ExEREREZAIs/ERER\nEZEB3PJWn2vd7FIBERERERHpx51u1eeKPxERERGRAbD4ExEREREZAIs/EREREZEBsPgTERERERkA\niz8RERERkQGw+BMRERERGQCLPxERERGRAbD4ExEREREZAIs/EREREZEBsPgTERERERkAiz8RERER\nkQGw+BMRERERGQCLPxERERGRAbD4ExEREREZAIs/EREREZEBsPgTERERERkAiz8RERERkQGw+BMR\nERERGQCLPxERERGRAbD4ExEREREZAIs/EREREZEBsPgTERERERkAiz8RERERkQGw+BMRERERGQCL\nPxERERGRAbD4ExEREREZAIs/EREREZEBsPgTERERERkAiz8RERERkQGw+BMRERERGQCLPxERERGR\nAbD4ExEREREZAIs/EREREZEBsPgTERERERkAiz8RERERkQGw+BMRERERGQCLPxERERGRAbD4ExER\nEREZAIs/EREREZEBsPgTERERERkAiz8RERERkQGw+BMRERERGQCLPxERERGRAbD4ExEREREZAIs/\nEREREZEBsPgTERERERkAiz8RERERkQGw+BMRERERGQCLPxERERGRAbD4ExEREREZAIs/EREREZEB\nsPgTERERERkAiz8RERERkQGw+BMRERERGQCLPxERERGRAbD4ExEREREZAIs/EREREZEBsPgTERER\nERkAiz8RERERkQGw+BMRERERGQCLPxERERGRAbD4ExEREREZAIs/EREREZEBWEQHoNyTTCYRDAbh\n9/vh9/vR2urHwMAQhocTiMeTSCYVmM0mWK1mWK1mOJ15qKrywONJ/c/tdsNi4UeTaLxUVUU0Gv3m\n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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556aaac88>"
"<matplotlib.figure.Figure at 0x7f3e637a9c88>"
]
}
],
@@ -576,7 +576,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAxQAAAGNCAYAAACIdTczAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XmcXXVh///Xufs6d/aZLGSDIAaSYg0gJoCpmEICUqHA\nT2yb2EpNHgooah7FBXj4VZHQagtFlKXSKlKgUHChUGtjGgpBYoEK0RIJIZl95u77ds7vj0lGhplk\nstzJXeb9fDyGzJz7mXs+987h3PM+n82wLMtCRERERETkKNiqXQEREREREalfChQiIiIiInLUFChE\nREREROSoKVCIiIiIiMhRU6AQEREREZGjpkAhIiIiIiJHTYFCRERERESOWkUDRX9/P+vWraOzsxOv\n18upp57Kf/3Xf1VyFyIiIiIiUkMclXqiWCzGihUrOPfcc3nyySfp6Ohg9+7ddHZ2VmoXIiIiIiJS\nY4xKrZT9+c9/nm3btrFt27ZKPJ2IiIiIiNSBinV5evzxxznzzDO58sor6erq4l3vehd33nlnpZ5e\nRERERERqUMVaKDweD4ZhcP3113PFFVfw4osvcs011/D1r3+dT3ziE2Pl4vF4JXYnIiIiIiLHWSgU\nmrCtYoHC5XJx5pln8swzz4xt+8IXvsC//uu/snPnzrFtChQiIiIiIvVpskBRsS5Ps2fPZsmSJeO2\nnXLKKezdu7dSuxARERERkRpTsVmeVqxYwW9+85tx21577TUWLFhw0N+ZLOHI5Hbs2AHA8uXLq1wT\naRQ6pqTSdEzJdNBxJZWmY+rITdXDqGItFJ/+9KfZvn07X/va1/jtb3/LI488wh133DFu/ISIiIiI\niDSWigWK5cuX8/jjj/Pwww+zdOlSvvSlL/GVr3yFjRs3VmoXIiIiIiJSYyrW5QlgzZo1rFmzppJP\nKSIiIiIiNaxiLRQiIiIiIjLzKFCIiIiIiMhRU6AQEREREZGjVtExFCIiIiJyZCzLolAoUKG1hmUK\n8+fPByCXy1W5JrXBMAxcLheGYRz1cyhQiIiIiFSJaZrk83lcLhd2u73a1ZkRPB5PtatQU8rlMrlc\nDrfbjc12dJ2X1OVJREREpEoKhQIej0dhQqrGbrfj8XgoFApH/RwKFCIiIiJVdCxdTUQq4ViPQQUK\nERERERE5agoUIiIiIiJy1BQoRERERETkqClQiIiIiIjIUVOgEBEREZGKu//++7HZbPziF78Ytz2V\nSnHOOefgcrl47LHHqlS72mVZFps3b2bRokV4vV6WLl3KAw88cFi/+/Of/xybzTbp19v/DpWkdShE\nRERE5LhIp9OsWbOGX/ziF/zzP/8zl156abWrVHM+//nPc+utt3L11Vdz5pln8vjjj/Onf/qnGIbB\nVVdddVjP8clPfpL3vOc947adeOKJ01FdQIFCRERERI6DA2Hi+eef58EHH1SYmERvby9/8zd/w8aN\nG7nzzjsB+Iu/+AvOO+88Pve5z3HllVce1polK1eu5Iorrpju6o5RlycRERGRBmOaJqVSiXK5jGVZ\n1a4OmUyGtWvXsn379knDxA9/+EMuvvhiTjjhBDweDwsWLGDTpk3k8/lx5davX4/X62Xv3r2sXbuW\nYDBId3c3N9xwA+VyeVxZm83Gxo0beeihh1iyZAler5fTTz+dp59+ely5aDTK5z73OZYtW0ZTUxPB\nYJBVq1bxzDPPTM+bcQhPPPEEpVKJjRs3jtu+ceNG+vv7D7tOlmWRSqUolUrTUc0J1EIhIiIi0iAs\ny+JXfb9iy54t/GjXj1gYWsjl77yc98x/D03epqrUKZ1Os3btWp577rmDtkzcf//9eL1errvuOkKh\nEM899xzf/OY32bdvHw8++OC4sqZpcsEFF/Cud72LzZs3s2XLFm699Vbi8Tjf+ta3xpX97//+bx5+\n+GGuu+46AoEAd999NxdffDFbtmxhxYoVALz++us8+uijXHnllSxatIhoNMp9993H+eefzwsvvMDS\npUsP+fqy2SzpdPqw3ov29vZDPv7iiy/i8Xg47bTTxm0/44wzAHjppZc477zzptzP1VdfTSqVwm63\ns3LlSjZv3jz2HNNBgUJERESkQby470Uufvhi+tJ9Y9vu/d97+bvz/46Pn/Fx3C73ca/TRz/6Ufr6\n+g45ZuKBBx7A6/WO/Xz11VezePFivvjFL3Lbbbcxd+7csceKxSLnnXced911FzB6937dunV85zvf\n4dOf/jSLFy8eK/vqq6/y7LPPctZZZwGjLRyLFy/mr/7qr9i2bRsAy5YtY/fu3ePq85d/+Zeccsop\n3H777dxzzz2HfH233norX/7yl6d8HwzDmNCK8nb9/f10dXVN2D5r1iwA+vr6Jjz2Vm63mz/+4z9m\nzZo1tLe38+qrr/LXf/3XnHvuuWzbto3ly5dPWc+joUAhIiIi0gAKxQL3vXzfuDBxwGf/87OsOGEF\n75737uNer6GhITweD/PmzTtomQNhwjRNkskkxWKRFStWYFkWL7744rhAAXDttddO+Pl73/seTz75\nJNddd93Y9uXLl4+FCYDW1lauuuoq7rzzTuLxOKFQCJfLNfZ4LpcjnU5jWRbLly/nl7/85ZSvb926\ndZx77rlTljsc2WwWt3ti6PN4PGOPH8rZZ5/N2WefPfbzRRddxB//8R+zbNkybrjhBn76059WpJ5v\np0AhIiIi0gB6Yj088Ork04sWzSKvRV6rSqD4zne+w2c/+1kuvPBCtm7dypIlSyaUeeWVV9i0aRNb\nt26dcNEcj8fH/WwYBieddNK4bQdaJd58881Jtx+s7LJlyzBNk82bN3P33XezZ8+ecWUXLVo05etb\nuHAhCxcunLLc4fB6veRyuQnbD2x7ayvO4TrxxBO55JJLePTRRymXy4c1qPtIKVCIiIiINADDMLAb\nB79YPNRj0+kd73gHTz/9NKtWrWL16tVs27Zt3AV4PB5n1apVBINBvva1r3HSSSfh9Xrp6elh/fr1\nmKY5rfW75ZZb+NKXvsT69etZvXo1bW1t2Gw2brnllgldoSaTTqdJJpOHta/u7u5DPj5r1ix+9rOf\nTdje398PwOzZsw9rP283d+5cisUiyWSS5ubmo3qOQ1GgEBEREWkA81rmcfXpV3Pr9lsnPOZ1eDml\n/ZQq1GrU6aefzo9//GNWr17NBz7wAbZt2zY2LmDLli2Ew2Eee+wxzjnnnLHfOVj3HMuy2LVr17iW\njtdeew2ABQsWjCu7a9euCb9/oOz8+fMBeOSRR1i1ahX/8A//MK7cjTfeeFiv7bbbbqvYGIp3vetd\n3HffffzqV78aNxj8+eefB0bfx6Oxe/du3G43TU3TMzBfgUJERESkAdjtdv5k6Z/wo10/Ymd459h2\nm2Hj7gvvZkn3xK5Gx9OKFSt49NFHueSSS1i9ejVbt26ltbV1rAvOW1siTNPkG9/4xkGf6/bbb+fb\n3/722M933HEHNpuNNWvWjCu3Y8cOtm/fPrbIWzgc5gc/+AErVqwgFAoB4HA4JrSCPPvsszz33HMT\nAspkKjmG4pJLLuHTn/40d91119iMVZZl8e1vf5tZs2axcuXKsbLhcJjh4WHmz58/1hVqeHiYjo6O\ncc/58ssv88Mf/pA//MM/xGabnhUjFChEREREGsSps07l8Sse54XeF3iu9zlmB2ZzzrxzOOOEM3DY\nq3/Zd8EFF/D973+fD3/4w1x44YX87Gc/Y+XKlbS1tbFu3TquueYaHA4H//Iv/3LQqVidTifbtm3j\nIx/5CCtWrGDLli08+uijfPzjH58wtuLUU0/loosu4pprrhmbNjadTnPLLbeMlfngBz/IzTffzLp1\n61i5ciW7du3innvu4dRTTyWVSk35mio5hmLOnDl86lOf4rbbbqNcLnPGGWfwxBNP8Mwzz/BP//RP\n48Y/3HHHHXz5y19my5YtY1PJXnnllfh8Ps4++2w6OzvZuXMnd999N36/n82bN1ekjpOp/pElIiIi\nIhVhGAaLOxdzUsdJXLnsSgzDmLa70odbn7e7/PLLSSQSXH311VxyySU8+eST/OQnP+Ezn/kMN910\nE8FgkMsuu4wNGzawbNmyCb9vt9t56qmn2LBhA5s2bSIQCLBp0ya++tWvTii7cuVK3ve+93HzzTez\ne/duTjnlFB5//PFxd/pvuOEGMpkMDzzwAI888ghLly7loYce4sEHH2Tr1q2VfUMOw9e//nVaW1v5\nzne+wz/+4z+yePFi/umf/ok/+ZM/GVfOMIyxrwM+9KEP8cADD/DNb36TRCJBR0cHl112GTfddBMn\nnnjitNXZsI7z8olvHal/oKlJprZjxw6AaZs/WGYeHVNSaTqmZDo0+nGVy+XGpgSVqa1fv56HHnpo\nyulTYXSl7A0bNkxY7E4md6hjcarr9+pFVhERERGRIzRZq4dUlwKFiIiIiNSN49y5Rg6DAoWIiIiI\n1IW3jxmQ2qBB2SIiIiJSF7773e/y3e9+97DKTveCePI7aqEQEREREZGjpkAhIiIiIiJHTYFCRERE\nRESOmgKFiIiIiIgcNQUKERERERE5agoUIiIiIiJy1BQoRERERETkqClQiIiIiIjIUVOgEBERERGR\no6ZAISIiIiIVd//992Oz2fjFL34xbnsqleKcc87B5XLx2GOPVal2tek3v/kNmzZt4vTTT6epqYnZ\ns2dz0UUX8ctf/rLaVTskBQoREREROS7S6TRr1qzhF7/4Bf/8z//MpZdeWu0q1ZR7772Xe++9lzPP\nPJNvfOMbXH/99fzf//0f73nPe/iP//iPalfvoBzVroCIiIiIVIZlWYyMFHnllTKDgwYeD5x8Mpxy\nigubrbr3kQ+Eieeff54HH3xQYWISV111FV/+8pfx+Xxj2/78z/+cd77zndx4442cf/75VaLine truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d543c50>"
"<matplotlib.figure.Figure at 0x7f3e5ba31c18>"
]
}
],
@@ -759,7 +759,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556b16ba8>"
"<matplotlib.figure.Figure at 0x7f3e637e8588>"
]
}
],
@@ -907,7 +907,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAykAAAGNCAYAAAAVeD67AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl0VfW9///XOZknQhIyhwxkIBMJmUgYZBJwrEptba/a\n2+n79Q7ctrbf9XUtvV3Cz2vxeq/LWnutvy5/ty0dvLbXWrVVMcwQAiGBkHlOSAgkhylkHs85vz+s\n3FKSEPCck+n5WIu16tnvvX1ht/G82Puzt8FqtVoFAAAAADOEcboDAAAAAMBfoqQAAAAAmFEoKQAA\nAABmFEoKAAAAgBmFkgIAAABgRqGkAAAAAJhRKCkAAAAAZpQpl5TDhw/rgQceUEREhIxGo3bt2nXD\nzI4dOxQeHi5PT09t2LBB1dXV120fHh7Wt771LQUGBsrb21sPPvigzp0799l/FwAAAADmjCmXlP7+\nfqWlpelHP/qRPDw8ZDAYrtv+4osv6uWXX9Z//Md/qLi4WEFBQdq8ebP6+vquzTz55JN655139NZb\nb+nIkSPq6enR/fffL4vFYrvfEQAAAIBZzXA7b5z38fHRa6+9pr/927+VJFmtVoWFhenb3/62nn76\naUnS0NCQgoKC9NJLL+mJJ55Qd3e3goKC9Itf/EJ/8zd/I0lqb29XVFSUPvroI23ZssWGvy0AAAAA\ns5VN1qS0tLTIZDJdVzTc3d21du1aFRYWSpJOnjyp0dHR62YiIiKUlJR0bQYAAAAAnG1xkM7OTklS\ncHDwdZ8HBQXp/Pnz12acnJwUEBBw3UxwcLBMJtN1n3V3d9siFgAAAAAH8/X1/czHsPvTvf567QoA\nAAAATMYmJSUkJESSbrgiYjKZrm0LCQmR2WzW5cuXr5vp7Oy8NgMAAAAANrndKyYmRiEhIcrPz1dW\nVpakTxbOFxQU6KWXXpIkZWVlycXFRfn5+dctnK+trdWqVasmPLYtLhcBnyopKZEkZWdnT3MSzCWc\nV7AHzivYC+cWpsJsMetMR60qmotV2VKsC13nlBKTrb974Pvjztt6ucaUS0p/f78aGhokSRaLRa2t\nrTp9+rQCAgK0ePFiPfnkk9q5c6cSExMVHx+v559/Xj4+Pnr00UclfVI2vvnNb+qpp55SUFCQ/P39\n9b3vfU/p6enatGmTTX9TAAAAAG7N4PCAattKVdlcrKozJzUw1Hvd9vq2co2MDsvVxc3uWaZcUoqL\ni7Vx40ZJn6wz2b59u7Zv366vfe1r+tnPfqannnpKg4OD2rZtm7q6upSXl6f8/Hx5eXldO8Yrr7wi\nZ2dnfelLX9Lg4KA2bdqkX//616xbAQAAAKbJwFCf9pa8o8NlH2hkbHjCuVHziOrOlmnZkhV2zzTl\nkrJ+/fqbvnTx0+IyEVdXV7366qt69dVXp54QAAAAgM2NjA7r0Ok/ae/JdzQ43D/prNHopPjwVLk6\n2/8qimSjNSkAAAAAZgezeUyFVXv0cdHv1DPQNeGcp5u3kqOzlLokR0lRGfJw85pw1tYoKQAAAMA8\nYLaYdbrhqD449qYudXeOO7PA00/ZiWuVEpOjJWFJcjI6OTjlJygpAAAAwBxlNo+pvr1CZY2FKmsq\nUv9gz7hzHq6e2pT9sNYuv09uLu4OTnkjSgoAAAAwh4yOjaqu7bRONxaqsrlYA8N9E866OLlq3fL7\ndWf2Vnm5+zgw5eQoKQAAAMAsNzI6rJrWUzrdeEyVLcUaHhmcdN5oMGplymbdlfuIFnoHOCjl1FFS\nAAAAgFmqb7BH+cVvq7AyXyOjQzed93D1VFrcSm3OflhBfmEOSHh7KCkAAADALDM8OqSDpe9r38l3\nNTQyMOmsl7uPlsXmanncKiUsXiZnJxcHpbx9lBQAAABgljCbx1RYma/dJ36n3oGrE875eC5UWmye\nlsetVFxE6rQ9pet2UVIAAACAGa534KpO1BxQQcVuXe42jTuzwNNPGQmrlR63UktCE2WcZcXkL1FS\nAAAAgBnIYrWovq1chVX5qmg6IbNlbNw5T3cfbcl5WHek3SsXZ1cHp7QPSgoAAAAwg3T3XdHx6n06\nXrVXl3vGv2oiSS7OrtqQ8YDuzNrq0LfBOwIlBQAAAJhmo2Ojqj5zUkU1+1XdUiKL1TLhrJPRWXkp\nm3R37iPy9fJ3YErHoaQAAAAA08Bqtaqlo07FtQdVWl8w6UsXJSloYZhWpm7RiqQN8vH0dVDK6UFJ\nAQAAABzoQtd5ldQeUnHdwQkXwX/K2clFy+NXaVXqFsWGJctgMDgo5fSipAAAAAAOcPZCk94v+KXq\nzpbddDY0IFKrUrcoO3GdvNx9HJBuZqGkAAAAAHZ0peeC/lT4G5XUHZp0zsvdRxkJa5STuF7RIQnz\n5qrJeCgpAAAAgB0MDPUpv/htHSr7k8zm8R8f7OzkotSYHOUkrVdSVMaseBu8I1BSAAAAABsYHRvR\n2QtNaumo05mOWtW3V2hwuH/c2ZjQROUm36nl8Svl6ebt4KQzHyUFAAAAuA1dvRf/XEjq1NJRq/aL\nLRO+cPFTYQFRevCOrykxcvm8vp3rZigpAAAAwBT0D/WqsvmEqs6cVEtHnbr7Lk95X1/vAN2X96hW\nJK2X0ehkx5RzAyUFAAAAmEDvwFWVNxWprPGY6tsrZLGYb2l/Tzdvbcx8UOszHpCri5udUs49lBQA\nAADgL1ztu6yyxmMqazympvM1sk7y9ve/5r8gSDEhSxUdulQxoYkKXxQtJye+ct8q/okBAABg3hsc\nHtCJmv06WXdEZzrrprSPs5OLIoPi/lxIPikmvl7+dk46P1BSAAAAMG9dvNqhw2Uf6Hj1Pg2PDN50\nPtg/QsvjViolJkcRgTE8MthOKCkAAACYdzout+lPhb9WZXOxrLJOOhseGKPlcSuVHrdSIf6LHZRw\nfqOkAAAAYF6pPnNSP/vw3zUyOjThTFRIgpbHrVRabJ4CF4Y6MB0kSgoAAADmkaLqffqvva/JMs5i\neB/Phboj7R7lJm+Un0/gNKTDpygpAAAAmPOsVqvyi9/WB8d+c8O2iMAlWp/xOWXEr5GLM2tMZgJK\nCgAAAOYsi9Wi1s4GFZR/pOLag9dtM8igz6/7ptam38fb32cYSgoAAADmlNGxUTW0V6iiqUgVzSfU\nM9B1w4yzk4u+ctd3lRG/ahoS4mYoKQAAAJj1Bof7VX3mpCqaT6jqzMlJHyfs4eal//25ZxQXnuLA\nhLgVlBQAAADMSn2DPSptOKqKpiI1tFfKbBm76T7+C4L0dw98X6EBkQ5IiNtFSQEAAMCsYbFa1HC2\nQoWV+SpvKppSMXFzcVdydJbSYnO1LDZXrs5uDkiKz4KSAgAAgBmvu++Kjlfv0/GqvbrcY7rpvI/n\nQi1bskJpsbmKj0jjqV2zDCUFAAAAM5LZYlb1mZM6VrlHVWdOyjrOu03+UtDCMC2LzVVabK6iQhJk\nNBgdlBS2RkkBAADAjHLxaoeKqvfpePU+9fTf+GSuvxToG6oVyRuVHpenEP/FDkoIe6OkAAAAYNqN\njo2ovOm4jlXuUX17xaSzzk4uWh63SitTNykuPJV3nMxBlBQAAABMC4vVopbztSqpPaTShqMaGO6b\ndD40IFKrUrcoO3GdvNx9HJQS04GSAgAAAIcyXWlXce0hldQd0pWeC5POurq4KzNhjValblFUcDxX\nTeYJSgoAAADsbmCoT8W1B3Wi5oDOXmi66Xx06FKtTN6kjIQ1cnf1cEBCzCSUFAAAANiF1WpVS0ed\nCis/Vmn9UY2aRyad9/JYoBWJ65WXslmhASyCn88oKQAAALCpgeE+ldQe0tGKj9VxuW3SWRcnVy2L\nzVVO4jolRi6XkxNfT0FJAQAAgA1YrVa1mhp0tOJjnao/otGxia+aGGRQ/OJlyklcp7TYlfJw83Rg\nUswGlBQAAADctq7eSzpVf0TFNQd1/nLrpLP+PoFambpFK5I2yM9nkYMSYjaipAAAAOCWDA4PqLzp\nmIprD6nhbIWssk44azQYlRKTrdXL7lJi5HIZjU4OTIrZipICAACAmzKbx1TbdlrFtYdU0Vw06e1c\nkuTnvUh5qZu1MmWTFnoHOCgl5gpKCgAAACbU09+l/afe1Ymag+ob7J501mAwKjk6U6tT71JydCZX\nTXDbKCkAAAC4Qf9gj/ae/IMOl31w06smi4NilZ24TlkJa7XAa6GDEmIuo6QAAADgmsHhfh0ofV8H\nSt/X8MjghHN+PoHKSVyn7MR1CvHnnSawLZuVlLGxMT377LN666231NHRodDQUD322GPasWOHnJz+\n51Lfjh079MYbb6irq0u5ubl67bXXlJycbKsYAAAAuA3DI4M6XP6R9p38gwaGesed8XD1VEbCamUn\nrteSsCQZDUYHp8R8YbOSsnPnTv30pz/VL3/5Sy1btkxlZWX62te+Jjc3N33/+9+XJL344ot6+eWX\ntWvXLiUkJOi5557T5s2bVVdXJ29vb1tFAQAAwBSYLWbVtZWppO6QypuKNDI6NO7cAk8/bVnxRa1M\n2SQXZ1cHp8R8ZLOSUlxcrAceeED33XefJCkyMlL333+/ioqKJH3ygp9XXnlFTz/9tLZu3SpJ2rVr\nl4KCgvTmm2/qiSeesFUUAAAATMBqtepS33m9fbBUpfUF6p1kMbyXu482ZT+sO9LukauLmwNTYr6z\nWUm555579OKLL6qurk5Lly5VdXW1Dhw4oGeeeUaS1NLSIpPJpC1btlzbx93dXWvXrlVhYSElBQAA\nwE4sFrPOXmhSZUuJCsv3qHeoa9J5D1dPbcx6SOuWf07urh4OSgn8D5uVlH/8x39Ue3u7kpKS5Ozs\nrLGxMX3/+9/X3//930uSOjs7JUnBwcHX7RcUFKTz589PeNySkhJbRQSu4byCPXBewR44r3Line truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d4b9a90>"
"<matplotlib.figure.Figure at 0x7f3e5a100b38>"
]
}
],
@@ -1005,7 +1005,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d4e26a0>"
"<matplotlib.figure.Figure at 0x7f3e5a179048>"
]
},
{
@@ -1070,7 +1070,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAoAAAAERCAYAAADrHxZYAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlclWXex/HvOYIsLigqKq6YaZmYg7umpqmZku1Wtiim\nLeaamUuZmjU9mfZk2xiVaE3N2PpMZe4bLhEupZl7hitooqKIrOd+/rhG9AiYKHCA+/N+vXgJ97mX\n6xxn8su1/C6HZVmWAAAAYBtOTzcAAAAARYsACAAAYDMEQAAAAJshAAIAANgMARAAAMBmCIAAAAA2\nQwAEUKicTqe6dOni6WYUaytXrpTT6VRERMRlnT958mQ5nU6tWrWqkFsGoLQiAAKlmNPpdPsqU6aM\nKleurA4dOuidd95RZmZmkbTD4XAUyXMudC5U5edr//79Rd7OC13u5+RwOLK/AOBKeHm6AQAKl8Ph\n0KRJkyRJmZmZiouL09dff60ff/xRS5Ys0X/+8x8Pt7BwhISEaPLkyW7HLMvSlClT3D6TC1WqVKmI\nWnd1hg4dqgcffFB16tTxdFMAlFAOdgIBSi+n0ymHw6GsrCy347t371ZYWJjOnDmjFStWqHPnzoXa\nhptvvlnLly8vtGfkR16fiSetXLlSXbt21YABAzR79mxPNweADTAEDNjQtddeq06dOkmSNmzY4Pba\nrl27NG7cOLVs2VLVqlWTr6+v6tevr8GDB+vAgQO53i89PV1Tp07VNddcI19fXzVo0EATJ05UWlpa\nrucfPnxYL730kjp06KAaNWrIx8dHtWrVUr9+/bRt27Yc58fFxWXPJTx8+LAGDhyomjVrysvLq8B6\nMJ1Op0JCQnTq1CmNHDlS9erVk7e3t2bOnHnFn4skLVmyRH369FH16tXl6+urOnXqKDw8XN9///1f\ntsmyLI0ZM0ZOp1Ph4eE6c+aMpPNzAKOjo3N9DykpKRozZozq1q0rX19fXXvttZo2bVqez5g5c6aa\nNGkiPz8/1a5dW8OGDVNSUpLq16+vkJCQy/0IAZQgDAEDNnWu89/Hx8ft+Ndff633339fXbt21U03\n3aSyZctq69atmj17tr777jtt3LhRtWrVcrtP37599e233+qaa67RsGHDlJ6erqioKG3ZsiXXZ0dH\nR+u1115T165dFRYWpvLly2vXrl366quv9O2332rNmjVq3rx5jusSExPVvn17VapUSffff79cLpeq\n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\nuyFg6co+lylTpmjBggXq2LGjFixYoOnTp2vRokUKCQnR448//pfP7Nevn+bNm6f4+Hh17txZO3fu\nlGTmKub3M8rrmn/84x964403VKFCBUVGRupf//qXevToocWLFyspKSl7niCA0oW9gAEAOezevVuN\nGzfWgw8+mOsiFwAlGz2AAGBjR48edZvXKEkpKSkaOXKkJOmuu+7yRLMAFDLKwACAjb311lv65JNP\n1KVLF9WoUUMJCQlatmyZDh06pF69eunee+/1dBMBFAICIADYWLdu3fTzzz9r8eLFOn78uLy9vdWo\nUSONHDkyuxcQQOmT5xzApKSkom4LAAAACsGF+31LzAEEAACwHQIgAACAzVzWHMCLuw0BAABQvF1q\nOh89gAAAADZDAAQAALAZAiAAAIDNEAABAABshgAIAABgMwRAAAAAmyEAAgAA2AwBEAAAwGYIgAAA\nADZDAAQAALAZAiAAAIDNEAABAABshgAIAABgMwRAAAAAmyEAAgAA2AwBEAAAwGYIgAAAADZDAAQA\nALAZAiAAAIDNEAABAABshgAIAABgMwRAAAAAmyEAAgAA2AwBEAAAwGYIgAAAADZDAAQAALAZAiAA\nAIDNEAABAABshgAIAABgMwRAAAAAmyEAAgAA2AwBEAAAwGYIgAAAADZDAAQAALAZAiAAAIDNEAAB\nAABshgAIAABgMwRAAAAAmyEAAgAA2AwBEAAAwGYIgAAAADZDAAQAALAZAiAAAIDNEAABAABshgAI\nAABgMwRAAAAAmyEAAgBwBZxO6euvPff8yZOl6tVNOz7+2HPtQMlEAAQAIA+bNpmAddNNOV9LSJDC\nw4u+TZK0dav00ktSZKRpR9++Uv360owZnmkPSh4CIAAAefjwQ6lVKykmRtqxw/21oCCpbNm8r83M\nzP/zMjIu77w9e8yfd9xh2uHrKzkc+X8e7IsACABALs6elf71L2nKFKlrV+mjj9xfv3AIOC7O/Pzv\nf5tz/f1N75wkzZ0rhYaakFajhjRggPs93ntPuvtuqXx56fnnJZdLeuwxqUEDc59GjaTXX5csy1wz\nebI5/9z1TqfUpYu0b580Zoz5uUyZQvxgUCp4eboBAAAUR19+KQUESD17SsnJ0tNPS6++Knld4l/O\n8ePNMGxUlDnv/felkSPNdeHh5j4rVrhfM2WKef2NN0wvnssl1a4tffGFVK2a9NNP0uOPS1Line truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d4b2208>"
"<matplotlib.figure.Figure at 0x7f3e5bca7b38>"
]
}
],
@@ -1302,7 +1302,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556aaee80>"
"<matplotlib.figure.Figure at 0x7f3e5a0b2898>"
]
},
{
@@ -1310,7 +1310,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a366a0>"
"<matplotlib.figure.Figure at 0x7f3e637325f8>"
]
},
{
@@ -1318,7 +1318,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f355290dc88>"
"<matplotlib.figure.Figure at 0x7f3e637851d0>"
]
}
],
@@ -1381,7 +1381,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a56080>"
"<matplotlib.figure.Figure at 0x7f3e63836400>"
]
},
{
@@ -1430,7 +1430,7 @@
"\n",
"ac = ACSim(ac_pos, (100,0), 0.02)\n",
"\n",
"kf = UKF(4, 2, dt, fx=f, hx=h, kappa=-1)\n",
"kf = UKF(4, 2, dt, fx=f, hx=h, kappa=0)\n",
"\n",
"kf.Q[0:2,0:2] = Q_discrete_white_noise(2, dt=dt, var=0.1)\n",
"kf.Q[2:4,2:4] = Q_discrete_white_noise(2, dt=dt, var=0.1)\n",
@@ -1464,9 +1464,9 @@
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAA0cAAAGkCAYAAAD69V6GAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlUVeX6B/DvYYYDHAY5DKLgAIqopDiBmhqIOOJQmgPq\nzYruVZOoq/W712zuNl4jy6QyDSM1xTnFCVHhOABCDiBOoaAMIoIgMpyzf394PbUDFPDAZvh+1mqt\nzvO+Z+9nv4ulPO69n1cmCIIAIiIiIiKiNk5P6gSIiIiIiIiaAxZHREREREREYHFEREREREQEgMUR\nERERERERABZHREREREREAFgcERERERERAWBxREREREREBEDC4ujDDz9E//79oVAooFQqMWHCBJw9\ne7bavIyMDEyePBnW1taQy+Xw9vZGenq6dry8vBwLFy6EnZ0dzM3NERQUhOzsbNExCgsLERwcDCsr\nK1hZWWH27NkoKipq9GskIiIiIqKWQ7LiKC4uDgsWLIBKpcLBgwdhYGAAf39/FBYWaudcuXIFgwcP\nRpcuXRAbG4uzZ8/i/fffh7m5uXZOaGgooqOjsX79ehw5cgTFxcUYN24cNBqNds6MGTOQkpKCmJgY\n7NmzB8nJyQgODm7S6yUiIiIiouZNJgiCIHUSAFBaWgqFQoFt27Zh7NixAO4XNfr6+oiMjKzxO0VF\nRVAqlVizZg2mT58OAMjKyoKLiwt2796NgIAApKWlwdPTE/Hx8fDx8QEAxMfHY+jQoUhPT4e7u3vT\nXCARERERETVrzeado+LiYmg0GlhbWwMANBoNdu7cCQ8PDwQGBkKpVGLAgAHYuHGj9jtJSUmorKxE\nQECANubs7AwPDw+oVCoAgEqlgrm5ubYwAgBfX1/I5XLtHCIiIiIiIgOpE3hg0aJF6NOnj7aIycvL\nQ0lJCT744AO89957+Pjjj3HgwAHMnDkT5ubmGDNmDHJycqCvrw9bW1vRsezt7ZGTkwMAyMnJgZ2d\nnWhcJpNBqVRq5zzA95CIiIiIiFoehUKhk+M0i+IoLCwMCQkJOHr0KGQyGQBo3xmaOHEiQkNDAQC9\ne/dGYmIiVqxYgTFjxtR6vGbypCAREREREbUgkj9W98orr2DDhg04ePAgXF1dtfF27drBwMAAPXr0\nEM3v3r07rl69CgBwcHCAWq1GQUGBaE5ubi4cHBy0c/Lz80XjgiAgLy9PO4eIiIiIiEjSO0eLFi3C\nL7/8gtjY2GqNEYyMjNC/f39R227gfmvvB0WUt7c3DA0NsXfvXlFDhvT0dPj6+gIAfHx8UFJSApVK\npX1kT6VSobS0VDunJrq6NUePlpiYCADo16+fxJm0LVx3aXDdpcF1lwbXvelxzaXBdZdGY7wSI1lx\nNH/+fKxbtw5bt26FQqHQvv9jYWEBuVwOAFi8eDGmTp2KoUOHYsSIEYiNjcWGDRuwbds2APcLmHnz\n5mHx4sVQKpWwsbFBWFgYvLy84O/vDwDahg4hISGIiIiAIAgICQnB+PHj4ebmJs3FExERERFRsyPZ\nY3UrV65ESUkJ/Pz84OTkpP3vs88+084JCgpCREQEPv30U/Tu3RtfffUVIiMjMXr0aO2c5cuXY9Kk\nSZg2bRqGDBkCS0tL7NixQ/vuEgBERUXBy8sLo0aNQmBgIPr06VNre3AiIiIiImqbJLtz9OdNWh9m\nzpw5mDNnTq3jRkZGCA8PR3h4eK1zrKysWAwREREREdFDSd6QgYiIiIiIqDlgcURERERERAQWR0RE\nRERERABYHBEREREREQFgcURERERERASAxREREREREREAFkdEREREREQAWBwREREREREBYHFERERE\nREQEgMURERERERERABZHREREREREAFgcERERERERAWBxREREREREBIDFEREREREREQAWR0RERERE\nRABYHBEREREREQFgcURERERERASAxRERERERtVLX8i7jQtZpaASN1KlQC2EgdQJERERERLq2PT4S\n+xM3AwB6dR6AeWOXQE9PX+KsqLnjnSMiIiIialUOndqhLYwA4PTlE4g5uUnCjKilYHFERERERK1G\n6sVj2HJ4dbX4nuMbcDH7rAQZUUvC4oiIiIiIWoUrN87jxz2fQ4BQbUwQNFi753OUlhVLkBm1FCyO\niIiIiKjFy799AxE73kelukIb05OJf9UtKinAT/u+hCBUL56IABZHRERERNTClZQV45ut71S7KzT1\nqb/D33uyKHbmyknEpexsyvSoBWG3OiIiIiJqsSqqyhGx433kF90QxUcNeAa+PUdCra7ChewzyMzJ\n0I5tO7oWnZ080NG+a1OnS80c7xwRERERUYuk0agRuee/+P3GeVG8f/fhGDNoBgBAX98AcwNfhamR\nmXZcranC2t2f4V5FWZPmS80fiyMiIiIiapG2Hl2L1EvHRDE3516Y7j8fMplMG7NV2ONZ//mieflF\n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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a96860>"
"<matplotlib.figure.Figure at 0x7f3e637ae400>"
]
},
{
@@ -1553,7 +1553,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f35569d8b38>"
"<matplotlib.figure.Figure at 0x7f3e636a6128>"
]
}
],
@@ -1620,7 +1620,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAz0AAAGkCAYAAAAbnkvXAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl8k9eZL/CfZEuW5d3G8m5sg81iMGAgIUAIJIGELKQJ\nzbRNM21m7jTT2zQzaadNb3qnA22Y3GGaMMk03TLTtLQzmTRts7RpFpKQBAhLIMZsxthgYxsv8i7L\nsmXL0nv/cCTrvK9svEh6Zen3/XzmMzlH20EFSc97nvM8GkmSJBAREREREYUprdoLICIiIiIiCiQG\nPUREREREFNYY9BARERERUVhj0ENERERERGGNQQ8REREREYU1Bj1ERERERBTWGPQQEREREVFYUy3o\nOXDgALZt24bc3FxotVrs3btXcZ+dO3ciJycHRqMRmzZtQlVVlc/nkiQJW7duhVarxR/+8IdAL52I\niIiIiGYR1YIem82GsrIyPPPMM4iNjYVGoxFu3717N/bs2YNnn30Wx48fh8lkwubNm9Hf3694rqee\negpRUVEAoHgeIiIiIiKKbBpJkiS1F5GQkIAf//jH+NKXvgRgdOcmOzsbf/d3f4fHHnsMAGC322Ey\nmfDkk0/iwQcf9Dz2+PHj2L59Oz755BNkZGTg97//Pe655x5V/hxERERERBR6QvJMT319PcxmM7Zs\n2eKZMxgM2LBhAw4fPuyZs1qtuO+++/Af//EfSE9PV2OpREREREQU4qLVXoAvbW1tAICMjAxh3mQy\noaWlxTP+6le/ittuuw233HLLhM9nsVj8v0giIiIiIgq4pKSkGT9HSAY9E3Gf2fnNb36D06dP48SJ\nEwBGU+K8/z8REREREREQoultmZmZAACz2SzMm81mz2379+9HVVUV4uPjodPpoNfrAQCf+9znsGHD\nhuAumIiIiIiIQlZI7vQUFhYiMzMT+/btw8qVKwGMFjI4ePAgnnrqKQDAP//zP+Pb3/625zGSJGHp\n0qV46qmncNddd4373P7YHqPJce/CrVq1SuWVRBa+7+rg+64Ovu/q4PuuDr7v6uD7rg5/H09RLeix\n2Wyora0FALhcLjQ0NKCyshJpaWnIy8vDI488gieeeAILFy5EcXExdu3ahcTERNx3330AgOzsbGRn\nZyueNy8vDwUFBcH8oxARERERUQhTLeg5fvw4brzxRgCj53R27NiBHTt24IEHHsDzzz+PRx99FIOD\n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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556ac2828>"
"<matplotlib.figure.Figure at 0x7f3e5a0335c0>"
]
}
],
@@ -1672,7 +1672,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAxsAAAGGCAYAAAATuZx9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd4VNedP/73nT7SjIQKEhICJEAU0UVvBptmjMF23Hvs\nOLGJ4yTrzS/f3SSb5LfJxt8UZzfeTeyNE/cSHPcCroCxaUamWHRRRBGod02fud8/CLbEvUIj6dy5\nM3Pfr+fhefycmTn32B7Onc89n885kizLMoiIiIiIiAQz6T0AIiIiIiJKTgw2iIiIiIhIEww2iIiI\niIhIEww2iIiIiIhIE5ZYX7ClpSXWlyQiIiIiIgHS09N79X6ubBARERERkSYYbBARERERkSZinkbV\nWW+XYcgY2jx+vPbJQbyzrQIef1Dv4fRLc3MzAGDAgAF9+rwkARkuJzLTHMh0O5HpdiLD7URm2rl/\nzkxzIsPlgMtpg81qhiRJIof/JVmWEQiG0e4NoKndh8ZWLxrbvGhs9aKp7R//3OZFY6sPTe1eGP30\nnhS7FStmFeOa+WPgTrHrPZyYKSsrAwBMmzZN55EkpkhbK3y7tsH7+VZEWpt79Vlzdi7so8fDNmoc\nLAXDIJn4LFFrIr7v4aYGBCr2I3BoL4KVRyBHIlF/VjJbYB8/BY7pc2HJH6rZ/E8E9K8MQor1oX6d\nB8tggzrz+oN4c/MhvPrJwYQPMs6LNthIS7FjcLYbg7PdyM92Y3B2GgZnu5GX5YbNao7FUIUJBMM4\n29CGqvo2VNW34kz9+X9uQ6vHr/fwYirFbsW1l4zFqrmj4bDp+mwnJhhs9J4sywieOApf2WYEDnzR\nqx+blrwC2MeXwj56PMxZAzUcJakR/X2P+LwIHDmAwP49CBzeDzkcivqzlrwCOKfPhX18KSSrTch4\niDrrz+93Bhuku1A4gvc+O4I1G/ahqd2n93CEujDYMJskDM1Jx4j8DIwcnInh+RkoGJhmmKffbR4/\nTte14vjZZlScbsDRM004WduCcCS5l0IyXA7cdNl4LJ0+AhZz8j5xZrARvYjPB395GXxlmxGqrY76\nc+YBmbBPmAr7hFJYBg7ScITUEy2/7xGvB/79e+DfuxPByiNRf87kcMI+eQYcU+fAkp0jfFxkXAw2\nKCFFIjI+LT+JZz/Yg+rGDr2HI5zZJMEBPwqyU3DZrMkYkZ+BoryMhFup0FogGMbxs004eqYJR6oa\ncaSqMWkDkLxMF25bMhHzJgyFyZR8KQ8MNnoWbmqAd+sG+PaUQQ5Et9JncjhhGzcFjonTYBlSyHSZ\nOBGr73u4pQn+8s/hL/+8V4GpbfhoOOcshHX4aH5nqN8YbFBCkWUZOw+fxTPv78Gxs73LS45nZpOE\nEfkZmDA8FxOKclBSOBD7yvcA4I+v3vL6g9hfWYfy47UoP1aDI1VNiCRRIcjwvAG4Y+kklI7KS6of\nAQw2uheqPQvPpx8hsG9XdKlSkgTbqBI4Js+CrXgMJHPyp+Elmlh/32VZRrjmDHx7dsC/ZwciXk9U\nn7PkFSBl3iLYxkxkLQ/1GYMNShgna1rw57c/x56jNXoPpd9MkoSRgzMwvigHE4bnomTYQKQ4rF3e\nwx9fYnh8Qew/UYfyYzXYe7w2aYKPSSNy8a0rp2JobnLMhfy+KwVPVcLz6YcIHN4X1ftNqS44SmfD\nMXU2zOkZGo+O+kPP77scDMK/bxe8ZZsRqjoZ1WfMWQORMvcy2CdOY/BKvcZgg+Ke1x/Eix/txZtb\nDiV0eozLacPUUXmYMWYwpo7KQ6rz4oV4/PGljQ5vADsrzmL7gSp8fvgs2r0BvYfUZ2aThFVzRuPm\nRePhtFt7/kAc4/f9HFmWETx2CJ5PP4o63946dDgc0+fCPnYifwgmiHj5vgerTsJXthn+vTshh3ou\nKjelDUDKrAVwTJ0NyWaMekHqPwYbFLdkWcamPSfwxLrdaGzz6j2cPhmUmYqZYwswY8xglBQO7FWB\nb7zcjJJZKBzB/so6fHawCtsPnE7Y+p9MtxN3L5+MSyYNS9jUKqN/32VZRvDIAXRsWIfQ2dM9vl+y\n2eGYOA2OaXNgyc2PwQhJpHj7vkc8HfDv2QFv2WaEG+t7fL8pJRXOWQvhnDmfQQf1iMEGxaUT1c34\n37c+R/nxWr2H0mvD8wZg3oShmDm2AENy0vr84y/ebkbJTpZlnKptxfYDp/Fp+cmErAmaUJSDe1dO\nxbBBfTubRU9G/r4HTx5Hx0dvI3jyWI/vNaW44Jx1CRzT58HkcMZgdKSFeP2+y5EIAof2wrP5o6hS\nrEwuN1IWLINjykyuqlG3GGxQXOnwBvDi+r14e+vhhEqZGpiegoWTC7FwcqGwHPp4vRkZxcmaFmzc\nXYmNuytR1xJdMWU8MJskXDl7FG6+bHyPqXrxxIjf91BtNTrWv43AoZ5rMszpA+Ccc9m5H3U8CyHh\nxfv3XZZlBI9XwPvphwgcr+jx/ebMbKReegVsJZNYSE4KDDYobmzffxp/fH1HwpyX4XLaMG/8ECyY\nXIiSYQOFb0ca7zcjo4hEZOw/UYeNuyuxee+phKnxyHA5cP/V0zGzpEDvoUTFSN/3cHMjPBvfhW/P\njh7fa87ORcq8RbCPn8Inx0kkkb7vwaqT8H76IfwHy3t8ryWvAKmLVnDLXOqCwQbprs3jx5/f/hwb\nd5/Qeyg9kiRg2qh8LJk2HNNG58Nq0e7ci0S6GRlFMBRG2aEz+KDsGMoOn0EibGq1cPIwfOvKqXF/\n+KMRvu8RTwc8n3wA347NPZ7wbBk8FCnzFsM2ahyfFCehRPy+h+qq4d28Hv7yz3vcgtlWVIyURVfC\nOnhojEZH8aw/v9/5iIX6LVFWM9JS7Fg6bTgunzESuZkuvYdDOrFazJg9bghmjxuCmsZ2vPvZEbxf\ndgytnugOWNPDxt0nsOdITUKtciQbORKBb9d2eNa/g4jn4psQmLNzkbpoBWyjx/PJMMUVy8BBcF99\nC5zzFsOzcR38+3Z3+97A8QoE/vKfcJTOQuqiFTCl8L5JfcOVDeqzRFnNGDs0G1fMKsbc8UM0XcVQ\nk4hPvowoGApj895TWLutAgdO9ryLi57ieZUjWb/vwaqTaF/3So/Ftub0AUhZcDnsk6ZzJcMAkuH7\nHqw6Cc/6tQgcO3TR95mcKUi57Ao4Smfzu21QXNmgmIv31Qy71YxLJxdi+cxiDM/nwVh0cVaL+cvN\nAY6dacK67RXYsLsS/mBY76EpcJUjdiKednR89A58O7dd9H0mZwqc85fAOW0uJGtin5VCxmIdPBTp\nt9+HwLHD6PjobYTOnFJ9X8TrQfs7L8O3cxtcV1wLa0FhbAdKCY0rG9QrHd4A/vetz7Fhd6XeQ1Hl\nctpw5axirJwzGmmp+j/5TYYnX0bV0u7D21sP4+1tFXFbUL5w8jDct3Ja3OxYlSzfdzkSgW/nVnjW\nr0XE2/0uZpLVeu6cgjmXcgtbA0qW7/t5siwjcGAPOtavRbih7qLvdUyZidRFV8KUytQqo+DKBsVE\nxekG/OZvm+Py0LRMtxNXzxuNy2eMTPhTmCk+pLscuHXJRHztkrF497MjeP3TQ3F3MOXG3Sdw8GQ9\nfnjTXBQXZOk9nKQQOnsabW+t6fFQPsfEqUhZvBJmNx+aUXKQJAn2ksmwjZ4AX9lmdGxYB9mvnr3g\n27UdgQNfIGXRlXCUzmJqFV0Ugw3qkSzLeHPzITz13h6EwhffvSLW8jJd+NolY3HZlCLYrLGtxyBj\ncNqtuGb+WKyYNQrrdx3Hq5sO4Gxju97D+lJ1Ywd++L8f4uvLJmHVXG5V2VdyKATPpvfh3fzRRXfp\nseTknUsjGTYihqMjih3JbIZz5iWwj5uCjg/f6nZ754jPi/Z3/o7A/t1wrbwR5gw+8CB1DDbooto8\nfvzXy9vw2cEzeg+li4KBbtx82QTMHT8EZjOfqJD2bFYzLp8xEkumDsfmvafw4vpynK5r03tYAIBQ\nOIK/rN2FL47V4PvXzYrL4vF4FjxzCu1vvIBQbXW375HsDqQuvByO6fMgmflgg5KfyeWG++pb4Cid\njfa1LyNUo/47IHC8Ak2P/RapS1bCMXUOH3iQAms2qFv7jtfidy9tRX0cnbycnZ6CWxaNx2VTihIi\nyEi2nF76Sjgcwfpdx/HCR3vj7u/ID26YjXFFOTG/dqJ936NdzXBMnIbUxSthcqfFcHQU7xLt+94f\ncjgM3+db0LFhLWRf9xvD2IqKucqRpHioHwkVicj4+8Z9eOGjvYjEyYlnLqcNNywswYpZoxIqXcpI\nNyOjCgTDeGfbYby0cX/cFJKbJAm3LBqP6xeOg8kUu6eMifR9j2Y1w5KTB9eK62EdWhTDkVGiSKTv\nuyiR9jZ0fPQ2fLs/6/Y9ks3OVY4kxAJxEqbN48dv/7YFu450fwOOJbvVjKvmjsbX5o+Nmx13iDqz\nWc24Zv5YLJ02Aq9sOoA3txzSfcvciCzjuQ/LsbeyFj+8aS7TqjqRwyF4Pr74aoZkMsE5fwlS5i+G\nZOZtkug8k8sN91U3wz5+CtrfWoNwS7PiPXLAj/Z3XkZg/x64rroZ5nRuP290muWhPPTQQzCZTHjg\ngQe0ugQJdrKmBQ/+6b24CDRMkoTlM0biz/+8ErcvncRAg+JeqtOGO5ZNwp//eSWWzxgJUxw80dt9\npAYP/uk9nKxp6fnNBhBuakDLU3+E55MPug00LLn5GHDPPyF14eUMNIi6YRsxBgPu+z9wlM7q9j2B\n4xVofuy38B8sj+HIKB5pMpNu27YNjz/+OCZOnMgltATx2YEq/G7NFngDIb2HgjFDs7B61XQexkcJ\nKTPNiW9fPR3Lpo/AY2+V4eDJBl3HU93YgR88+j5+cOMczBg7WNex6Mm/fw/a31qDiE99+2Line truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a8ec50>"
"<matplotlib.figure.Figure at 0x7f3e6381f2b0>"
]
}
],
@@ -1738,12 +1738,12 @@
" return measurement(sa_pos, sb_pos, pos)\n",
"\n",
"\n",
"def moving_target_filter(std_noise):\n",
"def moving_target_filter(std_noise, Q_variance):\n",
" dt = 0.1\n",
" f = UKF(dim_x=4, dim_z=2, dt=dt, hx=hx, fx=fx, kappa=0.)\n",
" f.x = np.array([target_pos[0], 1., target_pos[1], 1.])\n",
"\n",
" Q = Q_discrete_white_noise(2, dt, 1.1)\n",
" Q = Q_discrete_white_noise(2, dt, Q_variance)\n",
" f.Q[0:2,0:2] = Q\n",
" f.Q[2:4, 2:4] = Q\n",
"\n",
@@ -1781,7 +1781,7 @@
"target_pos = [100, 200]\n",
"\n",
"std_noise = math.radians(0.5)\n",
"f = moving_target_filter(std_noise)\n",
"f = moving_target_filter(std_noise, Q_variance=1.1)\n",
"plot_straight_line_target(f, std_noise)"
],
"language": "python",
@@ -1792,7 +1792,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAycAAAGNCAYAAAALsQ4IAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl0VeW9//H3GXIyJyQhE0kISchEgACJTCoIBJwQBKkI\nxam03N5a7o9rLYr1Vu+tVVGrXCq1rbcIBhFlUlRERJBBQEhABoFAmBNIgBACmZNz9u8P2tSUc5hM\nDgl8XmtlrbD3d+/zfdZeIXzYez+PyTAMAxERERERkWvMfK0bEBERERERAYUTERERERFpIRRORERE\nRESkRVA4ERERERGRFkHhREREREREWgSFExERERERaREUTkREREREpEW4ZDh57rnnMJvNjb7atWt3\nQU1UVBQ+Pj4MGDCAXbt2NdpfU1PDxIkTCQ0Nxc/Pj+HDh1NYWNi0IxERERERkVbtsu6cpKSkUFRU\n1PC1Y8eOhn1Tp07ltdde44033mDz5s2EhYUxePBgysvLG2omTZrEokWLmDdvHmvXruXs2bMMHToU\nh8PR9CMSEREREZFWyXo5RRaLhbCwsAu2G4bBtGnTmDJlCiNGjABg9uzZhIWFMXfuXCZMmEBZWRkz\nZ85k1qxZDBo0CIDs7GxiY2NZsWIFQ4YMacLhiIiIiIhIa3VZd04OHDhAVFQU8fHxjBkzhoMHDwJw\n8OBBiouLGwUMLy8v+vXrx/r16wHIzc2lrq6uUU10dDSpqakNNSIiIiIiIpe8c9K7d29mz55NSkoK\nxcXFPP/88/Tt25fvvvuOoqIiAMLDwxsdExYWxrFjxwAoKirCYrEQEhLSqCY8PJzi4uJG28rKyn7Q\nYERERERE5NoIDAz8wee4ZDi54447Gr7v3Lkzffr0IS4ujtmzZ9OrVy+Xx5lMph/cnIiIiIiI3Diu\neCphHx8f0tLSyM/PJzIyEuCCOyDFxcVEREQAEBERgd1up6SkpFFNUVFRQ42IiIiIiMhlvRD/fdXV\n1ezevZuBAwcSFxdHREQEy5cvJyMjo2H/unXrePXVVwHIyMjAw8OD5cuXM2bMGAAKCgrYs2cPffv2\ndfk5TXFbSJpXTk4OAJmZmde4E7kUXavWQ9eqddH1aj10rVqGTbsMXsqGD9e4rvHxOk23pCUsfGEU\n4UH+7mtOrkpTv5ZxyXDyxBNPMGzYMGJiYjhx4gS/+93vqKqq4uGHHwbOTxP8wgsvkJKSQmJiIs8/\n/zz+/v6MHTsWOB8yxo8fz+TJkwkLCyM4OJjHH3+c9PR0srKymnQwIiIiItKyGIbBV1vgxXdgRY7r\nOn/fYjKSF5MStxKrpY6a2lsBhZMbzSXDSWFhIWPGjOHUqVOEhobSp08fNm7cSExMDACTJ0+mqqqK\nxx57jNLSUnr37s3y5cvx9fVtOMe0adOwWq2MHj2aqqoqsrKymDNnjt5LEREREblOGYbBJ1+fDyUb\nv3NdFxRwlIyUhSS2X4fFbG/YfvrsCdqHd3RDp9KSXDKcvPfee5c8ybPPPsuzzz7rcr/NZmP69OlM\nnz79yroTERERkValvt5g/ip4KRt27HddFxqUT2bqAuKjNmEyGQ3bPSw2/DzbYDZf8avRch244ndO\nRERERET+VVW1nekLTvHGAj8KT/q4rIsK3UFG6kJiwrfxrw/RZGWMJNIzFZPJRNcEvR90I1I4ERER\nEZGrdra8nl/P2MZ7KzpQXhnmsi42MofM1AVEts1zut/m4cVNqQMoPFjsdL/cGBROREREROSKlZ41\neOW9cqZ/YKKyuoeLKgeJMV/TI2URoUGHAIgNT6RLfE+sVhsWswWzyYzNw5OkmHSC/NsqnNzgFE5E\nRERE5LIVnzZ4/X2YscBORbWf0xqzuY6U2K/onvIhQf7HMJvMdEu8hf7d7iEuMtnNHUtronAiIiIi\nIpd0uMjg1bnwt4+huhbAckGN1VJD/+7buTl9FZU12/Dx9KVH0khuTb+TIP9Qt/csrY/CiYiIiIi4\ntOewwctzYM7nUG93XmPzqGBg5rf86VfpdIjsCfR0a49y/VA4EREREZELbMk7v5r7wq/AMJzXeHuW\nkZ60hC4Jy/j9hNdoG6hFE+WHUTgRERERkQZrvzV4MRuWbXRdExMOPZI+JCL0PTystQBs2PkF99z8\noJu6lOuVwomIiIjIDc4wDJZtPL+a+7rtruuSYuDXP3YQ2fYjvsidi91e37DvSHG+GzqV653CiYiI\niMgNym43WLzmfCjZutd1Xds2B8hMXcit3Yo4frqabQeOXVATGtSuGTuVG4XCiYiIiMh15mzFGQ4e\n30N4cBThQdGY/mUp9rp6g3c/h6lzIO+I6/NEtt1NZuoC2kdswWSC4yXO67om9GL4LQ834QjkRqVw\nIiIiInKdqKmtYkXuIlbmfkSd/fy7IKGBkXRJ6MWA7sOweQTxt4/h1blw5CJrHbaP2EJG6kKiQndd\n9PN8vfwZddsEeiTdckEAErkaCiciIiIirVxNXTXf7PqS5ZsWcLaytNG+k2XHWfbN50x735sd+fdS\nes7m4iwOEqI3kpGykLDgA5f8zPSE3tw/8Of4+7RpghGInKdwIiIiItJKlVedZfW3n7B2+2dUVp+7\nYH9VjT/b9g5le/7d1Nb5Oj2HyWQnOXY1PVIWExxQcNmffXuv+xVMpMkpnIiIiIi0QsdOHWLGomc5\nV1V2wb7yyhB25I9i277bqLd7OT3eYq6lU9yXdE9ZTIDvSYL9Q4mP6k9qbA+SY7pypryEafOnUG+v\nu+BYq8VDwUSahcKJiIiISCtTeu4Ub370uwuCyZlzEXy7dxR7Dt1Gvd3i9FgPaxVdEj4jPeljUmPb\n0r/7ODpGdSLIP7RRXYBvEPfe+igLvvpro+1RoXHc0/dBAn2Dm3ZQIiiciIiIiLQqlTXl/Pmj/6Gs\n/J9TZ506E8u2vfeTd7g3DsPs9Dgfr0p6pX3Jvf0P0jkujvh2T9M+PPGiL7L3S78LP+8A8gt20rZN\nBF0TetM2MKLJxyTyDwonIiIiIi1UTW0VR08e4HjJEYpPH+V4yVGOnTpExd/fLykqSSJn930cOtbT\n5TnatYVfjYGfDfPBz2fYFffQI+kWeiTdctVjELkSCiciIiIiLdB3B3PIXv6/F7zobhhQcKIrObtH\nUXiii8vj49vB5HHw8J3gadM0v9I6KJyIiIiItEBLN77XKJgYhomDx24iZ/coTpxOdHlc53h46kG4\nfyBYrQol0roonIiIiIi0QL7eAQA4HGb2Hb2V3N0jOX22vcv6np3g6Ydg6M1gNiuUSOukcCIiIiLS\nwjgcduz1VnbuH8KWPSM4W+H6JfRBmTDlIRjQA63SLq2ewomIiIhIC1JeafDvr25g8eqfU1nterre\n4beef3yrV5oCiVw/FE5ERERErrEz5SVsz9/PXz/yYvHqeKpqbnZaZzbDA4PgyQehS4JCiVx/FE5E\nRERErpHa+hpmfvo+b30UwM79Q6ir93ZaZzHX85N7rEweCwnRCiVy/VI4EREREbkGNu8uYuLr+eTu\nHo3dYXNaY7VU0znhcyaNhofuuNfNHYq4n8KJiIiISDNzGA5MmDCZTOw6aPDkn06wdENbDCPcab2n\nRzldE5cyIGMzvdM6c2fvB9zcsci1oXAiIiIi0oy25W9g8ZqZ7C8M5cjxiazdFgGEOa0N9Kvkx0MK\n+fkIM4kxw/H0GO3eZkWuMYUTERERkWbgMBws3fAeMz/dRe7uX3C0uJvL2pDAMp55xJsJw33w9kxy\nY5ciLYvCiYiIiEgTq6yuYPKbH7NoVXeKSsa6rAsKKODfR5Ty20e7YPPQi+4iCiciIiIil6GuvpZN\nu1dxqqwIMDCM89utFiueNh+8bN4E+oayemskL8x2UHza9SNZoUH7uanTIn7301vpntTHPQMQaQUU\nTkREREQuwTAM/rrk9+Qd3eZ0v91uJe9wf3L3dKWsvJ3L87QL/Y6M1AX06nSaMVmPEReZ3Fwti7RK\nCiciIiIiF3GitJA/LvotZeUlF+yrq/dk14HBbM0bTnlVW5fnyLqphsE91+LjvY60Dpnc2vVOLBb9\nM0zkX+mnQkREROQiPlw3+4JgUlPrw478u/h231CqawJdHOmgZ1o+f5wUx02dvIDBf/8SEVcUTkRE\nREQuorqmouH7yupAtu0dyq6D91BV4+m03myqJy1+Hb8eZ+LHg/tjMulFd5HLpXAiIiIichEOh4Nz\nFW3Zmjec7w4Oxm53Hkq8bPDTYfD4AxZiI25TKBG5CgonIiIiIt9TV1/HrkO55BfuZNPu03yydhB5\nh/vjMJz/synAF34xEiaNhrAgE6BQInK1FE5EREREgOLTBazdvpScvLUcPh5C7u5R5Bf0AcxO69u2\ngUn3nw8mbfwVSESagsKJiIiI3NCqair47Jv3WfPtJxSeTCJn939w+Himy/roMHhiLPz0HvDxUigR\naUoKJyIiInLDKq86y+vvP0VOXhi5u/+HYyfTXNZGhJzlv8f78vBdFq3mLtJMnN+ndOHFF1/EbDYz\nceLEhm2PPPIIZrO50Vffvn0bHVdTU8PEiRMJDQ3Fz8+P4cOHU1hY2DQjEBEREblCNXXV7Dr4LQ/8\n9s+8seBxPl7zrMtgkhZfz3v/DUcXB/Cz4VYFE5FmdNl3TjZu3Mhbb71F165dG80+YTKZGDx4MNnZ\n2Q3bbDZbo2MnTZrEkiVLmDdvHsHBwTz++OMMHTqU3NxczOYrykciIiIiV23HgU18sfljln8TyuZd\nIyg992uXtX06w9MPw119rJp5S8RNLiuclJWVMW7cON5++22ee+65RvsMw8BmsxEWFuby2JkzZzJr\n1iwGDRoEQHZ2NrGxsaxYsYIhQ4b8sBGIiIiIXEJFTRlf713JF1ti2LLnl5yrdP7vFoAhPWLine truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d2f2390>"
"<matplotlib.figure.Figure at 0x7f3e59fa3550>"
]
}
],
@@ -1812,7 +1812,7 @@
"collapsed": false,
"input": [
"target_pos = [0, 0]\n",
"f = moving_target_filter(std_noise)\n",
"f = moving_target_filter(std_noise, Q_variance=1.1)\n",
"plot_straight_line_target(f, std_noise)"
],
"language": "python",
@@ -1823,7 +1823,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d3814a8>"
"<matplotlib.figure.Figure at 0x7f3e5a09bef0>"
]
}
],
@@ -1839,6 +1839,226 @@
"**author's note: this is a fairly naive approach to overdetermined systems. For example, suppose you had 6 sensors, not the minimum of 2 which is needed for 2D positions. While you can use the approach above, systems like GPS use something like an iterative Least Squares approach to estimate the 3D position for each epoch based on the pseudorange it receives from each satellite. This estimate is then passed into the GPS as the measurement. I will be writing a section on this very soon. In the meantime if you google for 'gnss iterative least squares' tons of relevant links are returned.**"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##Iterative Least Squares for Sensor Fusion"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The previous section took a somewhat naive approach to integrating several sensor measurements into the filter. Let's work with a real world scenerio, albeit somewhat simplified. The GPS system is designed so that at least 6 satellites are in view at any time, assuming no line of sight blockage, at any point on the globe. The GPS receiver knows the location of the satellites in the sky relative to the Earth. At each epoch (instant in time) the receiver gets a signal from each satellite from which it can derive the *pseudorange* to the satellite. In more detail, the GPS receiver gets a signal identifying the satellite along with the time stamp of when the signal was transmitted. The GPS satellite has an atomic clock onboard so this timestamp is extremely accurate. The signal travels at the speed of light, which is constant in a vacuum, so in theory the GPS should be able to produce an extremely accurate distance measurement to the measurement by measuring how long the signal took to reach the receiver. There are several problems with that. First, the signal is not travelling through a vacuum, but through the atmosphere. The atmosphere causes the signal to bend, so it is not travelling in a straight line. This causes the signal to take longer to reach the receiver than theory suggests. Second, the on board clock on the GPS *receiver* is not very accurate, so deriving an exact time duration is nontrivial. Third, in many environments the signal can bounce off of buildings, trees, and other objects, causing either a longer path or *multipaths*, in which case the receive receives both the original signal from space and the reflected signals. \n",
"\n",
"In the figure below I have shown how three pseudoranges might intersect in a 2D space. The width of the circle is meant to illustrate the measurement error for each pseudorange."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"with book_format.figsize(10,6):\n",
" ukf_internal.show_three_gps()"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAp8AAAGNCAYAAABXHhoFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd4VOeZN/7vOdNHM+q9IVAH0YXACDAGDAZc4l7iEttp\nTtab2O++u9eVsm/2t3nj/W3e7Lu/ZBMncbJxEjvuxg1swKZXSQhR1YVQl1Afafo55/eHDDZFM5qZ\n55xp9+e6uDCac55zWzNn5p6n3A8nSZIEQgghhBBCFMAHOwBCCCGEEBI9KPkkhBBCCCGKoeSTEEII\nIYQohpJPQgghhBCiGEo+CSGEEEKIYij5JIQQQgghiqHkkxBCCCGEKEbx5LO3txdPPPEEUlNTYTAY\nMG/ePBw4cEDpMAghhBBCSBColbzY6OgoKisrsWbNGuzYsQMpKSloa2tDamqqkmEQQgghhJAg4ZTc\n4egHP/gBDh48iIMHDyp1SUIIIYQQEkIUHXZ/7733UFFRgQcffBBpaWlYvHgxfv3rXysZAiGEEEII\nCSJFez71ej04jsPzzz+PBx54ACdPnsSzzz6Lf/u3f8N3v/vdK8eNjY0pFRIhhBBCCJFRXFzcVf9W\nNPnUarWoqKjAoUOHrvzshz/8IbZt24bz589f+Rkln4QQQgghkeHa5FPRYffMzEzMnTv3qp+VlJSg\no6NDyTAIIYQQQkiQKLravbKyEg0NDVf9rKmpCXl5edOec222TNioqakBAJSXlwc5EuIPev7CGz1/\n4Y2ev/BHz6H8PI1iK9rz+dxzz+HYsWP42c9+hpaWFrz11lv41a9+ddV8T0IIIYQQErkUTT7Ly8vx\n3nvv4c0338T8+fPx4x//GD/96U/xzDPPKBkGIYQQQggJEkWH3QFgy5Yt2LJli9KXJYQQQgghIYD2\ndieEEEIIIYqh5JMQQgghhCiGkk9CCCGEEKIYSj4JIYQQQohiKPkkhBBCCCGKoeSTEEIIIYQoRvFS\nS4SQ4LI73Rix2DBiscPpFiAIIgRRgiBO/S2KEgBAreKh4jnwPAcVz0Ot4hGj1yDBbEC8SQ+e54L8\nf0IIISQcUfJJSIRwugRcGp3EyIQdw+M2DFtsV/4esVz+tx1Whyvga/Ech3iTHomxeiSaDUgwG5Bo\nNiAx1vD5v/VIijUiwawHx1GSSggh5AuUfBIShpxuAd1DVvQdbUJL9zBauofROTAOUZIUub4oSVPJ\nrMUGYGTa40wGLfIzE1CQlXjlT1pCDCWkhBASxSj5JCTEOZxutPWOoLVn5EqieaapA6IkIT6+L9jh\neTRhc+JUaz9OtfZf+RklpIQQEt0o+SQkxLgFEWcvDKCqvhun2/pv2KOpVA+nHKZLSAuzElFenInl\npVlISzQFMUJCCCFyouSTkBBgsTpwoqkXVfXdONHUy2ReZjiZsDlxsqUPJ1v68NL2WsxKi8Py0ixU\nlGShMDuJFjcRQkgEoeSTkCDpHbKgqr4bx+u7cf7iJQhi+PZmsnaxfwwX+8fw5r7zSDDpsawkExUl\nWVhUkA6dlt62yBRJFCHZrBAnxiFaJwFBgCQKgCgCogBJFAEAHM8DvArgeXCf/80bjOBNseBiTFOP\nE0IUQ+/ihChEkiS0dA/jyNlOVDV0o2NgPNghhYWRCTt21bRhV00btGoVFhWkYXlpNlaW5cBk0AY7\nPCIT0W6HODI4lVhaxiFaxiBOWCBaxiBMjEP6/OeXE0x/cTwPLsYM3mQGb44Db44Fb/r8z+f/rUpI\nAm+MYfR/Rgih5JMQmTmcbhw4fRHbjzWjtWf6leHEO6dbQFVDD6oaevD7j05gzYJZ2LKiEAVZicEO\njQRAtNvg7uuGu6cT7t5OuHs6IQwPKnJtSRQhWcYgWsaA3q5pj1PFJ0KdkQN1RjbUo+MQElMViY+Q\nSETJJyEy6b40jo+rWvBZ7QVM2JzBDifiOFwCdp9ow+4TbSjKTsSW5YVYvWAWtBpVsEMjHgQz0QyE\nMDoMYXQYjvpTMI2OAgCGa/Z+kZBmZkOdkUM9pITMACWfhDAkCCKqGrqx43gz6lr6vZ9AmGjqGkZT\n13H8ccdJ3Fo+B7dVFCAjyRzssAimehbdPR1wNp2Ds/Ec3AO9wQ6JmS8npJepEpOhLZoHbXEZNDmz\nwanoyxAh16LkkxAGhsdt2FXTik+qWjA0bgt2OFHLYnPi3YMNePdgA5YWZWDL8kKUF2fSanmFSS4n\nnK1NcDadhbP5PMQJS7BDUowwPAjbsf2wHdsPXm+ApnAudMVl0OQXg9cbgh0eISGBkk9CAtA7ZMFr\nn53FgdMXabV6iDnR1IsTTb1IjTfi3jVzsXFZPtQqWtUsF9EyDmfzeTgaz8LV1gjJ7Q52SEEn2m1w\nnDkBx5kT4FQqaGblQ1tcBm3hXKgSkoIdHiFBQ8knIX4Ysdjwxt5z+KSqhZLOEDcwasWLH9Tg/cMN\nePTWBagsy6WeUEZEuw2OuirYz9bC3d0R7HBCmiQIcLY1wdnWBHz8LtRpmdDNWwT94hXgTTRFhEQX\nSj4J8cGkzYlthxrw3qEGOFxCsMMhPugZmsC/v34E+Zn1eGLTQiwqSKctPf3k7u2CrfoQHGdrIbmC\nuyECp9GAN8WBN5nBabSAir+qnicAQBS/qP8piJDcLoiTFogTFkgOe1Didvf3wN3fA+v+ndCWLoCh\nvBLq3Dn0miRRgZJPQmbA6RKw43gz3tp3HuNWR7DDIQFo7RnBP/9pHxbmp+GJTQtRmE3DnzMhuVxw\nnD8Fe81huLraFbkmH2OCKjnti9qb5rjr6nFyOn1ACZvosEOasECwjEGcGIdkGYfwpdqiwtClqTJM\nMpEEAY6zJ+E4exLq1Azol1VCN38peJ1etmsSEmyUfBLigShK2HPyAv726RlcGrMGOxzC0KnWfjz/\nm12oLMvBY7cuQFZKbLBDCknCyBDsJ47CfvLY1C5CMuFjTFBn5kCdnj31d0YO+Ng42XsCeZ0e0Omh\nSkqZ9hhxwnKlLJSrtxPimTrwMvwu3AO9mNj+NiY//Qj6BUuhL18FdWo68+sQEmyUfBJyA5Ikoaq+\nG3/ZdYp2Iopwh8924tj5LqxfMhuPrJ+PpDhjsEMKOkmS4GpthK3qIJzN55m3zxuMUGfPUjzR9Bdv\nMkNbOBfawrkAgOaCGnA2K3LTk68kpO7uDmar+iWHHbbqw7BVH4YmrwCGZZXQliygbUBJxKDkk5Br\nDI/b8Ov3qlDV0BPsUIhCBFHCrpo2HDrTiSc3L8KmZfkhmwjJzdVxAZOffghX5wWm7aqSU6Etmgdd\ncRnU2Xlhn0hJBuNVCakkinD3dn1ez/Qs3P1s3j9c7S1wtbdAnZaJmPVboSkojdrXJokclHwS8jlJ\nkrD3ZDte2l5LOxJFKavDhV+/V43DZzvw7N3LkZoQPbvVuAd6MfnZdjibzrFpkOOgyZk9VVqoaB7U\nyZG9HSXH89Bk5UKTlYuYWzZDGB2+UljfdbEFkhDYAkV3fw/G/vYSNLPyEbP+dmhy8tgETkgQUPJJ\nCKKvt1OnUSHBrEei2QCdRg21iodKxUHF8+A5DhIkCIIEQRQhShJcbhEWqwMjFjtGJ+2QIry6VF1L\nP5795cdR0QsqjA7Duvdj2E/XBNwWp9FCW1D6eS3L0qjealIVnwhDxWoYKlZDtNvham2YKrrfdB6i\n3f+NKFwXWzH63/8fdMVlMK7bSnNCSVii5JNEtUjs7dRpVMhLj0daQgwSzQYkmA1IjDV8/t9TCadR\nr/E7oRIEEaMTdgxbbBixTP09PG678nfnpTH0Dcu3MEUpkd4LKk5OwHpwN+w1RyAJgRWEV6dlQl9e\nCd38JbRK+wZ4vR66eYugm7cIktsNx/m6qaoBne1+t+loPAtH0znoFy6Dce1tUMUlsAuYEJlR8kmi\nViT0duo0KszOiEdBZiIKsqb+ZKfEQiXjTj4qFY+kOKPHhTkWqwOtPSNo7R5GS88wWrqHwzYhjbRe\nUNFhh+3oPtiO7oPk9L9sGKdSQzt34VR9ypy8sP+9KIVTq6FfUA79gvKpeqknjsBx+gQklx9ffiUJ\n9roqOM7UQr+sEsbVG8AbTeyDJoQxSj5J1Ann3s7Z6fGYl5cCYXIQOclGbFm3StZE019mow6LCtKx\nqOCLIcEJm3MqGe0eRnP3ME619ofN7z9SekEdjWcxsf0tiBb/Kzio4hKgL18J/aLltDNPgNQZ2TDf\n/gBiNtwBx+ka2KoPQxjs97kdSXDDdmw/7HXHYdp0N3QLl9GXARLSKPkkUcVideA/3z4WNr2dahWP\n+bNTUVGahYqSrCtJT03N1Py8UEw8p2MyaLGwIB0LP09I3YKI8+2XUNXQjeP1XWHRM3q5F/Sbty/B\n+qVzgh3OjInWSUzu3Ab76RN+t6EtLIW+vBLagtKwX6keani9AYaK1dAvWwXXxVbYqw/B2XAGkij6\n1I5kt8Py/mtwnD8F0+33QxUbL1PEhASGkk8SNS72jeKnrxwI+STHZNBiWXEmKkqzsKQwA0a9Jtgh\nyUKt4rEgPw0L8tPw9JbF6BwYv5KINnYOheyiJqvDhf985zhae0bw9JbFIf8FwNF4FhMfvel3DUpt\n4VzErN8KdVom48jItTiOgzavANq8AgjDg5jc+zEcZ2t9bsfZfB4jL/6/1AtKQhYlnyQqHD/fhV+8\neRQ2Z2ALK+QSa9ThlsV5WDE3G6W5ySGf0LDGcRxy0+KQmxaH+26ei9EJO6obunHwdAdOtvQFO7wb\n+vBoEzovjeEfH6qE2agLdjjXCbS3U5Odh5gNt0MzK59xZGQmVInJiL33MbhX3oLJPdvhbGnw6Xzq\nBSWhjJJPEtEkScJb+87jr7tPBzuUGyrJTcKW5YWoLMuFVqMKdjghI96kx63l+bi1PB89gxLine truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3e5a11ad30>"
]
}
],
"prompt_number": 76
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So we need to solve for the 3 dimensions of space, and 1 dimension of time. That is 4 unknowns, so in theory with 4 satellites we have all the information we need. However, we normally have at least 6 satellites in view, and often more than 6. This means the system is *overdetermined*. Finally, because of the noise in the measurements none of pseudoranges intersect exactly.\n",
"\n",
"Probably the most common approach used by GPS receivers to find the position is the *iterative least squares* algorithm, commonly abbreviated ILS. As you know, if the errors are Gaussian then the least squares algorithm finds the optimal solution. In other words, we want to minimize the square of the residuals. We minimize by taking the derivative of the squares and setting it to 0, like so."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$ \\frac{\\partial}{\\partial \\mathbf{x}}({\\delta \\mathbf{z}}^\\mathsf{T}\\delta \\mathbf{z}) = 0,$$\n",
"\n",
"where\n",
"\n",
"$$\\delta \\mathbf{z}=\\delta \\mathbf{z}^- - \\mathbf{H}\\delta \\mathbf{x}.$$\n",
"\n",
"\n",
"For various reasons you may want to weigh some measurement more than others. We can do that with the equation\n",
"\n",
"$$ \\frac{\\partial}{\\partial \\mathbf{x}}({\\delta \\mathbf{z}}^\\mathsf{T}\\mathbf{W}\\delta \\mathbf{z}) = 0$$\n",
"\n",
"If we solve the first equation for ${\\delta \\mathbf{x}}$ (derivation shown below) we get\n",
"\n",
"$${\\delta \\mathbf{x}} = {{(\\mathbf{H}^\\mathsf{T}\\mathbf{H})^{-1}}\\mathbf{H}^\\mathsf{T} \\delta \\mathbf{z}}\n",
"$$\n",
"\n",
"And the second equation yields\n",
"\n",
"$${\\delta \\mathbf{x}} = {{(\\mathbf{H}^\\mathsf{T}\\mathbf{WH})^{-1}}\\mathbf{H}^\\mathsf{T}\\mathbf{W} \\delta \\mathbf{z}}\n",
"$$\n",
"\n",
"Since the equations are overdetermined we cannot solve these equations exactly. There are several techniques to find an approximate answer, but GPS receivers typically use the *iterative least squares* technique. An initial guess for the position is made, and then one of the equations above are iterated upon. Each iteration produces an updated estimate which is fed back into the equation for the next iteration. The iterations continue until the residuals are acceptably small. I will do that in code, but first let's derive these equations. You can skip the derivation if you want, but it is somewhat instructive and not too hard if you know basic linear algebra and partial differential equations."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Derivation of ILS Equations (Optional)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Substituting $\\delta \\mathbf{z}=\\delta \\mathbf{z}^- - \\mathbf{H}\\delta \\mathbf{x}$ we get\n",
"\n",
"$$ \\frac{\\partial}{\\partial \\mathbf{x}}(\\delta \\mathbf{z}^- -\\mathbf{H} \\delta \\mathbf{x})^\\mathsf{T}(\\delta \\mathbf{z}^- - \\mathbf{H} \\delta \\mathbf{x})=0$$\n",
"\n",
"which expands to\n",
"\n",
"$$ \\frac{\\partial}{\\partial \\mathbf{x}}({\\delta \\mathbf{x}}^\\mathsf{T}\\mathbf{H}^\\mathsf{T}\\mathbf{H}\\delta \\mathbf{x} - \n",
"{\\delta \\mathbf{x}}^\\mathsf{T}\\mathbf{H}^\\mathsf{T}\\delta \\mathbf{z}^- - \n",
"{\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H}\\delta \\mathbf{x} +\n",
"{\\delta \\mathbf{z}^-}^\\mathsf{T}\\delta \\mathbf{z}^-)=0$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We know that \n",
"\n",
"$$\\frac{\\partial \\mathbf{A}^\\mathsf{T}\\mathbf{B}}{\\partial \\mathbf{B}} = \\frac{\\partial \\mathbf{B}^\\mathsf{T}\\mathbf{A}}{\\partial \\mathbf{B}} = \\mathbf{A}^\\mathsf{T}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Therefore the term\n",
"\n",
"$$\\frac{\\partial}{\\partial \\mathbf{x}}{\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H}\\delta \\mathbf{x} = {\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H}$$\n",
"\n",
"and the term\n",
"\n",
"$$\\frac{\\partial}{\\partial \\mathbf{x}}{\\delta \\mathbf{x}}^\\mathsf{T}\\mathbf{H}^\\mathsf{T}\\delta \\mathbf{z}^-={\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We also know that\n",
"$$\\frac{\\partial \\mathbf{B}^\\mathsf{T}\\mathbf{AB}}{\\partial \\mathbf{B}} = \\mathbf{B}^\\mathsf{T}(\\mathbf{A} + \\mathbf{A}^\\mathsf{T})$$\n",
"\n",
"\n",
"Therefore\n",
"\n",
"$$\n",
"\\begin{aligned}\n",
"\\frac{\\partial}{\\partial \\mathbf{x}}{\\delta \\mathbf{x}}^\\mathsf{T}\\mathbf{H}^\\mathsf{T}\\mathbf{H}\\delta \\mathbf{x} &= {\\delta \\mathbf{x}}^\\mathsf{T}(\\mathbf{H}^\\mathsf{T}\\mathbf{H} + {\\mathbf{H}^\\mathsf{T}\\mathbf{H}}^\\mathsf{T})\\\\\n",
"&= {\\delta \\mathbf{x}}^\\mathsf{T}(\\mathbf{H}^\\mathsf{T}\\mathbf{H} + \\mathbf{H}^\\mathsf{T}\\mathbf{H}) \\\\\n",
"&= 2{\\delta \\mathbf{x}}^\\mathsf{T}\\mathbf{H}^\\mathsf{T}\\mathbf{H}\n",
"\\end{aligned}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Finally,\n",
"\n",
"$$ \\frac{\\partial}{\\partial \\mathbf{x}}\n",
"{\\delta \\mathbf{z}^-}^\\mathsf{T}\\delta \\mathbf{z}^-=0$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Replacing the terms in the expanded partial differential equation gives us\n",
"\n",
"$$\n",
" 2{\\delta \\mathbf{x}}^\\mathsf{T}\\mathbf{H}^\\mathsf{T}\\mathbf{H} -\n",
" {\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H} - {\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H}\n",
" =0\n",
"$$\n",
"\n",
"$${\\delta \\mathbf{x}}^\\mathsf{T}\\mathbf{H}^\\mathsf{T}\\mathbf{H} -\n",
" {\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H} = 0$$\n",
" \n",
" $${\\delta \\mathbf{x}}^\\mathsf{T}\\mathbf{H}^\\mathsf{T}\\mathbf{H} =\n",
" {\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Multiplying each side by $(\\mathbf{H}^\\mathsf{T}\\mathbf{H})^{-1}$ yields\n",
"\n",
"$${\\delta \\mathbf{x}}^\\mathsf{T} =\n",
"{\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H}(\\mathbf{H}^\\mathsf{T}\\mathbf{H})^{-1}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Taking the transpose of each side gives\n",
"\n",
"$${\\delta \\mathbf{x}} = ({{\\delta \\mathbf{z}^-}^\\mathsf{T}\\mathbf{H}(\\mathbf{H}^\\mathsf{T}\\mathbf{H})^{-1}})^\\mathsf{T} \\\\\n",
"={{(\\mathbf{H}^\\mathsf{T}\\mathbf{H})^{-1}}^T\\mathbf{H}^\\mathsf{T} \\delta \\mathbf{z}^-} \\\\\n",
"={{(\\mathbf{H}^\\mathsf{T}\\mathbf{H})^{-1}}\\mathbf{H}^\\mathsf{T} \\delta \\mathbf{z}^-}\n",
"$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For various reasons you may want to weigh some measurement more than others. We can do that with the equation\n",
"\n",
"$$ \\frac{\\partial}{\\partial \\mathbf{x}}({\\delta \\mathbf{z}}^\\mathsf{T}\\mathbf{W}\\delta \\mathbf{z}) = 0$$\n",
"\n",
"Replicating the math above with the added $\\mathbf{W}$ term results in\n",
"\n",
"$${\\delta \\mathbf{x}} = {{(\\mathbf{H}^\\mathsf{T}\\mathbf{WH})^{-1}}\\mathbf{H}^\\mathsf{T}\\mathbf{W} \\delta \\mathbf{z}^-}\n",
"$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Implmenting ILS"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Our goal is to implement an iterative solution to \n",
"$${\\delta \\mathbf{x}} = {{(\\mathbf{H}^\\mathsf{T}\\mathbf{H})^{-1}}\\mathbf{H}^\\mathsf{T} \\delta \\mathbf{z}^-}\n",
"$$\n",
"\n",
"\n"
]
},
{
"cell_type": "heading",
"level": 2,
@@ -1915,7 +2135,7 @@
"np.random.seed(12283)\n",
"std_noise = math.radians(0.5)\n",
"target_pos = [0, 0]\n",
"f = moving_target_filter(std_noise)\n",
"f = moving_target_filter(std_noise, Q_variance=1.1)\n",
"plot_circular_target(f, std_noise, target_pos)"
],
"language": "python",
@@ -1926,7 +2146,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d353b38>"
"<matplotlib.figure.Figure at 0x7f3e5a00b278>"
]
}
],
@@ -1944,28 +2164,16 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"The filter tracks the movement of the target, but never really converges on the track. This is because the filter is modeling a constant velocity target, but the target is anything but constant velocity. As mentioned above we could model the circular behavior by defining the `fx()` function, but then we would have problems when the target is not moving in a circle. Instead, lets tell the filter we are are less sure about our process model by making $\\mathbf{Q}$ much larger."
"The filter tracks the movement of the target, but never really converges on the track. This is because the filter is modeling a constant velocity target, but the target is anything but constant velocity. As mentioned above we could model the circular behavior by defining the `fx()` function, but then we would have problems when the target is not moving in a circle. Instead, lets tell the filter we are are less sure about our process model by making $\\mathbf{Q}$ larger. Here I have increased the variance from 0.1 to 1.0"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"def circular_target_filter(std_noise):\n",
" f = UKF(dim_x=4, dim_z=2, dt=0.1, hx=hx, fx=fx, kappa=2.)\n",
" f.x = np.array([target_pos[0], 1., target_pos[1], 1.])\n",
"\n",
" Q = Q_discrete_white_noise(2, dt, 10.1)\n",
" f.Q[0:2,0:2] = Q\n",
" f.Q[2:4, 2:4] = Q\n",
"\n",
" f.R *= std_noise**2\n",
" f.P *= 1000\n",
" \n",
" return f\n",
"\n",
"np.random.seed(12283)\n",
"std_noise = math.radians(0.5)\n",
"cf = circular_target_filter(std_noise)\n",
"cf = moving_target_filter(std_noise, Q_variance=10.)\n",
"target_pos = [0, 0]\n",
"plot_circular_target(cf, std_noise, target_pos)"
],
@@ -1975,9 +2183,9 @@
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "iVBORw0KGgoAAAANSUhEUgAAAyUAAAGNCAYAAAAPRN41AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XdYVNfWBvD3zNCrgDRBBRXsDbFh75pYYxKjiSXNaMqN\n8Uu88cZ7Nb1c0xNbcqNGYzSJJc0o9oYNKxYUBUF67x3O98ckksM0lCmHmff3PDxw9l77sHACYXF2\nEURRFEFERERERGQmCnMnQERERERE1o1FCRERERERmRWLEiIiIiIiMisWJUREREREZFYsSoiIiIiI\nyKxYlBARERERkVmxKCEiIiIiIrMyaFFy+PBhTJw4EYGBgVAoFFi/fr2kf86cOVAoFJK3iIgISUxF\nRQVeeOEFeHt7w8XFBZMmTUJKSooh0yQiIiIiIhkxaFFSUlKCbt264dNPP4WjoyMEQZD0C4KAUaNG\nIT09/c7bzp07JTELFizAtm3bsHnzZhw5cgSFhYUYP348amtrDZkqERERERHJhI0hbzZu3DiMGzcO\ngOqpSH2iKMLOzg4+Pj4axxcUFOCbb77BunXrMGLECADAhg0b0Lp1a+zduxejR482ZLpERERERCQD\nJl1TIggCjh49Cl9fX7Rv3x5z585FVlbWnf4zZ86gqqpKUnwEBgaiY8eOiIqKMmWqRERERERkIgZ9\nUqLP2LFjMXXqVAQHByMhIQFLlizB8OHDcebMGdjZ2SE9PR1KpRJeXl6Scb6+vsjIyJC0FRQUmDJ1\nIiIiIiIyEHd3d8m1SYuSadOm3fm4c+fO6NWrF1q3bo3ff/8dU6ZMMWUqREREREQkE2bdEtjf3x+B\ngYG4ceMGAMDPzw81NTXIycmRxKWnp8PPz88cKRIRERERkZGZ9ElJfVlZWUhJSYG/vz8AoFevXrC1\ntUVkZCSmT58OAEhOTkZsbKza1sF/V//xT0NFR0cDAMLDw+9pPMkbX1/LxdfWsvH1tVx8bS0bX1/L\nZajXVtfyC4MWJSUlJYiLiwMA1NbWIjExEefPn4eXlxc8PT2xdOlSPPjgg/Dz88OtW7ewePFi+Pr6\n3pm65e7ujieffBKLFi2Cj48PPD09sXDhQnTv3h0jR440ZKpERERERCQTBp2+dfr0aYSFhSEsLAzl\n5eVYunQpwsLCsHTpUiiVSly6dAmTJk1C+/btMWfOHHTs2BHHjx+Hs7PznXt88sknmDJlCqZNm4aB\nAwfCzc0Nv/76q9qZJ0REREREZBkM+qRk6NChOg853LVrl9572NnZ4bPPPsNnn31myNSIiIiIiEim\nzLrQnYiIiIiIiEUJERERERGZFYsSIiIiIiIyKxYlRERERERkVixKiIiIiIjIrFiUEBERERGRWbEo\nISIiIiIis2JRQkREREREZsWihIiIiIiIzIpFCRERERERmRWLEiIiIiIiMisWJUREREREZFYsSoiI\niIiIyKxYlBARERERkVmxKCEiIiIiIrNiUUJERERERGbFooSIiIiIiMyKRQkREREREZkVixIiIiIi\nIjIrFiVERERERGRWLEqIiIiIiMisWJQQEREREZFZsSghIiIiIiKzYlFCRERERERmxaKEiIiIiIjM\nikUJERERERGZFYsSIiIiIiIyKxYlRERERERkVixKiIiIiIjIrFiUEBERERGRWbEoISIiIiIis2JR\nQkREREREZsWihIiIiIiIzIpFCRERERERmRWLEiIiIiIiMisWJUREREREZFYsSoiIiIiIyKxYlBAR\nERERkVmxKCEiIiIiIrNiUUJERERERGbFooSIiIiIiMyKRQkREREREZkVixIiIiIiIjIrFiVERNSk\n1Iq1qKquMncaRERkQDbmToCIiOgvoiiioroMpRWFuJwQjbyibOQVZSGvOBv5Rdmq98U5qKmphpuz\nB3w8AuDrEQgfjxbw9QiEr0cAPFybQ6FQmvtLISKiu8CihIiITKq8sgzJWfHIyk+rKzT+fJ9XlI3K\nqnJV4Hnd9yksyUNhSR5uJF+StNsq7eDdzB8+ngHw9QiAz5/Fio9HABzsHI30VRERUWOwKCEiIqOp\nqq5CavYtJGXEISHtGi7fikZZRYlxP2dNJVJzEpGak6jW5+zoBic7ZzjYO8HBzgmOf75X/9gZDnaO\ncLBTvVf1OcPezgEKgTOfiYgMjUUJERE1SmVVBXKLMpGQdg0nL+9DfNpVc6ekVUlZIUrKCu95vK3S\nDkH+7dEusAtCA7uglW8obG1sDZghEZF1YlFCREQNUivWIubmSfx8dD2yC9LNnY5ZVNVUIi45BnHJ\nMfgDqiIl2L89Qlp2RbuALmjtFwIbJYsUIqK7ZdCi5PDhw1i+fDnOnj2L1NRUrF27FrNnz5bELFu2\nDF999RXy8vLQt29ffPnll+jUqdOd/oqKCrz88svYvHkzysrKMGLECKxYsQIBAQGGTJWIiPSoqa3B\n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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d353828>"
"<matplotlib.figure.Figure at 0x7f3e59f8dcf8>"
]
}
],
@@ -2040,7 +2248,7 @@
"sb_pos = [200,-200]\n",
"plt.scatter(*sa_pos, s=200)\n",
"plt.scatter(*sb_pos, s=200)\n",
"cf = circular_target_filter(std_noise)\n",
"cf = moving_target_filter(std_noise, Q_variance=10.)\n",
"target_pos = [0, 0]\n",
"plot_circular_target(cf, std_noise, target_pos)"
],
@@ -2050,9 +2258,9 @@
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d2afda0>"
"<matplotlib.figure.Figure at 0x7f3e64a57400>"
]
}
],
@@ -2171,9 +2379,9 @@
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAxoAAAGNCAYAAACWvAeAAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xt01PW57/H3/OY+mWQCAoaEJARIiNzDRQJ269aerdJT\nrW6sbbQVpWhpuamkEuVUraANS7QgcNoqVTitprW6pbWt1u62XroEKlqLchE1gBANGiGTzP3ym/PH\nbAZjqFwM5PZ5rcVaMPNN/H7XtMk883yf57GkUqkUIiIiIiIiHcjo7A2IiIiIiEjPo0BDREREREQ6\nnAINERERERHpcAo0RERERESkwynQEBERERGRDqdAQ0REREREOpwCDRERERER6XDHDDTuvPNODMNo\n8yc/P7/Nml27dvGf//mf9OnTh6ysLCZMmMDOnTtP2aZFRERERKRrsx3PovLycp5//vnMv61Wa+bv\nu3fv5pxzzuHaa6/l9ttvJzc3l507d+L1ejt8syIiIiIi0j0cV6BhtVoZMGDAUZ9bvHgxF198Mffe\ne2/mscGDB3fI5kREREREpHs6rhqN+vp6CgoKGDJkCFVVVezevRsA0zT53e9+x1lnncXFF1/MgAED\nOPvss3n88cdP6aZFRERERKRrs6RSqdRnLXj22WcJBAKUl5dz4MABli5dys6dO9m2bRuxWIz8/Hw8\nHg9Lly7lggsu4M9//jO33HILv/nNb/jSl76U+T5+v/+UH0ZERERERDqez+c74a85ZqDxaaFQiJKS\nEmpqavj6179OQUEBV111Fb/4xS8ya66++moOHTrEH/7wh8xjCjRERERERLqnkwk0Tri9rcfjYeTI\nkbzzzjv069cPm83GiBEj2qwpLy/nvffeO+HNiIiIiIhIz3BcxeCfFIlE2LFjBxdccAF2u51Jkya1\na2W7a9euzywIP5mISE6vLVu2ADBx4sRO3okci16r7kWvV/eh16r70GvVvej16j4+742kYwYa1dXV\nXHrppRQWFvLhhx+yZMkSwuEwM2bMAOCWW27hyiuv5N/+7d84//zz+etf/8qvfvUrfvOb33yujYmI\niIiISPd1zECjoaGBqqoqmpqa6N+/P1OmTGHTpk0UFhYC8JWvfIUHH3yQe+65hwULFlBWVsbPf/5z\npk2bdso3LyIiIiIiXdMxA426urpjfpMZM2ZkMhwiIiIiIiInXAwuIiIiIiJyLAo0RERERESkwynQ\n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 truncated
"png": "iVBORw0KGgoAAAANSUhEUgAAAxoAAAGNCAYAAACWvAeAAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl01fWd//Hn/d59SW4Mi5ckNyEsIRCWsG+2MzJTxfZo\n26H1NOoUpIJWFqlNNZZWLYvEcSmoWGudUcZKRn/6U2trEaej/mwZVLQOiiIqyqZBKZBw9+V7f39c\nuZiJymLgZnk9zuGcmHwvfr7fo0le9/15f96WTCaTQUREREREpAMZ+V6AiIiIiIh0PwoaIiIiIiLS\n4RQ0RERERESkwyloiIiIiIhIh1PQEBERERGRDqegISIiIiIiHU5BQ0REREREOtxRg8b111+PYRht\n/pSUlLS5Ztu2bfzTP/0Tp512Gl6vl7Fjx7J169aTtmgREREREencbMdyUXV1Nc8++2zun61Wa+7j\n9957j6lTpzJr1iyuvfZaioqK2Lp1Kz6fr8MXKyIiIiIiXcMxBQ2r1Urfvn0/82uLFy9m+vTp3HTT\nTbnP9e/fv0MWJyIiIiIiXdMx9Whs376d0tJSBgwYQF1dHe+99x4Apmny+9//nqFDhzJ9+nT69u3L\nhAkTeOihh07qokVEREREpHOzZDKZzBddsG7dOkKhENXV1ezdu5dly5axdetWtmzZQiKRoKSkBI/H\nw7Jly5g2bRp/+tOfuOqqq3j88cf5+te/nvt7WlpaTvrNiIiIiIhIx/P7/cf9mqMGjf8tEolQWVlJ\nQ0MD3/ve9ygtLeWCCy7gt7/9be6aCy+8kAMHDvDkk0/mPqegISIiIiLSNZ1I0Dju4209Hg81NTW8\n88479O7dG5vNxrBhw9pcU11dzc6dO497MSIiIiIi0j0cUzP4p8ViMd58802mTZuG3W5n/Pjx7Y6y\n3bZt2xc2hJ9IIpITs2nTJgDGjRuX55X0LHru+aHnnh967vmh554feu75oeeeH192R9JRg0Z9fT3n\nnXcewWCQjz76iKVLlxKNRpk5cyYAV111Feeffz5f+cpXOPPMM3nmmWd48MEHefzxx7/UwkRERERE\npOs6atDYs2cPdXV17Nu3jz59+jB58mQ2btxIMBgE4Jvf/CZ33303N9xwA1dccQVVVVXcf//9nHPO\nOSd98SIiIiIi0jkdNWg0NTUd9S+ZOXNmrsIhIiIiIiJy3M3gIiIiIiIiR6OgISIiIiIiHU5BQ0RE\nREREOpyChoiIiIiIdDgFDRERERER6XAKGiIiIiIi0uEUNEREREREpMMpaIiIiIiISIdT0BARERER\nkQ6noCEiIiIiIh1OQUNERERERDqcgoaIiIiIiHQ4BQ0REREREelwChoiIiIiItLhbPleQGdimia7\ndiUBCAbtGIZymIiIiIjIidBv0p8wTZP16+NMmmRn0iQ769fHMU0z38sSEREREemSFDQ+sWtXkosv\ndtLcbNDcbHDxxc5cdUNERERERI6PgoaIiIiIiHQ4BY1PBIN27r03TiBgEgiY3HtvnGDQnu9liYiI\niIh0SWoG/4RhGJx1lpONGw83gzvVDC4iIiIicoIUND7FMAwqKpz5XoaIiIiISJent+xFRERERKTD\nKWiIiIiIiEiHU9AQEREREZEOp6AhIiIiIiIdTkFDREREREQ6nIKGiIiIiIh0OAUNERERERHpcAoa\nIiIiIiLS4RQ0RERERESkwyloiIiIiIhIh7PlewFy7EzTZNeuJADBoB3DUE4UERERkc5Jv6l2EaZp\nsn59nEmT7EyaZGf9+jimaeZ7WSIiIiIin0lBo4vYtSvJxRc7aW42aG42uPhiZ666ISIiIiLS2Sho\niIiIiIhIh1PQ6CKCQTv33hsnEDAJBEzuvTdOMGjP97JERERERD6TmsG7CMMwOOssJxs3Hm4Gd6oZ\nXEREREQ6LQWNLsQwDCoqnCf0WtM02bkzQWurSVGRQVmZQ0FFRERERE4a/abZAxiGwVNPxZg82cHZ\nZ7t49FGTp56KkEql8r00EREREemmFDR6gESimNmzXbkTqxobXTz9tI3/9/90RK6IiIiInBxHDRrX\nX389hmG0+VNSUvKZ11566aUYhsEtt9zS4QuVjvf731t1RK6IiIiInBTHVNGorq6mubk59+e1115r\nd83DDz/MSy+9RElJCRaLpcMXKifO4djPv/1bLHdiVUNDjAEDTP74R7XoiIiIiMjJcUy/aVqtVvr2\n7fu5X9+xYweLFi3iT3/6E9OnT++wxUnHME2Ts892sWFDnJ07U6xfb+P//l87v/xlkmDw85vLTdPM\nVTyCQbuax0VERETkmB3Tb47bt2+ntLSUAQMGUFdXx3vvvZf7WiqVoq6ujp///OcMGTLkpC1UvhzD\nMKisdPOVr3iZO9dg3bo0Z531+UfkmqbJ+vVxJk2yM2mSnfXr1c8hIiIiIsfOkslkMl90wbp16wiF\n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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a18b00>"
"<matplotlib.figure.Figure at 0x7f3e5ba312e8>"
]
}
],
@@ -2242,9 +2450,9 @@
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d53d160>"
"<matplotlib.figure.Figure at 0x7f3e63732358>"
]
}
],
@@ -2342,9 +2550,9 @@
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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\npemtL4+VnZcn95tvys7Kkt27t+LDhysxZIjcF1wga+ZMxaZNk+vXv5brH/+QJJmVlYrW1mrj+t3a\ntCmieDyu5csjGjnSo5EjPVq+PLLfkqsA8G0wkgAAQAuLh0LSf/6nvtutm5544jpt22aouDignTu/\n/m1u927pH5/20Mk//rGMt9+WuXmzJCnRv79iX30l1xNPSH36yM7I0IZzirQ70Esej62q112aNi1N\nkvTAA2H9x384d3xetSqmvn19bX/SAI4oTY4kxONxzZw5U/n5+QoEAsrPz9esWbOU2LMKAwAAODBz\n506dPEhyu6Wbbvp607U77wyruDigH/2oi577vwzZJ52khh/9SEZNjXyPPabEJ5/o/bN/qvf7nK+X\nz/wP/fDafpo0KagPPnDrl7/0Ny6xevXVAV18cSzVpwngCNTkSMK8efN0//3366GHHtLQoUP1zjvv\naPLkyfL5fLr55pvbokYAADqUf24oHjNiu/6xzqOHH7a0e7dUXBzQunVudetmadUql3r37qph+Xn6\n6CdzFQoZcrttban6esRgxoyI5s3zqaQkoMLCqNat+/rj+/zz41q6NDnFaMmSiHJzGUUAcPiaDAlv\nvvmmLrroIk2cOFGS1KdPH11wwQV64403Wr04AAA6KkdzsaThax7S1rGX6jMjTbt2merWzdKKFbsV\njRqKxWy98nZXbdjg0vz5fhUWRlVR4W2cRrRggU+TJsX01FMejRoVV0VFMhQsXBhWv35urVqVHE3I\nzfXRuAygRTQZEsaPH6/bbrtNH330kY4//nitXbtWL774ombOnNkW9QEA0KHFQyGprExGVpaO+eBl\n9Rg1Sn/+sy2329bnn5v63//1KD3dUm2t2RgMQiFjv9cJBm0VFzdo926pvLxOLpctr9ckGABoFYZt\n23ZTB82cOVPz58+X2+1WPB7XzTffrDl7hlH3qq2tbby9fv36lq8UAIAOIG3PF/b6PasMpZmmcl55\nRVvO/VftDntUV2fo5Zdd6tXL1n/+Z3Kjtfvvr9OKFZ7GkNCtm6XS0gbNn++XJM2fH1a/fgn5fMmP\nbJ83IcsOyTB2sJoRgG9lwIABjbfT09P3e7zJkYS7775bS5Ys0bJlyzR48GCtWbNG119/vfr166cr\nr7yyZasFAKADSzNN9XvoIUnSZ5Mnq97qpbpEF314Wn9tWf91j0FxcYMkKRqVdu40ddNNAZWWNqhv\nX6sxGGRnW3r44ZB8PsnrteUyLHXvUqPtdXVK7MkFTf/MBwDfTpMjCcccc4xuvvlmTZ8+vfG+W2+9\nVUuXLnWMGOw7knCgNAJ0JqtXr5YkFRQUpLgSoPNJ5fUXD4UUu/NOVY74gT6uy9Ftt/k0fXpUb73l\ncvQYZGZaKiyMKhQy9OCDPmVmWlq6NKTXX3dr+PCEMjJspaXZ8nikvl/8Q97Vq2VOnixfz577/X8S\nuy2j/eDzr+No6rt7k5MYbdveb66jaZpqxiwlAAA6F79fy4f+TGtrc/Tv/56mK66IacaMwAF7DKRk\nn0FmpqU77gira1db48bF1bu3rRUrTF1wwVHascOUjjtOVvfucgUCjufGQyElSkuVKC1tDAsA0FKa\nnG508cUXa/78+crLy9OgQYO0Zs0a3XHHHSoqKmqL+gAA6DDWro1q5cr9P1ofe8yjWbMadNttyalE\nxcUNystLKCfH0qRJUbndttxu6YILgo7Rht27pXcru2rYeefJ3LWLEQMAbabJkHDHHXeoa9eumjZt\nmrZt26bevXvr6quvVmlpaVvUBwBAh/PMM27NmBHRQw95tGBBWDNmBHT//V6Vl9cpGLTlctny+aT8\nd/8iOy9P7nfXadeECbr3XpeuvTbZt7B3w7Vdu0zddZep747epX3HEv55LwYAaElNhoQuXbpowYIF\nWrBgQVvUAwBAhzVokFdnn51sQL7vPq/Gj48rJyeuxx4LyTAkv9mg4//+O7mqqhSdOFHq3l2udevk\nev99dduwQSOm3aSHH7a/YcO1ozQsWNs4d5h+BACtqcmQAAAAmsftdmviRL8+/KBeowbtVPfPP1L2\noGGyIxGpokJWRoasnj1l9+gh9zvvyDZN2d27S4YhIxxWt8cf0nGTfqyNn3obN1ybOTOiBQt8qqjw\natGieo0fH5YnkVBi74j+nDkEBQAtjt1XAABoQW63Wyf0N3XiMwuV89b/ypBkLlwos7padrduMlwu\nxc84Q+bmzXJ99pns9HRFx45V/Iwz5P74Y3X7/b3q0cPSXXeFVVQU1YIFPtXUmKqpMTVtWppeey2u\naCKR6tMEcIRjJAEAgBa2b79AIhyWlZUls7panrPOkiSZS5dKhiHbNGV16SLvs8/KSCQUnThR7nfe\nUZ8nf6PEhf8un89SRYXX8dr/8z8e7doV14RbbpHb5WIUAUCrYCQBAIBW0PjlvaxMZnW1VFLine truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d54e0b8>"
"<matplotlib.figure.Figure at 0x7f3e59f88390>"
]
}
],
@@ -2377,9 +2585,9 @@
{
"metadata": {},
"output_type": "display_data",
"png": "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 truncated
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a798d0>"
"<matplotlib.figure.Figure at 0x7f3e637dd710>"
]
}
],
@@ -2491,7 +2699,7 @@
"output_type": "display_data",
"png": "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\nYRgmKyGUYRiGycYwBCIRIBiUMAwBj8eY1Apdbm9KsbkplfKidHR04Oyzz0Y8HseqVatw2mmn4dCh\nQ3jxxRcRj8dx7NgxLFu2DEePHsXNN9+MUCiEJ598En/xF3+Bp59+GldffXXW9b797W9jypQp+NrX\nvoZdu3bhe9/7Hjweenzu7e3FXXfdhd/85jf493//d8yePRvf/OY3s97/+uuv47nnnsMtt9yChoYG\n/Ou//iuuuOIKbNq0Ceeff77drhgD+Lvf/S5uuukmNDY24utf/zoA2EafUgpXXXUVfvnLX2LVqlU4\n9dRTsX37djz66KN47733sgyjL3zhC3j66afx13/911i2bBk2bdqEyy67bHQfeBlhI4VhJjm5CaGT\nccFlGIYphkSCdrt5rnS8KStXrhy2bSW9KLfffjs6OjqwdetWnHXWWfZxrVi1du1adHR04LXXXsPy\n5csBAKtWrcKSJUuwdu1afPazn7WNEAAYGBjAG2+8YR/r6urCs88+ixUrVuCVV14BANxwww3YtWsX\nHn/88UFGynvvvYetW7finHPOAQBcf/31aGtrw+23345f/epXdjulhg8bvPLKK/H1r38d4XAY11xz\nTda5Z599Fj/72c/w2muv4U//9E/t40uXLsW1116Ln//857jkkkvw+9//Hk8//TS+/OUv45FHHgEA\nfOlLX8J1112Hd955Z9g+VBIO92IYhmEYhmFGxEhyUyrlRZFS4oUXXsCll16aZaC4efnll7FkyRLb\nQAGAuro6fPnLX0ZHRwfeeuutrPZ/8zd/k2W0nH322QCAv//7v89qd/bZZ+Pw4cMYGBjIOr506VLb\nQAGAQCCAa665Bq+//jpSqdToBpqH5557DgsXLsSpp56K7u5u+2f58uUQQuC1114DAPz0pz8FANx4\n441Z77/55ptL1pdSwUYKw0xySNsfCIUmZ9gCwzBMMQw1V0qpJl0CPVBcbkolvShdXV3o7e3FH/3R\nHxVss2/fPrS3tw86vmjRIgCUr+Jm1qxZWb97vV4ANPbc40opJJPJrOP5jDh9bN++fQX7OVLef/99\n7Ny5E6FQCOFw2P7R/e/s7LTvKYQYVKdmNEII5YbDvRiGYeOEYRimCPLNlZM5ZLaY3JRqU/QaqfiB\naZojOl5M2FaxfbIsq+hrSClx2mmn4bvf/W7e89OnTx9xv8YaNlIYhmEYhmHywKIiwzNUbkql66Jo\ntaqhcitmz56NHTt2DDquj82ZM6ekfcpnvL3//vt2XwDA7/cDAHp6etDU1GS3y+dpKWTQLFiwANu2\nbcOFF144ZH9mz54NpRR27dqFxYsXD+pTNcHhXgzDMAzDMDloD8lwtVB0GFgwOPnCvYChc1Mq7UUx\nDANXXXUV/ud//gf/93//l7fN5Zdfjt/+9rfYsmWLfayvrw+PPfYYpk2bhiVLlpS0T2+++SZ+85vf\n2L/HYjE888wzOP/88+3QMR16tXnzZrvd0aNHsWHDhkFGSX19PeLx+KD7rFy5EtFoFI899tigcydO\nnLDll//sz/4MAOykec33vve90QyvrLAnhWEYhmEYZgjSaUd6uBCxGD1MTraQLyC/N2Wsqsvfd999\n+PnPf45PfvKT+OIXv4jFixcjGo3ihRdewIsvvoivfvWrePbZZ3HZZZfh5ptvRnNzM5566ins2LED\nTz/9dN56JSfDaaedhssvvxw33XSTLUF89OhR3HfffXabFStWYNasWfj85z+Pr3zlKzAMAz/4wQ8Q\nDodx4MCBrOudddZZePTRR3HXXXehra0NDQ0NuOKKK3Dttdfixz/+MVavXo3Nmzfj/PPPh1IKO3fu\nxPPPP48f//jHWL58Oc444wx87nOfw2OPPYZUKmVLEBcrJV1J2EhhmCqHww0YhmEqD3lIFNJpiV27\naP5tb5dDGirA+JizR5M3MRT5clPGKhelpaUF//u//4tvfOMbePbZZ5FMJjFjxgysWLECwWAQ9fX1\neP311/HVr34Vjz76KI4dO4bTTz8d//Ef/4Err7xy0Ljyke+4EPmLfX784x/HJz/5Saxfvx67d+/G\nokWL8OKLL+LjH/+43cbj8eCFF17Al7/8ZXzjG9/AtGnTsGbNGvh8vkEqYnfeeScOHDiABx98ED09\nPZgzZw6uuOIKCCHwk5/8BA899BA2bNiAl156CVOmTMH8+fOxevVqnH766fY1Hn/8cYRCITz99NN4\n6aWXcNFFF+Hll18eJAYw1ghV6r/UEuCWZNOusPHMm2++CYBk6CY6k2msQPnHm52QOfaLHn+/45eJ\nNq+eLJPh85hIf7+FqMQY02mJnTvpdXs7ChopWuFLz9mRiCjJnF3qMUqpcORIH5qappTkehqlFJ5/\n/nmsXLnSlrx1y/xORgzDwA033IBHH310rLtSEvr6+lBXV1fwfKnnVfakMAzDMAzDuHB7QzLine truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a017b8>"
"<matplotlib.figure.Figure at 0x7f3e59f6f780>"
]
},
{
@@ -3558,7 +3766,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f35569d8eb8>"
"<matplotlib.figure.Figure at 0x7f3e6376f668>"
]
},
{
@@ -3566,7 +3774,7 @@
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAA0sAAAGkCAYAAADgyb4IAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XdYVFf6B/DvzNCrgBSpIgICCgqIKIINO/YYWzQmJiYb\nU0xZE7Ob1eSXNTFxjSZmN9VorNFYEivYQUEpiggKolTpvdeZ+/sDM3JmAClT4f08zz6be+aWw1WH\n+95zzvvyOI7jQAghhBBCCCGEwVd2BwghhBBCCCFEFVGwRAghhBBCCCFtoGCJEEIIIYQQQtpAwRIh\nhBBCCCGEtIGCJUIIIYQQQghpAwVLhBBCCCGEENIGCpYIIYQQQgghpA1KC5bCw8Mxe/Zs2Nrags/n\nY/fu3VL7bNy4ETY2NtDT08OECRNw9+5d5vMffvgBEyZMQL9+/cDn85GVldWpax85cgTu7u7Q0dGB\nh4cHjh8/LpOfiRBCCCGEENJ7KC1YqqmpgaenJ7Zv3w5dXV3weDzm882bN2Pr1q3YsWMHYmJiYGFh\ngcmTJ6O6ulq8T11dHaZNm4aPP/6409eNiorC4sWLsXz5cty+fRvLli3DwoULER0dLbOfjRBCCCGE\nEKL+eBzHccruhKGhIb799lusWLECAMBxHKytrfHmm29i/fr1AID6+npYWFhgy5YtWL16NXN8bGws\n/Pz8kJGRAXt7+w6vtWjRIpSXlyM0NFTcNnnyZJibm2P//v0y/skIIYQQQggh6kol1yylp6ejoKAA\nU6ZMEbfp6OggKCgIkZGRPTr39evXmfMCwJQpU3p8XkIIIYQQQkjvoqHsDrQlPz8fAGBpacm0W1hY\nIDc3t8fnljyvpaWl+JqtVVRU9OhahBBCCCGEEMUzNjaWyXlUcmSpI5JrmwghhBBCCCFEHlQyWLKy\nsgIAFBQUMO0FBQXiz3pybslRJFmclxBCCCGEENK7qOQ0PEdHR1hZWSEsLAw+Pj4AWhI8XL16FVu2\nbOnRuUePHo1z587hvffeE7edO3cOAQEBHR4nq6E88nSxsbEAAF9fXyX3pG+h+64cdN8Vj+65ctB9\nVw6678pB91055LGERmnBUk1NDVJTUwEAIpEImZmZiI+Ph5mZGezs7LB27Vps2rQJQ4YMgbOzMz79\n9FMYGhpi6dKl4nPk5+cjPz8f9+/fBwAkJSWhtLQUDg4OMDExAQBMmjQJo0aNwqZNmwAAb731FoKC\ngrB582bMmTMHx44dw+XLl3Ht2jUF3wFCCCGEEEKIKlPaNLyYmBh4e3vD29sb9fX12LBhA7y9vbFh\nwwYAwLp16/D2229jzZo1GDlyJAoKChAWFgZ9fX3xOb777jt4e3vjueeeA4/Hw8yZM+Hj44MTJ06I\n90lLS2Om3Y0ePRoHDx7Erl274OXlhb179+LQoUMYOXKk4n54QgghhBBCiMpT2sjS+PHjIRKJOtxn\nw4YN4uCpLRs3bsTGjRs7PEd6erpU24IFC7BgwYJO9ZMQQgghhBDSN6lkggdCCCGEEEIIUTYKlggh\nhBBCCCGkDRQsEUIIIYQQQkgbKFgihBBCCCGEkDZQsEQIIYQQQgghbaBgiRBCCCGEEELaQMESIYQQ\nQgghhLSBgiVCCCGEEEIIaQMFS4QQQgghhBDSBgqWCCGEEEIIIaQNFCwRQgghhBBCSBsoWCKEEEII\nIYSQNlCwRAghhBBCCCFtoGCJEEIIIYQQQtpAwRIhhBBCCCGEtIGCJUIIIYQQQghpAwVLhBBC1E5t\nfTVSsm6jtr5a2V0hhBDSi2kouwOEEEJIV5RUFODz/WvR0FgHUyMLvL3wcxgbmCq7W4QQQnohGlki\nhBCiVq7En0RDYx0AoLSyECej9im5R4QQQnorCpYIIYSolfT8FGY7+t4lFJTlKKk3hBBCejMKlggh\nhKiNZmETHhWlMW0cJ8LpqP1K6hEhhJDejIIlQgghaiO3OBNCYbNU+63Ua1JBFCGEENJTFCwRQghR\nG5n599v97BSNLhFCCJExCpYIIYSojcyC1HY/S0qPRXpeSrufE0IIIV1FwRIhhBC1kZnPBkv6OobM\n9qnIvYrsDiGEkF6OgiVCCCFqoa6hBgVlj8TbPPCwdPIbzD73H93B/ewERXeNEEJIL0XBEiGEELWQ\nVfCA2bYys8OwQX5wsfNk2k9G7gPHcYrsGiGEkF6KgiVCCCFqQXK9kr2lMwAgZMxzTHtGfgqS0mMV\n1i9CCCG9FwVLhBBC1EKWRLDk8DhYGmjlgqGOI5nPTkXtg4gTKaxvhBBCeielBUvh4eGYPXs2bG1t\nwefzsXv3bql9Nm7cCBsbG+jp6WHChAm4e/cu83lDQwPeeOMNmJubw8DAAHPmzEFOTsdV3Hft2gU+\nn8/8TyAQoLGxUaY/HyGEENmSTO7gYOUi/u+Zo5cyn+UUZyA+NVIh/SKEENJ7KS1YqqmpgaenJ7Zv\n3w5dXV3weDzm882bN2Pr1q3YsWMHYmJiYGFhgcmTJ6O6ulq8z9q1a3H06FEcPHgQERERqKysREhI\nCESijt8m6unpoaCgAPn5+cjPz0deXh60tLTk8nMSQgjpubKqYlTUlIq3NQVasDazF2/bmDvC22Us\nc8zp6wcgFAkV1kdCCCG9j9KCpenTp+PTTz/FggULwOez3eA4Dtu2bcP69esxb948eHh4YPfu3aiq\nqsL+/S1FBysqKrBz505s2bIFkyZNwogRI7Bnzx4kJCTg/PnzHV6bx+PB3NwcFhYW4v8RQghRXZJT\n8GwtBkEg0GDapvsvAY/35PdJYVkOYpMvK6J7hBBCeimVXLOUnp6OgoICTJkyRdymo6ODoKAgREa2\nTKuIi4tDU1MTs4+trS3c3NzE+7Snrq4OAwcOhJ2dHWbNmoX4+Hj5/CCEEEJkQmoK3uP1Sq1ZmtjA\nz20C03bmxm9oFjbJtW+EEEJ6L42n76J4+fn5AABLS0um3cLCArm5ueJ9BAIBzMzMmH0sLS1RUFDQ\n7rmHDBmCX375BV5eXqisrMT27dsREBCA27dvY/Dgwe0eFxtLmZUUje65ctB9Vw667x1LfBDHbAtr\nBW3eMxtdN/B5l8TJHUorC3Hw9M8YMsBXal+658pB91056L4rB913xXJ2ln6R1lMqObLUEcm1TV3l\n7++P5cuXw9PTE2PHjsVvv/2GwYMH45tvvpFRDwkhhMiSiBOhpDqPaetvYN3mvgY6/eBs6c203cm+\nSqNLhBBCukUlR5asrKwAAAUFBbC1tRW3FxQUiD+zsrKCUChESUkJM7qUn5+PoKCgTl+Lz+fD29sb\nqampHe7n6yv9VpLIx19vYeieKxbdd+Wg+/50eSXZaIp8krFUX8cQ48dObvflmbPbIHyy61U0Nbcc\nU9dUjRqNfEzymQeA7rmy0H1XDrrvykH3XTkqKipkfk6VHFlydHSElZUVwsLCxG319fW4evUqxowZ\nAwDw8fGBpqYms8+jR4+QnJws3qczOI7D7du3YW3d9ltKQgghypWZf5/ZdrB07nCWgbG+KYK8ZjJt\n52KPoq6hVi79I4QQ0nspNXV4fHw84uPjIRKJkJmZifj4eGRnZ4PH42Ht2rXYvHkzjh07hsTERKxc\nuRKGhoZYurSlloaxsTFWrVqFdevW4cKFC7h16xaWL18OLy8vBAcHi68zadIkfPjhh+Ltjz/+GGFh\nYUhLS0N8fDxWrVqFpKQkvPrqqwq/B4QQQp4uUyITnr3V0+ekB/vMg46Wnni7tr4Kl2/9KfO+9XaZ\n+ak4Fr4TcSkRyu4KIYQohdKm4cXExGDixIkAWtYhbdiwARs2bMDKlSuxc+dOrFu3DnV1dVizZg3K\nysrg7++PsLAw6Ovri8+xbds2aGhoYNGiRairq0NwcDD27t3LvHFMS0uDg4ODeLuiogKrV69Gfn4+\njI2N4e3tjfDwcBomJYQQFZVZID2y9DT6ukaYMGI2ztw4KG67eOsPBHnNkHn/eqviinzsOPoRGprq\nAQBCUbNUtkFCCOntlBYsjR8//qnFY/8KoNqjpaWFr7/+Gl9//XW7+6SnpzPbW7duxdatW7vWWUII\nIUrR2NyA3OJMps2+E8ESAIwfMRvht0+hpr4KANDQWIfzccdgo+Mh8372RlcTzogDJQC4ePMPCpYI\nIX2OSq5ZIoQQdSUSCSESCZXdjV4jpyiduZ9mRpYw1DPu1LG62noI9p3PtIXfPoXaxiqZ9rE3Egqb\nEXPvMtOWW5whFbgS2WhsbkBk4jkkpsWA4zhld4cQ0goFS4QQIiNZBQ/wf7tfw9pvFuB4xC566JEB\nqWK0nViv1Fqg5wwY6ZmIt5uaG3Hn0TWZ9K03u5t5E1V10lmlYlPCldCb3q26rhJf7H8HBy98ix9O\n/BthMb8ru0uEkFYoWCKEEBmorCnDDyf+jZLKlqLYF28ex7U7oUrulfqTTO7gYOnSpeO1NLUxxW8h\n05aafxPV9eU97ltvduPuxTbb41LCxQV/Sc81NTfhpxOfobAsR9wWFnNYPHWUEKJ8FCwRQkgPCUVC\n7Dr7H1TWlDHtxyN+YR6CSNdJpQ3v4sgSAIwZOhmmhubibREnQkI2ZXdrT1VtBRLTY9r8rKyqCOm5\n9xTco96J4zjsP/8N0vLY+9nU3IjIxHNK6hUhRBIFS4QQ0kOnIvfhwaNEqfbG5gbsCd0GIa1h6paa\nukoUV+SLt/k8PmzNB3X5PBoCTUwbtZhpe1iYQIFsO2JTrnS47i42mabiycKZGwcR1860xojbpyAU\nNiu4R0TVNDU34bvjn+Buxk1ld6VPo2CJEEJ6IOHhDZyPO9ru55kFqbQGoZsyCx4w2wP6O0BLU7tb\n5xrpNh4WJjbibQ4cTl8/2MERfVe0xBQ8Jxs2e+CtB5FoFjYpsku9TkzyZZy98Vu7n5dXl+Line truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556accb00>"
"<matplotlib.figure.Figure at 0x7f3e5a1a1668>"
]
},
{
@@ -3574,7 +3782,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a89ef0>"
"<matplotlib.figure.Figure at 0x7f3e5a151828>"
]
}
],
@@ -3607,7 +3815,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d2decf8>"
"<matplotlib.figure.Figure at 0x7f3e5a03fc18>"
]
}
],
@@ -3677,7 +3885,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f3556a367b8>"
"<matplotlib.figure.Figure at 0x7f3e63722518>"
]
},
{
@@ -3685,7 +3893,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d401e48>"
"<matplotlib.figure.Figure at 0x7f3e5a0035f8>"
]
},
{
@@ -3693,7 +3901,7 @@
"output_type": "display_data",
"png": "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 truncated
"text": [
"<matplotlib.figure.Figure at 0x7f354d2c1f98>"
"<matplotlib.figure.Figure at 0x7f3e59faf898>"
]
},
{
+29 -1
View File
@@ -42,6 +42,33 @@ def show_two_sensor_bearing():
ax.add_artist(circle2)
plt.show()
def show_three_gps():
circle1=plt.Circle((-4,0),5,color='#004080',fill=False,linewidth=20, alpha=.7)
circle2=plt.Circle((4,0),5,color='#E24A33', fill=False, linewidth=8, alpha=.7)
circle3=plt.Circle((0,-3),6,color='#534543',fill=False, linewidth=13, alpha=.7)
fig = plt.gcf()
ax = fig.gca()
# plt.ylim((-10,10))
#plt.plot ([-4,0], [0,3], c='#004080')
#plt.plot ([4,0], [0,3], c='#E24A33')
#plt.text(-4, -.5, "A", fontsize=16, horizontalalignment='center')
#plt.text(4, -.5, "B", fontsize=16, horizontalalignment='center')
ax.add_patch(circle1)
ax.add_patch(circle2)
ax.add_patch(circle3)
plt.axis('equal')
#ax.set_xlim(-15,15)
#ax.set_ylim(-15,15)
plt.show()
def show_sigma_transform():
fig = plt.figure()
ax=fig.gca()
@@ -157,6 +184,7 @@ def show_sigmas_for_2_kappas():
if __name__ == '__main__':
show_sigma_transform()
show_three_gps()
#show_sigma_transform()
#show_sigma_selections()
+141
View File
@@ -0,0 +1,141 @@
# -*- coding: utf-8 -*-
import numpy as np
from numpy.linalg import norm, inv
from numpy.random import randn
from numpy import dot
numpy.random.seed(1234)
user_pos = np.array([1000, 100]) # d5, D6
pred_user_pos = np.array([100, 0]) #d7, d8
t_pos = np.asarray([[0, 1000],
[0, -1000],
[500, 500]], dtype=float)
def transmitter_range(pos, transmitter_pos):
""" Compute distance between position 'pos' and the list of positions
in transmitter_pos"""
N = len(transmitter_pos)
rng = np.zeros(N)
diff = np.asarray(pos) - transmitter_pos
for i in range(N):
rng[i] = norm(diff[i])
return norm(diff, axis=1)
# compute measurement of where you are with respect to seach sensor
rz= transmitter_range(user_pos, t_pos) # $B21,22
# add some noise
for i in range(len(rz)):
rz[i] += randn()
# now iterate on the predicted position
pos = pred_user_pos
def hx_range(pos, t_pos, r_est):
N = len(t_pos)
H = np.zeros((N, 2))
for j in range(N):
H[j,0] = -(t_pos[j,0] - pos[0]) / r_est[j]
H[j,1] = -(t_pos[j,1] - pos[1]) / r_est[j]
return H
def lop_ils(zs, t_pos, pos_est, hx, eps=1.e-6):
""" iteratively estimates the solution to a set of measurement, given
known transmitter locations"""
pos = np.array(pos_est)
converged = False
for i in range(20):
r_est = transmitter_range(pos, t_pos) #B32-B33
print('iteration:', i)
#print ('ra1, ra2', ra1, ra2)
print()
H=hx(pos, t_pos, r_est)
Hinv = inv(dot(H.T, H)).dot(H.T)
#update position estimate
y = zs - r_est
print('residual', y)
Hy = np.dot(Hinv, y)
print('Hy', Hy)
pos = pos + Hy
print('pos', pos)
print()
print()
if max(abs(Hy)) < eps:
converged = True
break
return pos, converged
print(lop_ils(rz, t_pos, (900,90), hx=hx_range))
#####################
"""
# compute measurement (simulation)
rza1, rza2 = transmitter_range(user_pos) # $B21,22
rza1 += randn()
rza2 += randn()
# now iterate on the predicted position
pos = pred_user_pos
for i in range(10):
ra1, ra2 = transmitter_range(pos) #B32-B33
print('iteration:', i)
print ('ra1, ra2', ra1, ra2)
print()
H = np.array([[-(t1_pos[0] - pos[0]) / ra1, -(t1_pos[1] - pos[1]) / ra1],
[-(t2_pos[0] - pos[0]) / ra2, -(t2_pos[1] - pos[1]) / ra2]])
Hinv = inv(H)
#update position estimate
residual_t1 = rza1 - ra1
residual_t2 = rza2 - ra2
y = np.array([[residual_t1], [residual_t2]])
print('residual', y.T)
Hy = np.dot(Hinv, y)
pos = pos + Hy[:,0]
print('pos', pos)
print()
print()
if (max(abs(y)) < 1.e-6):
break
"""