diff --git a/Multidimensional Kalman Filters.ipynb b/Multidimensional Kalman Filters.ipynb index 0d5cf36..aafeb48 100644 --- a/Multidimensional Kalman Filters.ipynb +++ b/Multidimensional Kalman Filters.ipynb @@ -63,7 +63,7 @@ "language": "python", "metadata": {}, "outputs": [], - "prompt_number": 57 + "prompt_number": 1 }, { "cell_type": "markdown", @@ -71,7 +71,7 @@ "source": [ "Let's use it to compute a few values just to make sure we know how to call and use the function, and then move on to more interesting things.\n", "\n", - "First, let's find the probability for our dog being at 2.5, 7.3 if we believe he is at (2,7) with a variance of 4 for x and a variance of 5 for y. This function requires us to pass everything in as numpy arrays (we will soon provide a more robust version that works with numpy matrices, numpy arrays, and/or scalars in any combinations. That code contains a lot of boilerplate which obscures the algorithm).\n", + "First, let's find the probability for our dog being at (2.5, 7.3) if we believe he is at (2,7) with a variance of 4 for x and a variance of 5 for y. This function requires us to pass everything in as numpy arrays (we will soon provide a more robust version that works with numpy matrices, numpy arrays, and/or scalars in any combinations. That code contains a lot of boilerplate which obscures the algorithm).\n", "\n", "So we set x to (2.5,7.3)" ] @@ -85,7 +85,7 @@ "language": "python", "metadata": {}, "outputs": [], - "prompt_number": 83 + "prompt_number": 2 }, { "cell_type": "markdown", @@ -103,7 +103,7 @@ "language": "python", "metadata": {}, "outputs": [], - "prompt_number": 84 + "prompt_number": 3 }, { "cell_type": "markdown", @@ -121,7 +121,7 @@ "language": "python", "metadata": {}, "outputs": [], - "prompt_number": 92 + "prompt_number": 4 }, { "cell_type": "markdown", @@ -147,7 +147,7 @@ ] } ], - "prompt_number": 93 + "prompt_number": 5 }, { "cell_type": "markdown", @@ -174,7 +174,7 @@ ] } ], - "prompt_number": 94 + "prompt_number": 6 }, { "cell_type": "markdown", @@ -206,11 +206,11 @@ "output_type": "display_data", "png": "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\nAAAAAElFTkSuQmCC\n", "text": [ - "" + "" ] } ], - "prompt_number": 104 + "prompt_number": 7 }, { "cell_type": "markdown", @@ -218,35 +218,26 @@ "source": [ "The result is clearly a 3D bell shaped curve. We can see that the gaussian is centered around (2,7), and that the probability quickly drops away in all directions.\n", "\n", - "As beautiful as this is, it is perhaps a bit hard to get useful information. For example, it is not easy to tell if x and y both have the same variance or not. So for most of the rest of this book we will display multidimensional gaussian using contour plots.\n" + "As beautiful as this is, it is perhaps a bit hard to get useful information. For example, it is not easy to tell if x and y both have the same variance or not. So for most of the rest of this book we will display multidimensional gaussian using contour plots. I will use some helper functions in gaussian.py to plot them. If you are interested in linear algebra go ahead and look at the code used to produce these contours, otherwise feel free to ignore it." ] }, { "cell_type": "code", "collapsed": false, "input": [ - "import numpy.linalg as linalg\n", - "def plot_sigma_ellipse(x, y, cov):\n", - " # Get the sigma ellipse by transforming a circle by the cholesky decomposition\n", + "import gaussian as g\n", "\n", - " L = linalg.cholesky(cov)\n", - " t = linspace(0,2*pi,100)\n", - " unit_circle = np.array([cos(t), sin(t)])\n", - "\n", - " E1 = L.dot(unit_circle)\n", - " axis('equal')\n", - " plot(E1[0]+x, E1[1]+y)\n", - " scatter(x,y,marker='+') # mark the center\n", - " show()\n", - " \n", "cov = array([[2,0],[0,2]])\n", - "plot_sigma_ellipse(2,7,cov)\n", + "e = g.sigma_ellipse (cov, 2, 7)\n", + "g.plot_sigma_ellipse(e, '\"2 0; 0 2\"')\n", "\n", "cov = array([[2,0],[0,12]])\n", - "plot_sigma_ellipse(2,7,cov)\n", + "e = g.sigma_ellipse (cov, 2, 7)\n", + "g.plot_sigma_ellipse(e, '\"2 0; 0 12\"')\n", "\n", "cov = array([[2,3],[1,2.5]])\n", - "plot_sigma_ellipse(2,7,cov)\n" + "e = g.sigma_ellipse (cov, 2, 7)\n", + "g.plot_sigma_ellipse(e,'\"2 3; 1 2.5\"')\n" ], "language": "python", "metadata": {}, @@ -254,29 +245,151 @@ { "metadata": {}, "output_type": "display_data", - "png": "iVBORw0KGgoAAAANSUhEUgAAAXIAAAEACAYAAACuzv3DAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XtYlGXi//H3KJbhAbPUDCgVVDwipLG6a86W2VdM09U8\nVpZlZLVa2171q21XrLbDtt+ubN1ctLK1g/iNrURFTd2mTCI8kNZqiSYtmJKpeEJFYH5/3IkiCqPO\ncM8Mn9d1PZfiPDofSj883M9934/D7Xa7ERGRgFXPdgAREbkwKnIRkQCnIhcRCXAqchGRAKciFxEJ\ncCpyEZEAV2ORT58+nW7dutG1a1emT59+xnMmT55M+/btiY2NJScnx+shRUTk7Kot8q+//prXXnuN\nNWvWsGHDBhYtWsS2bdsqnZORkcHWrVvJzc1l1qxZTJo0yaeBRUSksmqL/JtvviEhIYGGDRtSv359\n+vXrx/vvv1/pnPT0dMaPHw9AQkICRUVFFBYW+i6xiIhUUm2Rd+3alVWrVrF3716Ki4tZvHgxBQUF\nlc7ZsWMHkZGRFR9HRERUOUdERHwnpLoXY2JieOyxxxgwYACNGjUiLi6OevWqdv/pq/wdDod3U4qI\nyFlVW+QAEyZMYMKECQA88cQTXHXVVZVeDw8PJz8/v+LjgoICwsPDq/w50dHRVcbXRUSkelFRUWzd\nurX6k9w1KCwsdLvdbvf333/vjomJce/fv7/S64sXL3YPHDjQ7Xa73Z9//rk7ISHhjH+OB28V0KZO\nnWo7gs8E8+fmduvzC3TB/vl50p01XpGPGDGCPXv20KBBA1599VWaNm1KSkoKAElJSSQmJpKRkUF0\ndDSNGjVizpw5XvgaJCIinqqxyD/99NMqv5aUlFTp4xkzZngvkYiInBOt7PQSp9NpO4LPBPPnBvr8\nAl2wf36ecPw8BuP7N3I4qsxuERGR6nnSnboiFxEJcCpyEZEApyIXEQlwKnIRkQCnIhcRCXAqchGR\nAKciFxEJcCpyEZEApyIXEQlwKnIRkQCnIhcRCXAqchGRAKciFxEJcCpyEZEApyIXEQlwKnIRkQCn\nIhcRCXA1Fvlzzz1Hly5d6NatG2PHjuXYsWOVXne5XISFhREXF0dcXBzPPPOMz8KKiEhV1T58OS8v\nj9mzZ7N582YuvvhiRo0aRWpqKuPHj690Xr9+/UhPT/dpUBERObNqi7xp06Y0aNCA4uJi6tevT3Fx\nMeHh4VXO07M4RUTsqXZopXnz5jzyyCNcddVVXHnllTRr1oz+/ftXOsfhcJCZmUlsbCyJiYls2rTJ\np4FFRKSyaot827ZtvPzyy+Tl5fHDDz9w6NAh3nnnnUrnxMfHk5+fz4YNG/jtb3/L0KFDfRpYREQq\nq3ZoZe3atfTp04fLLrsMgN/85jdkZmYybty4inOaNGlS8fOBAwdy//33s3fvXpo3b17lz0tOTq74\nudPpxOl0XmB8EZHg4nK5cLlc5/R7HO5qBrg3bNjAuHHjWLNmDQ0bNuTOO+/k2muv5YEHHqg4p7Cw\nkJYtW+JwOMjOzmbkyJHk5eVVfSOHQ2PpIiLnyJPurPaKPDY2ljvuuIOePXtSr1494uPjmThxIikp\nKQAkJSWRlpbGzJkzCQkJITQ0lNTUVO99BiIiUqNqr8i9+ka6IhfL3G4oLoZDh04eZWUQEnLyqF8f\nGjeGyy4zH4vYdsFX5CKBpLQUcnPhq69g2zbIz4eCgpM/7t0LF19sivrEERJift+J4/hxU/D79kHT\nptCiBVx+OURGQnQ0tG9vjuho85rDYfuzFtEVuQSo8nL4+mv49FNYs8aU9zffQOvW0L27KdvISHNE\nRJgfz+Uqu6wMiopg925z5OebLxKnHg0awLXXQq9eJ3/8eV6AiNd40p0qcgkIbjf85z+wdKkp788+\nM1fK110Hv/gFdOsGXbqYq+zaylNQANnZ5gtJdjasW2e+YNx0kzn69oVLLqmdPBK8VOQS0MrK4PPP\n4cMPzXH8OAwaBE6nKcnWrW0nrKysDNauhWXLzLFxI/zylzB8uDnOMCNXpEYqcglIGzfCnDnw7rum\nrIcONUdsbGCNSRcVwfLl8H//Bx99ZL74jBkDQ4bAKcsvRKqlIpeAsW8fzJsHb7wBhYVw550wfry5\nqRgMDh6E9HTzOa5eDaNGwQMPmCEhkeqoyMXvbd8OL70E77wDAwbAhAlwww1mGmCw2rkTZs+GlBSI\nijKF/pvfmJunIqdTkYvfWrsWXnwRVq6EiRNh8mT/G/P2tePHYcEC+Nvf4Pvv4fHH4a674KKLbCcT\nf6IiF7+zYYMprK+/hocfhnvu0XgxmJu606bBpk3mv8+ECWbOu4gn3alHvUmt2L4dbrvNTMsbOBC2\nbjVFrhI3evc2Uyvfew8WLTL3Bt5+28yXF6mJilx86sAB+N3voGdPs0gnNxd++1sNH5xNQgIsXgzz\n58P06Wb6Yna27VTi71Tk4hNuN/zrX2aRzv79sHkzTJ2qK3BP9ekDX3wB995rpl7eeaeZzSNyJipy\n8bq8PLj5ZvjTn8xc8Ndfh5YtbacKPPXqmZuf33xj9nXp3t1MX9StJjmdily8xu020+p69YJf/Qpy\ncswiGLkwTZuaGT6LFsEzz5hVort22U4l/kRFLl6xZ48pmFdfNXuhPP64xsG9rVcvs59Lx45mlWta\nmu1E4i9U5HLBVqwwxRIVBVlZ0KmT7UTBq2FDeO45WLgQHn3UzL8vKbGdSmzTPHI5b243/PnPMHMm\n/POf0L+/7UR1y7595iborl1mP5err7adSHxB88jFZw4dgpEjzbjtmjUqcRsuvdTsCnnrrWY/9GXL\nbCcSW1Tkcs62bzfzmxs3BpcLrrzSdqK6y+GA3//ejJePHw+zZtlOJDbUWOTPPfccXbp0oVu3bowd\nO5Zjx45VOWfy5Mm0b9+e2NhYcnJyfBJU/MOaNWaO8913m50KGza0nUjAzA767DP461/hsce0IrSu\nqbbI8/LymD17NuvXr+err76irKyM1NTUSudkZGSwdetWcnNzmTVrFpMmTfJpYLFn5UpITDS79k2e\nHFh7g9cF0dGQmWm2yR09Go4etZ1Iaku1Rd60aVMaNGhAcXExpaWlFBcXEx4eXumc9PR0xo8fD0BC\nQgJFRUUUagla0Hn/ffNQhLQ082AE8U+XX25mEbndcMstcOSI7URSG6ot8ubNm/PII49w1VVXceWV\nV9KsWTP6n3ZXa8eOHURGRlZ8HBERQUFBgW/SihVz5sCDD5qbaf362U4jNWnY0KwAvfxyGDwYiott\nJxJfq/aZ4tu2bePll18mLy+PsLAwbr31Vt555x3GjRtX6bzTp8Y4zvI9d3JycsXPnU4nTqfz/FJL\nrXn3XXjySXNTs0MH22nEUyEhMHeuWeI/aJCZXdSoke1U4gmXy4XL5Tqn31PtPPL58+ezfPlyXnvt\nNQDeeustsrKy+Pvf/15xzn333YfT6WT06NEAxMTE8Mknn9CqVavKb6R55AHnww/hvvvMt+pdu9pO\nI+ejrMw8uOO778w2ubo5HXgueB55TEwMWVlZHDlyBLfbzYoVK+jcuXOlc4YMGcLcuXMByMrKolmz\nZlVKXALPsmVm573Fi1Xigax+fXjtNfP0pXHjTLFL8Km2yGNjY7njjjvo2bMn3bt3B2DixImkpKSQ\nkpICQGJiIu3atSM6OpqkpCReffVV36cWn1qzBm6/HT74AK65xnYauVD16sGbb5qVoFOmaPfEYKQl\n+lJJfr55Ws2rr2p2SrDZvx+uuw5GjYInnrCdRjzlSXdWe7NT6pZDh0x5T5miEg9GYWGwZIlZ0BUd\nbbZYkOCgK3IBzErA4cPN/h2vv67FPsFs/Xrz7FSXyzzBSfybNs0Sj/35z/DTT/CPf6jEg118vFnK\nP2yYGW6RwKcrcuHTT8246bp12gCrLrn/fvjhB7Nqt54u6fyWrsilRnv2mGlpr7+uEq9rXn7Z7GU+\nfbrtJHKhdEVeh7nd5qZmx47mW22pe7Ztg4QE813ZaUtExE/oilyqNWuWuSJ79lnbScSWqChzf+T2\n2+H4cdtp5HzpiryO2rEDevTQzAUx35kNGmQe7jxtmu00cjpPulNFXge53TB0qCly/cMVgJ07zd+H\nZcvMj+I/NLQiZ5SWBrm5Wt0nJ7VuDU8/bbYr1vVW4FGR1zEHDpiVm6+9BhdfbDuN+JO774Zjx+Ct\nt2wnkXOloZU65g9/MOPjb75pO4n4ozVrzEymzZuhWTPbaQQ0Ri6nyc83458bNkBEhO004q/uvRdC\nQ808c7FPRS6V3HEHXH21GQsVOZsff4ROncyeLFdfbTuNqMilwvr1ZorZli3QpIntNOLv/vAHU+iz\nZ9tOIipyqTB0KPTvb2YliNRk3z5o3x6yssyWt2KPilwA+OorGDDAPLfxkktsp5FA8fTTZprqz09y\nFEtU5AKYTbG6d4fHHrOdRALJgQPQrh1kZ5sfxQ4VuVRsivTdd9C0qe00EmgefRRKS+Gll2wnqbu8\nsrLz22+/JS4uruIICwvjlVdeqXSOy+UiLCys4pxnnnnmwpKL17z0EiQlqcTl/Dz4oFlzcOCA7SRS\nnXO6Ii8vLyc8PJzs7GwiIyMrft3lcvHSSy+Rnp5+9jfSFXmtO3wYIiNh40bNG5fzN3Ik/OpXMHmy\n7SR1k9f3WlmxYgVRUVGVSvwElbT/SU2Fvn1V4nJhHnoIXnnFPNdV/NM5FXlqaipjx46t8usOh4PM\nzExiY2NJTExk06ZNXgso52/WLLNKT+RC9O5tZjutWmU7iZxNiKcnlpSUsHDhQl544YUqr8XHx5Of\nn09oaChLlixh6NChbNmypcp5ycnJFT93Op04nc7zCi01+/JLszXp//yP7SQS6BwOsyr4rbegXz/b\naYKfy+XC5XKd0+/xeIx8wYIFzJw5k6VLl9Z4btu2bVm3bh3Nmzc/+UYaI69VjzwCjRrBU0/ZTiLB\nYMcO6NbN/Ki1CLXLq2Pk8+bNY8yYMWd8rbCwsOKNsrOzcbvdlUpcapfbbfYcHznSdhIJFuHhcM01\nsHCh7SRyJh4NrRw+fJgVK1Yw+5SNF1JSUgBISkoiLS2NmTNnEhISQmhoKKmpqb5JKx5Zs8ZcNekR\nbuJNt98O776rCwR/pAVBQejRR+Gii0DT+cWb9u6FNm3MZloNG9pOU3foUW910IlhlREjbCeRYNO8\nOcTGmgd2i39RkQeZ3Fw4ftz8gxPxtkGDYNEi2ynkdCryILNyJdxwg5kyJuJtgwbB4sV6QLO/UZEH\nmX//G66/3nYKCVZdu5pNtHJzbSeRU6nIg0h5OXz8sYpcfMfhMPuuZGbaTiKnUpEHkY0bzQ0p7a0i\nvtSnD3z+ue0UcioVeRBZs8bsiyHiS3366Irc36jIg0hODsTH204hwa57d8jLg6Ii20nkBBV5EFm/\nHuLibKeQYNegAfToYS4cxD+oyINEWZl5yHKPHraTSF3QuTNs3mw7hZygIg8SW7ZA69Z6pJvUjk6d\nVOT+REUeJLZuhY4dbaeQukJF7l9U5EFi+3azoZFIbYiJUZH7ExV5kNi+Hdq2tZ1C6orISNizB44c\nsZ1EQEUeNPLyVORSe+rVg1atYNcu20kEVORBIy8Prr7adgqpS1q3VpH7CxV5kNizB1q2tJ1C6pIr\nrlCR+wsVeZDYtw+aNbOdQuqS1q1h507bKQRU5EGhtNTcdGrc2HYSqUsuu8x8Jyj2VVvk3377LXFx\ncRVHWFgYr7zySpXzJk+eTPv27YmNjSVH63Zr3f79EBZmbkCJ1JZLLoFjx2ynEICQ6l7s2LFjRTGX\nl5cTHh7OsGHDKp2TkZHB1q1byc3N5YsvvmDSpElkZWX5LrFUUVRkilykNjVsaB7ILPZ5fA23YsUK\noqKiiIyMrPTr6enpjB8/HoCEhASKioooLCz0bkqpVlkZhFT7JVmqk5xsO0FgatgQjh61nULgHIo8\nNTWVsWPHVvn1HTt2VCr3iIgICgoKvJNOpBZMm2Y7QWDavVv7kvsLj67jSkpKWLhwIS+88MIZX3ef\n9iRWx1me/Jt8yqWP0+nE6XR6llLEB5KTT5a4wwFTp+rq/Fx89x18+aXtFMHH5XLhcrnO6fd4VORL\nlizhmmuuoUWLFlVeCw8PJz8/v+LjgoICwsPDz/jnJOtfifiR5GRzOBx6Kvz56NMHQkNtpwg+p1/k\nTvPgW0aPhlbmzZvHmDFjzvjakCFDmDt3LgBZWVk0a9aMVq1aefLHihepiM7f1Km2EwSmo0fNOLnY\nV+MV+eHDh1mxYgWzZ8+u+LWUlBQAkpKSSExMJCMjg+joaBo1asScOXN8l1bOqHFjOHTIdorApW8U\nz4+K3H843KcPcPvqjRyOKmPp4h3FxWZxhnaik9p04gugvhD6lifdqSUkQeCSS6C8XFPBpHYdOABN\nmthOIaAiDwoOh9lnRU81l9q0a5fZOEvsU5EHiUsv1So7qV07d6rI/YWKPEhERIDWYUlt2rXL7IAo\n9qnIg0SbNuZxbyK1RUMr/kNFHiTatlWRS+3Zvx+OHzdDemKfijxItG1rHvcmUhu++QY6djQ32sU+\nFXmQaNsWtm2znULqis2boVMn2ynkBBV5kOjSBTZtMlvaiviaity/qMiDRNOmcOWV8O23tpNIXaAi\n9y8q8iASFwd60p7Uhi+/hO7dbaeQE1TkQSQuDtavt51Cgl1+vtkOIirKdhI5QUUeROLjYe1a2ykk\n2H3+udmLXDNW/IeKPIj06QPr1mkXRPGtzEzo3dt2CjmVijyINGlixi31HEXxpcxMc9Eg/kNFHmRu\nuAFWrrSdQoLV3r1mMVCvXraTyKlU5EHm+uvh3/+2nUKC1dKl4HTqyUD+RkUeZHr3NguD9uyxnUSC\n0eLFMGiQ7RRyOhV5kGnYEAYMgAULbCeRYFNWBsuWqcj9UY1FXlRUxIgRI+jUqROdO3cmKyur0usu\nl4uwsDDi4uKIi4vjmWee8VlY8cytt0Jamu0UEmw+/9zsex8RYTuJnC6kphOmTJlCYmIiaWlplJaW\ncvjw4Srn9OvXj/T0dJ8ElHOXmAj33gv79mmbUfGeefNgxAjbKeRMqr0i379/P6tWrWLChAkAhISE\nEBYWVuW8mp7wLLWrSRNz03PhQttJJFiUlMD8+XDbbbaTyJlUW+Tbt2+nRYsW3HXXXcTHxzNx4kSK\ni4srneNwOMjMzCQ2NpbExEQ2bdrk08DimdGjYe5c2ykkWGRkmB0227SxnUTOxOGu5nJ67dq19O7d\nm8zMTHr16sVDDz1E06ZNeeqppyrOOXjwIPXr1yc0NJQlS5YwZcoUtmzZUvWNHA6mTp1a8bHT6cTp\ndHr3s5EKx45BZKRZvBEdbTuNBLrhw2HgQLjnHttJgp/L5cLlclV8PG3atBpHPaot8l27dtG7d2+2\n//wMsc8++4znn3+eRYsWnfUPbNu2LevWraN58+aV38jh0BBMLfv97yEkBJ5/3nYSCWQ//ggdOpgn\nUDVrZjtN3eNJd1Y7tHLFFVcQGRlZcYW9YsUKunTpUumcwsLCijfJzs7G7XZXKXGx49574c03zfim\nyPlKSTEzoVTi/qvGWSt/+9vfGDduHCUlJURFRfHGG2+QkpICQFJSEmlpacycOZOQkBBCQ0NJTU31\neWjxTIcOZvP/Dz6AUaNsp5FAdOwYvPoqLF9uO4lUp9qhFa++kYZWrFiwAJ56ymxvq21H5Vy99Za5\naa4it+eCh1Yk8A0ebK6qPvrIdhIJNG43vPwyPPSQ7SRSExV5kKtXDx5/HJ57znYSCTTLlpknAQ0c\naDuJ1ERFXgeMGgX//S+sXm07iQQKtxuefNIMy9VTS/g9/S+qA0JC4P/9P/jTn8w/UJGafPghlJfD\nsGG2k4gnVOR1xF13wQ8/wJIltpOIvysrgz/+EZ5+WlfjgUL/m+qIBg3gL38xi4RKS22nEX/2zjtm\nv57ERNtJxFMq8jrk5pvhiivg9ddtJxF/tX+/GYZ7+WVNVw0kmkdex6xfbx4MsHmzVupJVQ8/DAcP\nwmuv2U4iJ3jSnSryOuj++83wyqxZtpOIP/nqK/Pw7v/8B1q0sJ1GTlCRyxkdOGC2JH3rLfMgXZHy\ncvN3YcwYmDTJdho5lVZ2yhk1bQp//ztMnAhHjthOI/7glVfMbJV777WdRM6HrsjrsFGj4OqrzWwW\nqbs2bYLrroMvvoCoKNtp5HQaWpFq/fgjxMXBP/8J/fvbTiM2HD8OvXub786SkmynkTPR0IpUq2VL\nU+Ljx0Nhoe00YsPTT5sbmxpSCWy6Ihf+8Aezze2SJVrJV5csWWIe3bZ2LbRubTuNnI2uyMUj06bB\n4cMaK69LvvsO7rwTUlNV4sGgxicESfALCYF58yAhAbp2NStAJXgVF5uHKT/xBPTtazuNeIOGVqRC\nVhYMGQIrV0K3brbTiC+43XDHHWbe+Ntvaxl+INDQipyTX/wCpk83Zf7jj7bTiC/86U/w7bdmVa9K\nPHjUWORFRUWMGDGCTp060blzZ7KysqqcM3nyZNq3b09sbCw5OTk+CSq1Y8wYc8U2dKgZN5fg8Y9/\nmDHxxYuhUSPbacSbaizyKVOmkJiYyObNm9m4cSOdOnWq9HpGRgZbt24lNzeXWbNmMUnrewNecjJ0\n7GgeKnDsmO004g0ffmie9rNsmfZRCUbVFvn+/ftZtWoVEyZMACAkJISwsLBK56SnpzN+/HgAEhIS\nKCoqolCTkgOaw2F2v7v0UrP68/hx24nkQvz732ae+MKF0K6d7TTiC9UW+fbt22nRogV33XUX8fHx\nTJw4keLi4krn7Nixg8jIyIqPIyIiKCgo8E1aqTX165tNtcrKzFBLWZntRHI+PvoIRo+GtDS45hrb\nacRXqp1+WFpayvr165kxYwa9evXioYce4vnnn+epp56qdN7pd1QdZ7mLkpycXPFzp9OJU1vv+bWL\nLoL33oPBg+G228wq0Isusp1KPLVkiVm1+8EH8Mtf2k4jnnK5XLhcrnP6PdVOP9y1axe9e/dm+/bt\nAHz22Wc8//zzLFq0qOKc++67D6fTyejRowGIiYnhk08+oVWrVpXfSNMPA9bRoyeHWNLSIDTUdiKp\nycKFcPfdsGCB2UtFAtcFTz+84ooriIyMZMuWLQCsWLGCLl26VDpnyJAhzJ07F4CsrCyaNWtWpcQl\nsDVsCP/6l9mb5cYbYd8+24mkOrNmmU2wFi1SidcVNS4I2rBhA/fccw8lJSVERUXxxhtvMH/+fACS\nft4u7cEHH2Tp0qU0atSIOXPmEB8fX/WNdEUe8MrLzcObly83U9iuusp2IjlVeTk8/rgZSsnIgOho\n24nEG7SNrXid220ezPuXv8D8+WYfa7Hv6FFzU/qHH8xUw8svt51IvEUrO8XrHA7zgN65c+HWW2Hm\nTNuJJC/P7JlSrx6sWKESr4tU5HJebrwRVq+GGTPMHGU9Ms6OhQvNZmdjxpiNzxo2tJ1IbFCRy3mL\njjYbbR04AL16wcaNthPVHaWl8Nhj8MADZkz8d7/T3il1mYpcLkiTJuZK8NFH4YYbzKZb5eW2UwW3\nzZvhV7+CDRtg/Xro08d2IrFNRS4XzOEwN9qyssymTImJ8P33tlMFn9JSc5P5uuvMQp+MDI2Hi6Ei\nF6+JioJVq0zRXHMNvPii9mnxlk2bzOrMZctgzRqYNEmP5ZOT9FdBvCokxDx55osvzAyKa66Bzz+3\nnSpw7dtnZgn162cezbZ8ObRpYzuV+BsVufhEVBQsXWoe7DxiBNx+O/y804N4oKwMUlIgJsY8mu0/\n/9FVuJyd/lqIzzgcZo+Wb74xxd6zJ0yZArt3207mv9xus6AnPh7efdcMpaSkmO0RRM5GRS4+16SJ\neVjF5s2mqGJizCPHVOgnlZfD++9DXJx5AMS0aeByQY8etpNJINASfal1330Hzz9vtsgdPRoeeaTu\n7gtSUmJ2lHzhBWjQwHyBGzxYc8LlJC3RF7/Urp3Zoe+bb8z0ud69YfhwWLmy7sxBLyiAP/7RbDz2\nxhvw7LNmNsqQISpxOXe6IhfrDh+GN9+E2bOhqAjuusvM0Lj6atvJvOvYMXMDeO5c+PhjGDcO7r8f\nTnsMrkgl2v1QAk5OjrlCnTcPYmPNlfqQIRARYTvZ+SktNaU9b565idm9O4wda/ZGadLEdjoJBCpy\nCVhHj5qVix9+aPY+b9cObrkFbr7ZlKE/T8PbudM8K3PZMjPvu21bU9wjR0J4uO10EmhU5BIUjh83\nK0YXLDDPody92+w1ct115oiPNzcKbXC7zc3b7GxzrFxpxr9vuAFuugkGDNADOOTCqMglKO3aZYr9\n00/hk08gNxc6dIBu3U4eHTuaq19vbevqdpsr7dzck8eGDeYGZWgoXHut2QGyXz/zY0i1jzUX8ZyK\nXOqEI0fMXiQbN8JXX5lj2zbYsQPCwsz4emSkmSHTuLEZm27c2Bz165tx7FOPgwfhp5/MsXu3+fG/\n/4VGjaB9+5NHt26mtFu3tv1fQIKZ14q8TZs2NG3alPr169OgQQOys7Mrve5yubjlllto164dAMOH\nD+fJJ5885zAi3lReboo4P98ce/eakj50yBwHD5pzQkJOHvXrm4Jv0cIU/+WXm5+Hh5svCiK1zZPu\n9OgbQIfDgcvlonnz5mc9p1+/fqSnp59bQhEfqlcPWrUyR8+ettOI+I7H9/5r+oqgq20RETs8KnKH\nw0H//v3p2bMns2fPPuPrmZmZxMbGkpiYyKZNm7weVEREzsyjoZXVq1fTunVrdu/ezY033khMTAx9\n+/ateD0+Pp78/HxCQ0NZsmQJQ4cOZcuWLT4LLSIiJ3lU5K1/vi3fokULhg0bRnZ2dqUib3LKErWB\nAwdy//33s3fv3ipj6snJyRU/dzqdOJ3OC4guIhJ8XC4XLpfrnH5PjbNWiouLKSsro0mTJhw+fJgB\nAwYwdepUBgwYUHFOYWEhLVu2xOFwkJ2dzciRI8nLy6v8Rpq1IiJyzrwya6WwsJBhw4YBUFpayrhx\n4xgwYAApKSkAJCUlkZaWxsyZMwkJCSE0NJTU1FQvxBcREU9oQZCIiB/TfuQiInWAilxEJMCpyEVE\nApyKXERE47iEAAAFiklEQVQkwKnIRUQCnIpcRCTAqchFRAKcilxEJMCpyEVEApyKXEQkwKnIRUQC\nnIpcRCTAqchFRAKcilxEJMCpyEVEApyKXEQkwKnIRUQCnIpcRCTAqchFRAJcjUXepk0bunfvTlxc\nHNdee+0Zz5k8eTLt27cnNjaWnJwcr4cUEZGzq7HIHQ4HLpeLnJwcsrOzq7yekZHB1q1byc3NZdas\nWUyaNMknQf2dy+WyHcFngvlzA31+gS7YPz9PeDS0Ut0TnNPT0xk/fjwACQkJFBUVUVhY6J10ASSY\n/zIF8+cG+vwCXbB/fp7w6Iq8f//+9OzZk9mzZ1d5fceOHURGRlZ8HBERQUFBgXdTiojIWYXUdMLq\n1atp3bo1u3fv5sYbbyQmJoa+fftWOuf0K3aHw+HdlCIicnbuc5CcnOz+61//WunXkpKS3PPmzav4\nuGPHju5du3ZV+b1RUVFuQIcOHTp0nMMRFRVVYzdXe0VeXFxMWVkZTZo04fDhw3z00UdMnTq10jlD\nhgxhxowZjB49mqysLJo1a0arVq2q/Flbt26t7q1EROQ8VVvkhYWFDBs2DIDS0lLGjRvHgAEDSElJ\nASApKYnExEQyMjKIjo6mUaNGzJkzx/epRUSkgsNd3ZQUERHxe7W2svO9996jS5cu1K9fn/Xr19fW\n2/rc0qVLiYmJoX379rzwwgu243jVhAkTaNWqFd26dbMdxSfy8/P59a9/TZcuXejatSuvvPKK7Uhe\ndfToURISEujRowedO3fm8ccftx3J68rKyoiLi2Pw4MG2o3idJ4sxK5zLzc4LsXnzZve3337rdjqd\n7nXr1tXW2/pUaWmpOyoqyr19+3Z3SUmJOzY21r1p0ybbsbzm008/da9fv97dtWtX21F8YufOne6c\nnBy32+12Hzx40N2hQ4eg+v/ndrvdhw8fdrvdbvfx48fdCQkJ7lWrVllO5F3/+7//6x47dqx78ODB\ntqN4XZs2bdx79uzx6NxauyKPiYmhQ4cOtfV2tSI7O5vo6GjatGlDgwYNGD16NAsWLLAdy2v69u3L\npZdeajuGz1xxxRX06NEDgMaNG9OpUyd++OEHy6m8KzQ0FICSkhLKyspo3ry55UTeU1BQQEZGBvfc\nc0+1ixYDmaeflzbNugBnWgy1Y8cOi4nkfOXl5ZGTk0NCQoLtKF5VXl5Ojx49aNWqFb/+9a/p3Lmz\n7Uhe8/DDD/Piiy9Sr15w1lhNizFPVeOCoHNx4403smvXriq//uyzzwblGJYWPgWHQ4cOMWLECKZP\nn07jxo1tx/GqevXq8eWXX7J//35uuukmXC4XTqfTdqwLtmjRIlq2bElcXFzQLtH3ZDHmCV4t8uXL\nl3vzj/N74eHh5OfnV3ycn59PRESExURyro4fP87w4cO57bbbGDp0qO04PhMWFsagQYNYu3ZtUBR5\nZmYm6enpZGRkcPToUQ4cOMAdd9zB3LlzbUfzmtatWwPQokULhg0bRnZ29lmL3Mr3JMEyntWzZ09y\nc3PJy8ujpKSE+fPnM2TIENuxxENut5u7776bzp0789BDD9mO43U//fQTRUVFABw5coTly5cTFxdn\nOZV3PPvss+Tn57N9+3ZSU1O5/vrrg6rEi4uLOXjwIEDFYszqZo/VWpF/8MEHREZGkpWVxaBBgxg4\ncGBtvbXPhISEMGPGDG666SY6d+7MqFGj6NSpk+1YXjNmzBj69OnDli1biIyMDLrFXqtXr+btt9/m\n448/Ji4ujri4OJYuXWo7ltfs3LmT66+/nh49epCQkMDgwYO54YYbbMfyiWAb5iwsLKRv374V/+9u\nvvlmBgwYcNbztSBIRCTABeftXhGROkRFLiIS4FTkIiIBTkUuIhLgVOQiIgFORS4iEuBU5CIiAU5F\nLiIS4P4/8US69Y43sH0AAAAASUVORK5CYII=\n", + "png": "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\n", "text": [ - "" + "" ] }, { "metadata": {}, "output_type": "display_data", - "png": "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\n", + "png": "iVBORw0KGgoAAAANSUhEUgAAAW4AAAEKCAYAAAAyx7/DAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlclVXCB/DfZVGSRcQFFVQUUxYRIc3cr6OY6Tgu2aIk\npqVjVtM21dt8JsE2bQ8ze9/RSbNIa6ZMUPJ1yes6vGq4g5oICrgiggIKcnneP06SFBfufXgu5z6X\n3/fz8TOKd/ldx34eznOecwyKoiggIiLdcJEdgIiIbMPiJiLSGRY3EZHOsLiJiHSGxU1EpDMsbiIi\nnWFxExHpDIubpOnatStOnz6NRx99FJ9//jkAYP369Rg8eDBatWqFDh06YNasWSgpKbH4GoWFhZg4\ncSK8vLwQFBSEVatW2ZThq6++QpcuXeDl5YWJEyfiypUrFh+7ePFi9O3bFx4eHpgxY0aN30tLS0NM\nTAxat26Ndu3a4cEHH8T58+erf//WZ1yxYsXvnktkKxY3SWcwGGAwGAAAV69exbx583Du3DlkZmYi\nPz8fL774osXnPvnkk/Dw8MDFixeRlJSEJ554AhkZGVa979GjRzFnzhwkJSXhwoULaNGiBebOnWvx\n8QEBAXj11Vcxc+bM3/1eUVER5syZg9OnT+P06dPw9vauUdC3Pt+t/yVqCDfZAajpqq3EpkyZUv1z\nDw8PzJo1C/Hx8bU+v7S0FN999x2OHj2KFi1aYNCgQRg/fjy++OILLFiwAADQqlUrrF+/HgMHDvzd\n85OSkvCnP/0JgwcPBgC8/vrrCA0NRWlpKTw9PX/3+IkTJwIA9u3bh7y8vBq/N3r06Bq/fvLJJ2E0\nGn/3eRVFYXlTg7G4SZpTp04BAJYvX27xMdu2bUOvXr1q/b0TJ07Azc0N3bt3r/5aZGQkTCZT9a/r\nmvrIyMjAoEGDqn/drVs3NG/eHCdOnEBUVJTF51mzS8T27dtr5L79M06fPr3e5xPVhcVNDmvTpk1Y\nuXIl9uzZU+vvl5SUwMfHp8bXvL29ce3aNatev6SkBC1btqzxNR8fn3qfX9+I+dChQ3j99deRnJxs\nVQ4iW3GOmxxSWloaYmNj8e2339YYUd/Oy8sLV69erfG14uJieHt7W/UeXl5eKC4utvn5dY24T548\niTFjxmDRokU1RvNEWmJxk8PZv38/xo8fjxUrVmD48OEWH9ejRw9UVlbi5MmT1V87ePCgxamV3woP\nD8fBgwerf52VlYWKigr06NGjzudZGnGfPn0aMTExmDdvHmJjY63KQKQGi5scypEjRzB69GgsXrwY\nY8aMqfOxnp6emDRpEubNm4eysjLs3LkTKSkpmDZtWvVjXFxcsH379lqfHxsbi5SUFOzcuROlpaV4\n9dVXcf/999d6YRIAzGYzbty4gcrKSpjNZpSXl8NsNgMA8vPz8Yc//AFPPfUUZs+erfLTE1lJIXIg\nM2bMUFxdXRUvL6/qH7169bL4+MLCQmXChAmKp6en0qVLF2XVqlXVv3fmzBnFx8dHKSwstPj8r776\nSuncubPi6empTJgwQbly5YrFx8bHxysGg6HGj/nz5yuKoigJCQmKwWCokdvb21vFnwBR/QyKYnnC\nbubMmVi/fj3atWuHw4cPAwD+9a9/ISEhAceOHcPevXsRHR3daP/IENkiKSkJGRkZePPNN2VHIdJU\nncW9Y8cOeHl5IS4urrq4jx07BhcXF/z5z3/G+++/z+ImImpkdS4HHDJkCHJycmp8LSQkxJ55iIio\nHrw4SUSkMyxuIiKdsdudk927d0dWVpa9Xp6IyCkFBwfXuDehNg0acddxXRNZWVlQFMVpf8THx0vP\nwM/Hz8bP53w/rBnw1lncU6ZMwcCBA3H8+HF06tQJn332Gb7//nt06tQJaWlpGDt2LO677z7bG5+I\niFSrc6rE0qb0EyZMsEsYIiKqHy9OqvTbvZadjTN/Pmf+bAA/X1NQ5w04DXrhXzaNJyIi61nTnRxx\nExHpDIubiEhnWNxERDrD4iYi0hkWNxGRzrC4iYh0hsVNRKQzLG4iIp2x2+6ARLIpCnDsGLBxI7Br\nF3D6NJCbC1RWAi1aAK1aAZGRQFQUcO+9AM8IIb3gnZPkdK5dA1asABYvBm7cAEaNAoYNA4KDgU6d\nAHd3oKwMKCgADhwAfvoJSE4G2rcHpk8HZs0SxU4kgzXdyeImp1FRASxaBCxYAIwYAfzlL8CgQYDB\nUP9zzWZg2zZgyRJg927gv/4LmDMHaNbM/rmJbsfipiZjxw5g9mwgKAhITAR69FD/Wvv3A3/7G3D2\nLPD550CfPprFJKoX9yohp1dVBbz1FvDAA2KknZrasNIGxJx3airw/PNimuXtt8V8OZGj4IibdKuk\nBJgyBSgsBL7+GggM1P49cnOBSZPEhctly4DmzbV/D6LbccRNTuvKFSAmBmjbFjCZ7FPagLiYuW0b\ncP06MHIkUFxsn/chsgWLm3Tn4kXAaAQGDAD++U+xSsSeWrQAvvlGLB0cPVqsWiGSiVMlpCslJcDw\n4WLu+Y03rFsxohVFEStNMjOBH34APD0b772p6WjwVMnMmTPh7++PiIiI6q8VFhYiJiYGPXr0wKhR\no1BUVKRNWqJ63LwJTJ4sRr6NXdqAeL9PPxUrVx55RFwYJZKhzuKeMWMGNmzYUONrCxcuRExMDE6c\nOIERI0Zg4cKFdg1IdMvTTwNubsB//3fjl/YtLi7A0qXi5p34eDkZiOos7iFDhqBVq1Y1vpacnIzp\n06cDAKZPn47vv//efumIfvHFF8DWrcCqVaK8ZWreHPj2W5Hpm2/kZqGmyeb/BC5cuAB/f38AgL+/\nPy5cuKB5KKLbHT0q1lT/+CPg7S07jdCuHbBmjZhr79cP6NpVdiJqShq0qsRgMMAg63tWahLKy4GH\nHgLeeQe47VKLQ4iKAl5+GZg2TWxcRdRYbB5x+/v74/z582jfvj3OnTuHdu3aWXxsQkJC9c+NRiOM\nRqOajNSEvfEG0L078OijspPU7vnnxQqThQuBv/9ddhrSI5PJBJPJZNNz6l0OmJOTg3HjxuHw4cMA\ngJdeegmtW7fGyy+/jIULF6KoqKjWC5RcDkgNtX+/2G714EGgQwfZaSzLzRWj7127gJ49ZachvWvw\nJlNTpkzBtm3bUFBQAH9/f7z22msYP348HnzwQZw5cwZBQUH45ptv4Ovrq+rNiSwxm4G+fYFnnnHc\n0fbtPvoISEkBNm+Wt+KFnAN3ByTd+sc/gC+/FLeb66EIKyvFRcoXXwSmTpWdhvSMxU26VFwsphx+\n+EFMQehFWprYkOrnn3lXJanHTaZIl954A/jjH/VV2gBwzz3A0KFi2oTInjjiJoeSmysOLjh6VBwl\npjcnT4oCP3YMaNNGdhrSI06VkO488QTQsqVYXqdXc+cCHh7ABx/ITkJ6xOImXTl9GoiOBo4f1/do\n9fx5ICxM7CL4y03GRFbjHDfpyoIF4txIPZc2IKZ4pkwRZ18S2QNH3OQQzp8HQkPFigy9FzcAZGeL\n5YFZWWLqh8haHHGTbixZAjz8sHOUNiA2nRo9WuzfTaQ1jrhJuuvXxeEE27c71y3jhw4B990H5OTY\n/3g1ch4ccZMuJCWJaQVnKm0A6N0bCA4GkpNlJyFnw+ImqRQFWLxY7EnijObOFdNARFpicZNU6enA\n1avAiBGyk9jHpEniZqLMTNlJyJmwuEmqZcuAmTPFWY7OqFkz4PHHxaZZRFrhxUmSpqwMCAwUF/EC\nA2WnsZ+ffwYGDwby8+Wfl0mOjxcnyaF9+y0wYIBzlzYA3Hkn0K0bsHGj7CTkLFjcJM1XX4nzGpuC\nuDhg5UrZKchZcKqEpCgoEEvlzp5tGntXX74sRt1nzvBOSqobp0rIYX33nbizsCmUNgC0bg0MGyaO\nNyNqKBY3SbF6tbjFvSm5/37xDxZRQ6ku7sTERERERKBXr15I5DZoZIOLF8X67fvuk52kcY0bB2zZ\nApSWyk5CeqequI8cOYJly5Zh7969OHjwINatW4esrCyts5GTWr8eiIkRhw00JX5+QP/+wIYNspOQ\n3qkq7mPHjqF///7w8PCAq6srhg0bhu/4PSBZKSVFjD6bokmTOF1CDaequHv16oUdO3agsLAQZWVl\nWL9+PfLy8rTORk7oxg0xXTBmjOwkcowbB/zv/wJms+wkpGeq7uMKCQnByy+/jFGjRsHT0xNRUVFw\nqeWe5YSEhOqfG41GGI1GtTnJSZhMQESE8+y7bauAAKBDB2DfPjFtQmQymWAymWx6jibruP/2t7+h\nc+fOmDNnzq8vzHXcVIu//EUU1yuvyE4iz4svAl5eQHy87CTkiOy6jvvixYsAgDNnzmDNmjWYOnWq\n2peiJmTLFnFhsikbPZoXKKlhVI+4hw4disuXL8Pd3R0ffvghhg8fXvOFOeKm3zh7FujVC7h0CXB1\nlZ1GnvJyoG1bcS5l69ay05CjsaY7Ve9Vtn37drVPpSbqxx8Bo7FplzYANG8ODBokjmqbOFF2GtIj\n3jlJjWbLFuc9MMFWQ4cC27bJTkF6xeKmRvPjjyzuW4YNEyNuIjW4OyA1irw8ICpK3O5uMMhOI19F\nhZjfzs0FfH1lpyFHwt0ByWHs3g0MHMjSvqVZM+Duu4Fdu2QnIT1icVOjuFXc9KvBg4GdO2WnID1i\ncVOjYHH/Xv/+wN69slOQHnGOm+yurEysWy4oAO64Q3Yax3HpkjiPsrDQeU+5J9txjpscwsGDQEgI\nS/u32rYVW72eOCE7CekNi5vsLj0diI6WncIx3X03sGeP7BSkNyxusrv9+1nclvTrx+Im27G4ye44\n4rasTx/g0CHZKUhveHGS7KqiQtxgcvky57hrc+sC5ZUrXONOAi9OknQZGUDXrixtS9q2FX82ubmy\nk5CesLjJrjIyxFauZFnv3sDhw7JTkJ6wuMmuMjKAsDDZKRxb796c5ybbsLjJrljc9evVCzhyRHYK\n0hMWN9lVRgYQGio7hWPr2RP4+WfZKUhPuKqE7Ka8HGjZEiguFqe+UO0KC4Fu3biyhASuKiGpsrOB\nTp1Y2vXx8wPc3MTSQCJrqC7uBQsWIDw8HBEREZg6dSrKy8u1zEVOICsLCA6WnUIf7ryTe5aQ9VQV\nd05ODpYuXYr09HQcPnwYZrMZq1ev1job6dypU2IKgOrXowdw/LjsFKQXqk559/Hxgbu7O8rKyuDq\n6oqysjIEBARonY107tQpjritFRws/ryIrKFqxO3n54cXXngBnTt3RseOHeHr64uRI0dqnY10jiNu\n63XpApw+LTsF6YWqEXdWVhY++ugj5OTkoGXLlnjggQeQlJSE2NjYGo9LSEio/rnRaITRaGxIVtKZ\nrCwWt7U6dwbOnJGdgmQwmUwwmUw2PUfVcsCvv/4amzZtwrJlywAAX3zxBdLS0vDJJ5/8+sJcDtjk\n+fiIMuIp5vU7dQoYPpyjbrLjcsCQkBCkpaXh+vXrUBQFmzdvRhhvj6PbXLsGmM1iHTfVLzAQOHcO\nqKyUnYT0QFVxR0ZGIi4uDn379kXv3r0BALNnz9Y0GOlbfj4QEMAbSqzVrJnYKTA/X3YS0gPeOUl2\nsXkz8OabwNatspPoR//+QGIicM89spOQTLxzkqTJzxff/pP1/P2B8+dlpyA9YHGTXdyaKiHrtW/P\n4ibrsLjJLi5eFCNIsh5H3GQtFjfZRUGBuNhG1mvfHrhwQXYK0gMWN9lFQQHQpo3sFPrCqRKyFoub\n7ILFbbvWrYHLl2WnID1gcZNdsLht16qVOEyBqD4sbrKLS5fECJKsx+Ima7G4SXM3b4pjy7y8ZCfR\nF19foKhIdgrSAxY3ae7aNbHBFG93t423N3DjhviHj6guLG7S3LVrooTINgaDGHVzuoTqw+ImzV29\nyuJWy8cHKCmRnYIcHYubNHdrqoRs16IFUFYmOwU5OhY3aY5TJeqxuMkaLG7SXFmZKCCyHYubrMHi\nJs2VlwPNm8tOoU8sbrIGi5s0V14uTnQh27G4yRosbtJcRQVH3Go1by7WchPVhcVNmuOIWz1XV3HI\nMlFdVBX38ePHERUVVf2jZcuWWLRokdbZSKc4x60ei5us4abmST179sT+/fsBAFVVVQgICMDEiRM1\nDUb6ZTYDbqr+ZpGbG4ub6tfgqZLNmzcjODgYnTp10iIPkd0lJMhOYJmrK1BZKTsFOboGF/fq1asx\ndepULbIQNYr582UnsCwzEzh5UnYKcnQN+oa2oqICKSkpePvtt2v9/YTbhjZGoxFGo7Ehb0fUIAkJ\nv5b2rZ0L4+MdawT+n//wwm5TYzKZYDKZbHqOQVEURe0brl27Fp9++ik2bNjw+xc2GNCAlyYde+cd\ncQLOO+/ITlI7gwFw1L+aTzwBREQAc+fKTkKyWNOdDZoqWbVqFaZMmdKQlyBqdPHxshNYZjaLeW6i\nuqgu7tLSUmzevBmTJk3SMg85AYMBqKqSncIyR5oa+S2uyCFrqP4r4unpiYKCAi2zkJNo1kzcPUm2\nq6zkiJvqxzsnSXPNm7O41eJUCVmDxU2aa95c3D1Jtrt5E3B3l52CHB2LmzTXrBmLW63r17mXOdWP\nxU2a41SJejyEgqzB4ibNeXhwa1K1WNxkDRY3ac7bW5w7SbZjcZM1WNykORa3eixusgaLmzTn7Q1c\nvSo7hT6VlLC4qX4sbtKcjw9H3GoVFQG+vrJTkKNjcZPmOFWiTnm5WMft6Sk7CTk6Fjdp7o47RAFx\nSaBtioqAVq1+3XKWyBIWN2nOYAD8/IDCQtlJ9OXKFU6TkHVY3GQXbdqIPbnJeleuiBE3UX1Y3GQX\nbduyuG3F4iZrsbjJLjjitt2FC4C/v+wUpAcsbrKLNm2AS5dkp9CX8+eB9u1lpyA9YHGTXbRpA1y8\nKDuFvrC4yVosbrKLjh2Bs2dlp9AXTpWQtVjcZBeBgUB+vuwU+sIRN1lLdXEXFRVh8uTJCA0NRVhY\nGNLS0rTMRToXEMDittW5cyxuso7qw4KfeeYZjBkzBv/+979RWVmJ0tJSLXORzrG4baMoQG4u0Lmz\n7CSkBwZFURRbn1RcXIyoqCicOnXK8gsbDFDx0uQkqqrEgQrXrokTcahuFy8CoaHA5cuyk5Bs1nSn\nqqmS7OxstG3bFjNmzEB0dDRmzZqFsrIyVSHJObm4AB06cNRtrTNnONom66maKqmsrER6ejoWL16M\nfv364dlnn8XChQvx2muv1XhcQkJC9c+NRiOMRmNDspLOdOsGZGeL/6W6nT4NdOkiOwXJYDKZYDKZ\nbHqOqqmS8+fPY8CAAcjOzgYA7Ny5EwsXLsS6det+fWFOlTR5jz0G9O8PzJ4tO4nj++ADUd6JibKT\nkGx2mypp3749OnXqhBMnTgAANm/ejPDwcDUvRU4sOBio4zII3SYnhyNusp7qVSUff/wxYmNjUVFR\ngeDgYCxfvlzLXOQEunUDvvtOdgp9+PlnYNQo2SlIL1QXd2RkJPbu3atlFnIy3bpxxG2tEyeAHj1k\npyC9UDXHbdULc467ySssBLp2FSe78FQXy8rLgZYtxdJJd3fZaUg2u81xE1nDz0+s5eaeJXU7dUrM\nb7O0yVosbrKrsDAgI0N2CsfGaRKyFYub7IrFXb+MDCAkRHYK0hMWN9kVi7t+hw4BERGyU5CesLjJ\nrljc9Tt8GOjdW3YK0hOuKiG7KigQN+JcuSL2L6GayssBX1+x8oabcRHAVSXkANq0EUvdftkdgX4j\nM1Osd2dpky1Y3GR30dFAerrsFI7p4EHOb5PtWNxkd1FRLG5L9u0D+vaVnYL0hsVNdscRt2V79gB3\n3y07BekNL06S3eXnA5GRwKVLvPX9dhUV4sLkxYuAl5fsNOQoeHGSHEJAANCihdgBj3516BDQvTtL\nm2zH4qZGMWgQsHu37BSOhdMkpBaLmxrFwIEs7t/avVucEERkKxY3NQoWd02KAmzbBgwbJjsJ6RGL\nmxpF797iTMUrV2QncQw5OUBlJXDnnbKTkB6xuKlRuLsDAwaIUSaJP4ehQ7nKhtRhcVOjGTEC2LJF\ndgrHsH07p0lIPdVnTgYFBcHHxweurq5wd3fHnj17tMxFTmjkSGDaNNkp5FMUYOtW4IUXZCchvVJd\n3AaDASaTCX5+flrmISfWpw9w4YI4yqxjR9lp5Pn5Z+DmTbHlLZEaDZoq4Z2RZAtXV8BoBH78UXYS\nuTZsAEaP5vw2qae6uA0GA0aOHIm+ffti6dKlWmYiJ3bvvcAPP8hOIdet4iZSS/VUya5du9ChQwdc\nunQJMTExCAkJwZAhQ2o8JiEhofrnRqMRRqNR7duRkxg7FnjlFbEUzk313z79un4d2LkT+Oor2UnI\nUZhMJphMJpueo8kmU/Pnz4eXlxdeuO1qCzeZIkvuugv44IOmuapiwwbgjTdEeRPVxm6bTJWVleHa\ntWsAgNLSUmzcuBER3A2erDRuHJCSIjuFHGvWABMmyE5BeqdqxJ2dnY2JEycCACorKxEbG4tXXnml\n5gtzxE0W/PQTMGUKcPx407pAZzaL1TT/+Y84royoNtZ0p6pZxq5du+LAgQOqQhFFR4u9qJva6ea7\ndoniZmlTQ/HOSWp0BgPw0EPA11/LTtK4vvsOmDRJdgpyBjwBh6RITwceeAA4ebJpTJeYzUCXLsDG\njbzxhurGE3DIYUVFiRty9u2TnaRxbN0K+PuztEkbLG6SwmAAHn4YWLVKdpLG8cUX3KeFtMOpEpLm\n5ElxwEJeHtCsmew09lNaCgQGAseOiVE3UV04VUIOrXt3IDwcSE6WncS+1qwR/0CxtEkrLG6S6vHH\ngX/+U3YK+/qf/wFmzpSdgpwJp0pIquvXxTTC/v1A586y02jv0CFgzBhxVFlT3JuFbMepEnJ4d9wB\nPPII8OmnspPYx5IlwJ//zNImbXHETdJlZQH33CNGpZ6estNop7gYCAoCMjKADh1kpyG94IibdCE4\nGBg8GPj8c9lJtLV0qdh3m6VNWuOImxzC9u3iQuWxY4CLEwwnysvFniTr14sj24isxRE36caQIUDL\nlmI/D2ewciUQGcnSJvvgiJscxrp14nScgwf1Peo2m4GQELHMcehQ2WlIbzjiJl0ZO1asMvn2W9lJ\nGubLL4H27cV3EUT2wBE3OZTUVOCll8T6Zz2Oum/cAHr2FGdKDhokOw3pEUfcpDv33SfmuvW6wuTT\nT8XcNkub7IkjbnI4e/cC48eLo828vWWnsV5RkRhtb9kC9OolOw3pld1H3GazGVFRURg3blxDXoao\nhn79gJgY4K23ZCexzd//Lg4CZmmTvTXoRtzExESEhYVVn/hOpJW33hLnUc6YAfToITtN/fbtA/79\nb3GXJJG9qR5x5+XlITU1FY8//jinREhzAQHAq68Cjz0GVFXJTlM3sxmYMwd4+23Az092GmoKVBf3\nc889h3fffRcuerz0T7rw9NOitD/5RHaSur3/vpiLj4uTnYSaClWtu27dOrRr1w5RUVEcbZPduLoC\nn30GzJ8vTstxROnpwHvvAStWNI1Dj8kxqJrj3r17N5KTk5GamoobN27g6tWriIuLw8qVK2s8LiEh\nofrnRqMRRqOxIVmpCerZE0hIAB58ENi9G/DwkJ3oV2VlwNSpwEcfiRPcidQwmUwwmUw2PafBywG3\nbduG9957DykpKTVfmMsBSSOKAjz0ENCqlThNxhEoCjB9upjK+fJL2WnImTTaDTgGfo9IdmQwAMuW\nAVu3AsuXy04jvPcecOQI8I9/yE5CTRFvwCHdyMwEjEax896998rLsX49MGsW8H//B3TqJC8HOSfe\n8k5OJTRUbPs6bRrw009yMmzdCjz6qMjB0iZZWNykK4MGiemJsWPFrfGNaedOMdf+r3+Jo9aIZGFx\nk+5MmCCOBRs7FrDxYrxq69cDEycCSUliuoZIJhY36dK4ccDXX4tlgsuWiVUe9qAoQGKimNNOSRF7\nqBDJxouTpGuZmcDkyUDfvsCSJdqeEn/5MvDUU8Dhw+J0nqAg7V6byBJenCSnFxoK7NkjlgyGhwNr\n1jR89K0o4nV69xYn2ezZw9Imx8IRNzmNLVvE/iYdO4pTdGJibLsNXVGAjRuBefPEXZEff8z5bGp8\n1nQni5ucys2b4vScxESxa19srCjwu+4Se5/8VkWFmAr5/ntx3JiHhyjuBx7Q59FppH8sbmqyFAXY\ntg1Yu1aMos+cEfuJdO4MuLuLEXVBgThlp2tXcUNPbCwQHc3NokguFjfRL65cEeWdmytG4i1aAL6+\nYl68RQvZ6Yh+xeImItIZriohInJCLG4iIp1hcRMR6QyLm4hIZ1jcREQ6w+ImItIZFjcRkc6wuImI\ndEZVcd+4cQP9+/dHnz59EBYWhldeeUXrXEREZIGq4vbw8MDWrVtx4MABHDp0CFu3bsXOnTu1zubQ\nTI119Iokzvz5nPmzAfx8TYHqqZIWv2zwUFFRAbPZDD8/P81C6YGz/+Vx5s/nzJ8N4OdrClQXd1VV\nFfr06QN/f38MHz4cYWFhWuYiIiILVBe3i4sLDhw4gLy8PGzfvp3/ChIRNRJNdgd8/fXXcccdd+Cv\nf/1r9de6d++OrKyshr40EVGTEhwcjJMnT9b5GDc1L1xQUAA3Nzf4+vri+vXr2LRpE+Lj42s8pr43\nJiIidVQV97lz5zB9+nRUVVWhqqoK06ZNw4gRI7TORkREtbDbQQpERGQfjXLn5Pvvvw8XFxcUFhY2\nxts1mhdffBGhoaGIjIzEpEmTUFxcLDtSg23YsAEhISG488478fbbb8uOo6nc3FwMHz4c4eHh6NWr\nFxYtWiQ7kl2YzWZERUVh3LhxsqNorqioCJMnT0ZoaCjCwsKQlpYmO5JmFixYgPDwcERERGDq1Kko\nLy+3+Fi7F3dubi42bdqELl262PutGt2oUaNw9OhRHDx4ED169MCCBQtkR2oQs9mMp556Chs2bEBG\nRgZWrVqFzMxM2bE04+7ujg8//BBHjx5FWloaPvnkE6f6fLckJiYiLCwMBic89fiZZ57BmDFjkJmZ\niUOHDiE0NFR2JE3k5ORg6dKlSE9Px+HDh2E2m7F69WqLj7d7cT///PN455137P02UsTExMDFRfwR\n9u/fH3nc3JwnAAADWklEQVR5eZITNcyePXvQvXt3BAUFwd3dHQ8//DDWrl0rO5Zm2rdvjz59+gAA\nvLy8EBoairNnz0pOpa28vDykpqbi8ccfd7ozX4uLi7Fjxw7MnDkTAODm5oaWLVtKTqUNHx8fuLu7\no6ysDJWVlSgrK0NAQIDFx9u1uNeuXYvAwED07t3bnm/jED777DOMGTNGdowGyc/PR6dOnap/HRgY\niPz8fImJ7CcnJwf79+9H//79ZUfR1HPPPYd33323ekDhTLKzs9G2bVvMmDED0dHRmDVrFsrKymTH\n0oSfnx9eeOEFdO7cGR07doSvry9Gjhxp8fEN/n83JiYGERERv/uRnJyMBQsWYP78+dWP1eMIwNLn\nS0lJqX7Mm2++iWbNmmHq1KkSkzacM35rXZuSkhJMnjwZiYmJ8PLykh1HM+vWrUO7du0QFRWly//W\n6lNZWYn09HTMnTsX6enp8PT0xMKFC2XH0kRWVhY++ugj5OTk4OzZsygpKUFSUpLFx6taDni7TZs2\n1fr1I0eOIDs7G5GRkQDEt3B33XUX9uzZg3bt2jX0bRuNpc93y4oVK5CamootW7Y0UiL7CQgIQG5u\nbvWvc3NzERgYKDGR9m7evIn7778fjzzyCCZMmCA7jqZ2796N5ORkpKam4saNG7h69Sri4uKwcuVK\n2dE0ERgYiMDAQPTr1w8AMHnyZKcp7n379mHgwIFo3bo1AGDSpEnYvXs3YmNja3+C0kiCgoKUy5cv\nN9bbNYoffvhBCQsLUy5duiQ7iiZu3rypdOvWTcnOzlbKy8uVyMhIJSMjQ3YszVRVVSnTpk1Tnn32\nWdlR7M5kMil//OMfZcfQ3JAhQ5Tjx48riqIo8fHxyksvvSQ5kTYOHDighIeHK2VlZUpVVZUSFxen\nLF682OLjGzzitpYzfhv+9NNPo6KiAjExMQCAAQMGYMmSJZJTqefm5obFixfj3nvvhdlsxmOPPeY0\nV+0BYNeuXfjyyy/Ru3dvREVFARBLsEaPHi05mX04439zH3/8MWJjY1FRUYHg4GAsX75cdiRNREZG\nIi4uDn379oWLiwuio6Mxe/Zsi4/nDThERDrjfJeeiYicHIubiEhnWNxERDrD4iYi0hkWNxGRzrC4\niYh0hsVNRKQzLG4iIp35fygzPifnZAy7AAAAAElFTkSuQmCC\n", "text": [ - "" + "" ] }, { "metadata": {}, "output_type": "display_data", - "png": "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\nRU5ErkJggg==\n", + "png": "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\n", "text": [ - "" + "" ] } ], - "prompt_number": 155 + "prompt_number": 8 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "From a mathematical perspective these display the values that the multivariate gaussian takes for a specific sigma (in this case $\\sigma^2=1$. Think of it as taking a horizontal slice through the 3D surface plot we did above. However, thinking about the physical interpretation of these plots clarifies their meaning.\n", + "\n", + "The first plot uses mean and the covariance matrices $\n", + "\\mu =\\begin{bmatrix}2\\\\7\\end{bmatrix}, cov = \\begin{bmatrix}2&0\\\\0&2\\end{bmatrix}$. Let this be our current belief about the position of our dog in a field. In other words, we believe that he is positioned at (2,7) with a variance of $\\sigma^2=2$ for both x and y. The contour plot shows where we believe the dog is located with the '+' in the center of the ellipse. The ellipse shows the boundary for the $1\\sigma^2$ probability - points where the dog is quite likely to be based on our current knowledge. Of course, the dog might be very far from this point, as Gaussians allow the mean to be any value. For example, the dog could be at (3234.76,189989.62), but that has vanishing low probability of being true. Generally speaking displaying the $1\\sigma^2$ to $2\\sigma^2$ contour captures the most likely values for the distribution. An equivelent way of thinking about this is the circle/ellipse shows us the amount of error in our belief. A tiny circle would indicate that we have a very small error, and a very large circle indicates a lot of error in our belief. We will use this throughout the rest of the book to display and evaluate the accuracy of our filters at any point in time. \n", + "\n", + "The second plot uses mean and the covariance matrices $\n", + "\\mu =\\begin{bmatrix}2\\\\7\\end{bmatrix}, cov = \\begin{bmatrix}2&0\\\\0&12\\end{bmatrix}$. This time we use a different variance for x (2) vs y (12). The result is an ellipse. When we look at it we can immediately tell that we have a lot more uncertainty in the y value vs the x value. Our belief that the value is (2,7) is the same in both cases, but errors are different. This sort of thing happens naturally as we track objects in the world - one sensor has a better view of the object, or is closer, than another sensor, and so we end up with different error rates in the different axis.\n", + "\n", + "\n", + "The third plot uses mean and the covariance matrices $\n", + "\\mu =\\begin{bmatrix}2\\\\7\\end{bmatrix}, cov = \\begin{bmatrix}2&3\\\\1&2.5\\end{bmatrix}$. This is the first contour that has values in the off-diagonal elements of $cov$, and this is the first contour plot with a slanted ellipse. This is not a coincidence. The two facts are telling use the same thing. A slanted ellipse tells us that the x and y values are somehow **correlated**. We denote that in the covariance matrix with values off the diagonal. What does this mean in physical terms? Think of trying to park your car in a parking spot. You can not pull up beside the spot and then move sideways into the space because most cars cannot go purely sideways. $x$ and $y$ are not independent. This is a consequence of the steering system in a car. When your tires are turned the car rotates around its rear axle while moving forward. Or think of a horse attached to a pivoting exercise bar in a corral. The horse can only walk in circles, he cannot vary $x$ and $y$ independently, which means he cannot walk straight forward to to the side. If $x$ changes, $y$ must also change in a defined way. \n", + "\n", + "So when we see this ellipse we know that $x$ and $y$ are correlated, and that the correlation is \"strong\". I will not prove it here, but a 45 $^{\\circ}$ angle denotes complete correlation between $x$ and $y$, whereas $0$ and $90$ denote no correlation at all. Those who are familiar with this math will be objecting quite strongly, as this is actually quite sloppy language that does not adress all of the mathematical issues. They are right, but for now this is a good first approximation to understanding these ellipses from a physical interpretation point of view. The size of the ellipse shows how much error we have in each axis, and the slant shows how strongly correlated the values are.\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "###Kalman Filter Basics\n", + "\n", + "Let's say we are tracking an aircraft and we get the following data for the $x$ coordinate at time $t$=1,2, and 3 seconds. What does your intuition tell you the value of $x$ will be at time $t$=4 seconds?\n" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "scatter ([1,2,3],[1,2,3]);xlim([0,4]);ylim([0,4]);show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n", + "text": [ + "" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It appears that the aircraft is flying in a straight line because we can draw a line between the three points, and we know that aircraft cannot turn on a dime. The most reasonable guess is that $x$=4 at $t$=4. I will depict that below with a green square to depict the predictions." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "scatter ([1,2,3],[1,2,3]);xlim([0,5]);ylim([0,5])\n", + "plot([0,5],[0,5],'r')\n", + "scatter ([4], [4], c='g', marker='s',s=200)\n", + "show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nA8c27bZHjKyVAAAAAElFTkSuQmCC\n", + "text": [ + "" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If this is data from a Kalman filter, then each point has both a mean and variance. Let's try to show that by showing the approximate error for each point. Don't worry about why I am using a covariance matrix to depict the variance at this point, it will become clear in a few paragraphs." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "cov = array([[0.005,0], [0,12]])\n", + "sigma = sigma=[0.5,1.,1.5,2]\n", + "e1 = g.sigma_ellipses(cov, x=1, y=1, sigma=sigma)\n", + "e2 = g.sigma_ellipses(cov, x=2, y=2, sigma=sigma)\n", + "e3 = g.sigma_ellipses(cov, x=3, y=3, sigma=sigma)\n", + "g.plot_sigma_ellipses([e1, e2, e3], axis_equal=True,x_lim=[0,4],y_lim=[0,15])" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "axis_equal = False\n" + ] + }, + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n", + "text": [ + "" + ] + } + ], + "prompt_number": 11 } ], "metadata": {} diff --git a/gaussian.py b/gaussian.py index bbc6e96..1a2a76b 100644 --- a/gaussian.py +++ b/gaussian.py @@ -1,35 +1,12 @@ -import numpy as np import math +import numpy as np +import numpy.linalg as linalg import matplotlib.pyplot as plt -def _to_array(x): - """ returns any of a scalar, matrix, or array as a 1D numpy array - Example: - _to_array(3) == array([3]) - """ - try: - x.shape - if type(x) != np.ndarray: - x = np.asarray(x)[0] - return x - except: - return np.array(np.mat(x)).reshape(1) - -def _to_cov(x,n): - """ If x is a scalar, returns a covariance matrix generated from it - as the identity matrix multiplied by x. The dimension will be nxn. - If x is already a numpy array then it is returned unchanged. - """ - try: - x.shape - if type(x) != np.ndarray: - x = np.asarray(x)[0] - return x - except: - return np.eye(n) * x _two_pi = 2*math.pi + def gaussian(x, mean, var): """returns normal distribution for x given a gaussian with the specified mean and variance. All must be scalars @@ -71,6 +48,108 @@ def norm_plot(mean, var): ys = [gaussian(x,23,5) for x in xs] plt.plot(xs,ys) + +def sigma_ellipse(cov, x=0, y=0, sigma=1, num_pts=100): + """ Takes a 2D covariance matrix and generates an ellipse showing the + contour plot at the specified sigma value. Ellipse is centered at (x,y). + num_pts specifies how many discrete points are used to generate the + ellipse. + + Returns a tuple containing the ellipse,x, and y, in that order. + The ellipse is a 2D numpy array with shape (2, num_pts). Row 0 contains the + x components, and row 1 contains the y coordinates + """ + L = linalg.cholesky(cov) + t = np.linspace(0, _two_pi, num_pts) + unit_circle = np.array([np.cos(t), np.sin(t)]) + + ellipse = sigma * L.dot(unit_circle) + ellipse[0] += x + ellipse[1] += y + return (ellipse,x,y) + +def sigma_ellipses(cov, x=0, y=0, sigma=[1,2], num_pts=100): + L = linalg.cholesky(cov) + t = np.linspace(0, _two_pi, num_pts) + unit_circle = np.array([np.cos(t), np.sin(t)]) + + e_list = [] + for s in sigma: + ellipse = s * L.dot(unit_circle) + ellipse[0] += x + ellipse[1] += y + e_list.append (ellipse) + return (e_list,x,y) + +def plot_sigma_ellipse(ellipse,title=None): + """ plots the ellipse produced from sigma_ellipse.""" + + plt.axis('equal') + e = ellipse[0] + x = ellipse[1] + y = ellipse[2] + + plt.plot(e[0], e[1]) + plt.scatter(x,y,marker='+') # mark the center + if title is not None: + plt.title (title) + plt.show() + +def plot_sigma_ellipses(ellipses,title=None,axis_equal=True,x_lim=None,y_lim=None): + """ plots the ellipse produced from sigma_ellipse.""" + + if x_lim is not None: + axis_equal = False + plt.xlim(x_lim) + + if y_lim is not None: + axis_equal = False + plt.ylim(y_lim) + + if axis_equal: + plt.axis('equal') + + for ellipse in ellipses: + es = ellipse[0] + x = ellipse[1] + y = ellipse[2] + + for e in es: + plt.plot(e[0], e[1], c='b') + + plt.scatter(x,y,marker='+') # mark the center + if title is not None: + plt.title (title) + plt.show() + + +def _to_array(x): + """ returns any of a scalar, matrix, or array as a 1D numpy array + Example: + _to_array(3) == array([3]) + """ + try: + x.shape + if type(x) != np.ndarray: + x = np.asarray(x)[0] + return x + except: + return np.array(np.mat(x)).reshape(1) + +def _to_cov(x,n): + """ If x is a scalar, returns a covariance matrix generated from it + as the identity matrix multiplied by x. The dimension will be nxn. + If x is already a numpy array then it is returned unchanged. + """ + try: + x.shape + if type(x) != np.ndarray: + x = np.asarray(x)[0] + return x + except: + return np.eye(n) * x + + if __name__ == '__main__': from scipy.stats import norm