{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "6a5cc268", "metadata": {}, "outputs": [], "source": [ "import sympy as sym\n", "import matplotlib.pyplot as plt\n", "from matplotlib.collections import LineCollection\n", "import numpy as np\n", "import scipy as sp\n", "from IPython.display import display" ] }, { "cell_type": "code", "execution_count": 2, "id": "b27f3029", "metadata": {}, "outputs": [], "source": [ "x,y,h, r, th, q, q1, q2,eps0, U = sym.symbols(\"x y h r theta q q_1 q_2 epsilon_0 U\", real=True, positive=True)" ] }, { "cell_type": "markdown", "id": "9e16a668", "metadata": {}, "source": [ "The value for $\\epsilon_0$" ] }, { "cell_type": "code", "execution_count": 3, "id": "51ad2d77", "metadata": {}, "outputs": [], "source": [ "eps0_val = 8.8541878128e-12" ] }, { "cell_type": "markdown", "id": "74d62a8f", "metadata": {}, "source": [ "The potential of a charge at a given location to a point distance r from its origin is the following:" ] }, { "cell_type": "code", "execution_count": 4, "id": "ce738c91", "metadata": {}, "outputs": [], "source": [ "# elementary charge in coulombs\n", "elem_charge = 1.60218e-19" ] }, { "cell_type": "code", "execution_count": 5, "id": "effbc952", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} r}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*r)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e = -q1/(4*sym.pi * eps0 * r)\n", "e" ] }, { "cell_type": "code", "execution_count": 6, "id": "f9b3ed1d", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\sqrt{x^{2} + \\left(h + y\\right)^{2}}} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\sqrt{x^{2} + \\left(- h + y\\right)^{2}}}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*sqrt(x**2 + (h + y)**2)) - q_2/(4*pi*epsilon_0*sqrt(x**2 + (-h + y)**2))" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e1 = -q1/(4*sym.pi*eps0*(sym.sqrt(x**2+(y+h)**2))) - q2/(4*sym.pi*eps0*(sym.sqrt(x**2+(y-h)**2)))\n", "e1" ] }, { "cell_type": "code", "execution_count": 7, "id": "0eaed45f", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\sqrt{r^{2} \\cos^{2}{\\left(\\theta \\right)} + \\left(h + r \\sin{\\left(\\theta \\right)}\\right)^{2}}} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\sqrt{r^{2} \\cos^{2}{\\left(\\theta \\right)} + \\left(- h + r \\sin{\\left(\\theta \\right)}\\right)^{2}}}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*sqrt(r**2*cos(theta)**2 + (h + r*sin(theta))**2)) - q_2/(4*pi*epsilon_0*sqrt(r**2*cos(theta)**2 + (-h + r*sin(theta))**2))" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2 = e1.subs([(x, r*sym.cos(th)),(y, r*sym.sin(th))])\n", "e2" ] }, { "cell_type": "code", "execution_count": 8, "id": "30088ddc", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\sqrt{h^{2} + r^{2}}} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\sqrt{h^{2} + r^{2}}}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*sqrt(h**2 + r**2)) - q_2/(4*pi*epsilon_0*sqrt(h**2 + r**2))" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2.subs(th, 0)" ] }, { "cell_type": "markdown", "id": "34117d7b", "metadata": {}, "source": [ "Anywhere along the midline (y = 0) the electric field between opposite charges cancel out" ] }, { "cell_type": "code", "execution_count": 9, "id": "89dfed83", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle 0$" ], "text/plain": [ "0" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2.subs([(th, 0), (q1, -q2)])" ] }, { "cell_type": "code", "execution_count": 10, "id": "addeaa10", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\left(h + r\\right)} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\left|{h - r}\\right|}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*(h + r)) - q_2/(4*pi*epsilon_0*Abs(h - r))" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e22 = e2.subs(th, sym.pi/2)\n", "e22" ] }, { "cell_type": "code", "execution_count": 11, "id": "1e4a49ed", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{4.52379154890926 \\cdot 10^{-9}}{\\pi \\left|{r - 5}\\right|} + \\frac{4.52379154890926 \\cdot 10^{-9}}{\\pi \\left(r + 5\\right)}$" ], "text/plain": [ "-4.52379154890926e-9/(pi*Abs(r - 5)) + 4.52379154890926e-9/(pi*(r + 5))" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e22f = e22.subs([(h, 5), (q1, -elem_charge), (q2, elem_charge), (eps0, eps0_val)])\n", "e22f" ] }, { "cell_type": "code", "execution_count": 12, "id": "0f93518e", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "\n", "f = sym.lambdify(r, e22f)\n", "rvals=np.linspace(0,10, 100)\n", "\n", "ax.plot(rvals, f(rvals))\n", "ax.set_xlabel('r value')\n", "ax.set_ylabel('relative potential')\n", "\n", "ax.grid()" ] }, { "cell_type": "code", "execution_count": 13, "id": "aa8e72ff", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\frac{- h q_{2} - q_{2} r + q_{2} \\left|{h - r}\\right|}{4 \\pi \\epsilon_{0} h \\left|{h - r}\\right| + 4 \\pi \\epsilon_{0} r \\left|{h - r}\\right|}$" ], "text/plain": [ "(-h*q_2 - q_2*r + q_2*Abs(h - r))/(4*pi*epsilon_0*h*Abs(h - r) + 4*pi*epsilon_0*r*Abs(h - r))" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sym.cancel(e2.subs([(th, sym.pi/2), (q1, -q2)]))" ] }, { "cell_type": "code", "execution_count": 14, "id": "e77e6757", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\left|{h - r}\\right|} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\left(h + r\\right)}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*Abs(h - r)) - q_2/(4*pi*epsilon_0*(h + r))" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e42 = e2.subs(th, 3*sym.pi/2)\n", "e42" ] }, { "cell_type": "code", "execution_count": 15, "id": "bb528109", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\frac{4.52379154890926 \\cdot 10^{-9}}{\\pi \\left|{r - 5}\\right|} - \\frac{4.52379154890926 \\cdot 10^{-9}}{\\pi \\left(r + 5\\right)}$" ], "text/plain": [ "4.52379154890926e-9/(pi*Abs(r - 5)) - 4.52379154890926e-9/(pi*(r + 5))" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e42f = e42.subs([(h, 5), (q1, -elem_charge), (q2, elem_charge), (eps0, eps0_val)])\n", "e42f" ] }, { "cell_type": "code", "execution_count": 16, "id": "59b4ead0", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAERCAYAAAB2CKBkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAoC0lEQVR4nO3deXhcd3X/8feZRZJlyZZt2Uq8JHaIcRbI4jh7AIWkJWEL+1KgQKFhJ+0DTyH0V2jp71foRgslkLohhYBJoCSUNA17LOKQhTjOajvBzuLES+JdtmRJs53fH/eOPJa1jDW6mrmez+t55pk7d5tzPdacud9zv99r7o6IiNSvRLUDEBGR6lIiEBGpc0oEIiJ1TolARKTOKRGIiNQ5JQIRkToXy0RgZteb2XYze2yC9vcPZrbWzNab2dfMzCZivyIicRDLRAB8G7hsInZkZhcAFwKnAS8BzgZeMRH7FhGJg1gmAne/E9hdOs/MXmRmPzOzB8xslZmdVO7ugCagAWgE0sALExqwiEgNi2UiGMFy4BPufhbwaeAb5Wzk7vcAK4Ft4ePn7r4+sihFRGpMqtoBTAQzawEuAP6rpHm/MVz2JuCLw2y2xd1fZWYnAicD88P5vzSzl7n7qojDFhGpCUdFIiA4s9nr7mcMXeDutwC3jLLtG4F73b0HwMx+CpwPKBGISF04KpqG3H0f8LSZvRXAAqeXufmzwCvMLGVmaYJCsZqGRKRuxDIRmNmNwD3AEjPbbGYfAN4FfMDMHgbWAleUubsfAU8CjwIPAw+7+/9EELaISE0yDUMtIlLfYnlGICIiEyd2xeL29nZfuHDhuLbt7e1l6tSpExtQjdMx1wcdc32o5JgfeOCBne4+e7hlsUsECxcuZPXq1ePatquri87OzokNqMbpmOuDjrk+VHLMZrZppGVqGhIRqXNKBCIidU6JQESkzikRiIjUOSUCEZE6p0QgIlLnlAhEROpc7PoRiNSax7Z088t1L+AA7pw2v41LT+modlgiZVMiEKnQ1369gV+sO3hTu7nTm5QIJFbUNCRSof5cgdMXtPHMl1/Du887joFcodohiRwRJQKRCmVzBRqSwZ3x0skEmbwSgcSLEoFIhbL5Aulk8KfUkEyQVSKQmFEiEKlQaSJIJxNk87rHh8SLEoFIhTJ5PyQR5AtOvqBkIPGhRCBSoWy+QEMqrBGEz2oekjhRIhCp0NAaQXGeSFwoEYhUKJs7tEYAqE4gsaJEIFKhoTUC0BmBxIsSgUiFsvnSfgTBc0adyiRGlAhEKpQrrRGkdEYg8aNEIFKhbN5Jpw5tGsrp8lGJESUCkQq4O5n84cViNQ1JnCgRiFSg+Mt/aI1ATUMSJ0oEIhUofuEf3o9ATUMSH0oEIhXI5oIv/MGmIRWLJYaUCEQqUBxyupgAUgk7ZL5IHCgRiFRgsGkocfB+BBD0NhaJCyUCkQocViNIqUYg8aNEIFKB7JCmIQ0xIXEUWSIwswVmttLM1pnZWjO7aph1Os2s28weCh+fjyoekShkcsNfPqoagcRJKsJ954BPufsaM2sFHjCzX7r7uiHrrXL310YYh0hkRr58VIlA4iOyMwJ33+bua8Lp/cB6YF5U7ydSDUMTgYrFEkdRnhEMMrOFwJnAfcMsPt/MHga2Ap9297XDbH8lcCVAR0cHXV1d44qjp6dn3NvGlY45Wut35QFY++gjFLYm6Qubitb/fiNd2U2TEgPoc64XkR2zu0f6AFqAB4A3DbNsGtASTr8a2DDW/s466ywfr5UrV45727jSMUer64ntfvxnbvPVz+xyd/f+bM6P/8xt/vU7NkxaDO76nOtFJccMrPYRvlcjvWrIzNLAzcAKd79lmCS0z917wunbgbSZtUcZk8hEKjYBDTYNJVQjkPiJ8qohA74FrHf3r4ywzjHhepjZOWE8u6KKSWSiDa0RJBJGKmFKBBIrUdYILgTeAzxqZg+F8z4HHAfg7tcCbwE+YmY5oA94R3gKIxIL2cKhYw0Vp9WhTOIkskTg7ncBNsY6Xwe+HlUMIlErNg01HJIITPcjkFhRz2KRChzsWXzwN09DKkGuoEQg8aFEIFKBoTWC4nRxeGqROFAiEKlAJj9SjUBnBBIfSgQiFSh+4ZfWCFJJ01hDEitKBCIVONiPoKRGoDMCiRklApEKZPMFzCCZOJgIdPmoxI0SgUgFMnknnUgQ9osEgrMDnRFInCgRiFQgmy8c0iwEwRmB+hFInCgRiFQgmy8M3p2sqCGlGoHEixKBSAWCM4JD/4xUI5C4USIQqUAm54dcOgqqEUj8KBGIVGDEGoESgcSIEoFIBYZrGlI/AokbJQKRCoxYI9BYQxIjSgQiFcjk/bCrhtIp1QgkXpQIRCqQzRVoUI1AYk6JQKQCuYJqBBJ/SgQiFcjkXf0IJPaUCEQqkM0NXyzOF5xCQclA4kGJQKQC2XyBhtShNYJUWDPI6naVEhNKBCIVGKkfQbBMZwQSD0oEIhXIDlsjCM8INAKpxIQSgUgFMsN1KEsVzwiUCCQelAhEKpDND9+PAFBfAokNJQKRCmRzBVKqEUjMRZYIzGyBma00s3VmttbMrhpmHTOzr5nZRjN7xMyWRhWPSBSGrxGoaUjiJRXhvnPAp9x9jZm1Ag+Y2S/dfV3JOpcDi8PHucA3w2eRmufuZIZtGgpe63aVEheRnRG4+zZ3XxNO7wfWA/OGrHYFcIMH7gXazOzYqGISmUi5sMOYisUSd5NSIzCzhcCZwH1DFs0Dnit5vZnDk4VITSp+0R92z2LVCCRmRmwaMrM3jbahu99SzhuYWQtwM/Bn7r7vyMIb3MeVwJUAHR0ddHV1jWc39PT0jHvbuNIxR6c3G3zRb3r6Kbr84O+ZJ3bnAVi95kEObEpGHgfoc64XUR3zaDWC142yzIExE4GZpQmSwIoREscWYEHJ6/nhvEPfzH05sBxg2bJl3tnZOdZbD6urq4vxbhtXOubo7Ng/AL/+FacsWUzn+QsH509/dg/87m5OfslL6VwyJ/I4QJ9zvYjqmEdMBO7+/kp2bGYGfAtY7+5fGWG1W4GPm9lNBEXibnffVsn7ikyWwaahka4aUrFYYqKsq4bM7DXAqUBTcZ67f3GMzS4E3gM8amYPhfM+BxwXbn8tcDvwamAjcACoKPmITKaREkFDSjUCiZcxE4GZXQs0AxcD1wFvAX431nbufhdgY6zjwMfKilSkxoxULFY/Aombcq4ausDd/xjY4+5/A5wPvDjasERqX/EX/4j9CJQIJCbKSQR94fMBM5sLZAFd6y91b8wagRKBxEQ5NYLbzKwN+EdgDcEVQ9dFGZRIHIyVCHKqEUhMjJkI3P1vw8mbzew2oMndu6MNS6T2ZXIj9Cwu3o9AZwQSE6N1KHulu98xXMcyMyu7Q5nI0ar4RT/0VpUahlriZrQzglcAdzB8x7KyOpSJHM3G7kegpiGJh9E6lH0hnPyiuz9duszMFkUalUgMjJQIkgkjmTA1DUlslHPV0M3DzPvRRAciEjeZ/PA1gmCeEoHEx2g1gpMIehNPH1InmEZJD2ORelUcQiKdPLzfZDqZUI1AYmO0GsES4LVAG4fWCfYDfxphTCKxMFLTEARDUeuMQOJitBrBT4CfmNn57n7PJMYkEgujJYJ0MqFiscRGOR3KNprZ54CFpeu7+59EFZRIHGQGh5gYJhGkVCOQ+CgnEfwEWAX8CshHG45IfBwcdE41Aom3chJBs7t/JvJIRGLmYLFYNQKJt3IuH73NzF4deSQiMVP8ok8lhj8j0P0IJC7KSQRXESSDfjPbZ2b7zWxc9x4WOZpk8k5DMkFwM75DqR+BxEk5g861TkYgInGTzReG7UMAYY1At6qUmBjzjMAC7zazvwpfLzCzc6IPTaS25fKFw+5OVpRWjUBipJymoW8Q3JXsj8LXPcA1kUUkEhOZvA9bKIZi05BqBBIP5Vw1dK67LzWzBwHcfY+ZNUQcl0jNy+YLw/YhAJ0RSLyUc0aQNbMkwdDTmNlsQP/Dpe6NWiNIKRFIfJSTCL4G/BiYY2b/D7gL+FKkUYnEQJAIhv8TatDloxIj5Vw1tMLMHgAuAQx4g7uvjzwykRqXyY1VI9AZgcTDmInAzL7r7u8BHh9mnkjdyuqqITlKlNM0dGrpi7BecFY04YjER1AsVj8Cib8RE4GZXW1m+4HTSnoU7we2EwxEJ1LXRq0RpFQjkPgYMRG4+5fCXsX/6O7T3L01fMxy96vH2rGZXW9m283ssRGWd5pZt5k9FD4+X8FxiEy6TN5JqUYgR4FyisVXm9nrgZeHs7rc/bYy9v1t4OvADaOss8rdX1vGvkRqTjY3etNQruAUCk5imEHpRGpJOUNMfIlg4Ll14eMqM/u7sbZz9zuB3RVHKFKjRmsaKs7PFnRWILXP3EdvxzSzR4Az3L0Qvk4CD7r7aWPu3GwhcJu7v2SYZZ3AzcBmYCvwaXdfO8J+rgSuBOjo6DjrpptuGuuth9XT00NLS8u4to0rHXN0PnPnARZNT/Dh05sOW/bTp7P84IkM37y0mSnD3Lhmoulzrg+VHPPFF1/8gLsvG25ZOUNMQHAD++Kv++njiuJwa4Dj3b0nvN/BfwOLh1vR3ZcDywGWLVvmnZ2d43rDrq4uxrttXOmYo5O69w7mHTuLzs7TD1v2TPppeGId551/ITOmRj8iiz7n+hDVMZeTCL4EPGhmKwk6lL0c+Gylb+zu+0qmbzezb5hZu7vvrHTfIpMhky/QMMKv/WL/AhWMJQ7KKRbfaGZdwNkE4w19xt2fr/SNzewY4AV393BY6wSwq9L9ikyWcmoEum+xxEG5TUPnAxcRJIIUwdhDozKzG4FOoN3MNgNfANIA7n4t8BbgI2aWA/qAd/hYBQuRGpLNjZYIgjMF9SWQOChniIlvACcCN4azPmRml7r7x0bbzt3fOcbyrxNcXioSS9lR70egpiGJj3LOCF4JnFz8tW5m3wGGvbpHpF64O9nC6P0IAA0zIbFQzlhDG4HjSl4vCOeJ1K18wXFn1GGoQWcEEg/lnBG0AuvN7HcENYJzgNVmdiuAu78+wvhEalKx7X+00UcBcgXVCKT2lZMINAaQyBDFq4HGLBaraUhioJzLR38zGYGIxEmxyWfEGkFKl49KfJRTIxCRIbJjnBEcrBGoaUhqnxKByDhkc2GNQJePylGgrERgZlPMbEnUwYjExWCNYMRicbFDmRKB1L5yhqF+HfAQ8LPw9RnFK4ZE6tWYNQL1I5AYKeeM4K8JLhndC+DuDwGLIotIJAaKiSCVGPlWlcF6qhFI7SsnEWTdvXvIPP3vlrqWHbNpSDUCiY9y+hGsNbM/ApJmthj4JHB3tGGJ1LbMYLF4pKYh1QgkPso5I/gEcCowAHwf6Ab+LMKYRGrewRqBhqGW+CvnjOAkd/9L4C+jDkYkLsbqRzDYNJRTK6rUvnLOCP7ZzNab2d+a2WH3HhapR2MlgmTCSJiahiQexkwE7n4xcDGwA/h3M3vUzP5P5JGJ1LBMeDXQSLeqhCBJKBFIHJTVoczdn3f3rwEfJuhToIHopK4VB5Mb6YwAgvqBagQSB+V0KDvZzP7azB4F/o3giqH5kUcmUsNyhbETQTqlMwKJh3KKxdcDPwBe5e5bI45HJBaKTUOjJoKkqVgssVDOMNTnT0YgInFSbBoa6fJRUI1A4mPERGBmP3T3t4VNQqU/awxwdz8t8uhEatTBnsUjF4sbkgmyukOZxMBoZwRXhc+vnYxAROJkrMtHi8t0hzKJgxH/F7v7tnDyo+6+qfQBfHRywhOpTcUaQSoxyuWjKVPTkMRCOZeP/sEw8y6f6EBE4iSbL9CQTGA2ej8CXT4qcTBajeAjBL/8TzCzR0oWtQK/jTowkVqWzRVGHHCuSMViiYvRagTfB34KfAn4bMn8/e6+O9KoRGpcNl8YcQjqooZkgr5sfpIiEhm/0WoE3e7+jLu/M6wL9BFcPdRiZseNtWMzu97MtpvZYyMsNzP7mpltNLNHzGzpuI9CZJJl8j7iTWmK0knVCCQeyrpVpZltAJ4GfgM8Q3CmMJZvA5eNsvxyYHH4uBL4Zhn7FKkJQY1g7KYh3apS4qCcYvH/Bc4Dfu/ui4BLgHvH2sjd7wRGa0K6ArjBA/cCbWZ2bBnxiFRdOU1DGmJC4qKcISay7r7LzBJmlnD3lWb2rxPw3vOA50pebw7nbRu6opldSXDWQEdHB11dXeN6w56ennFvG1c65mhs2dZPtr8w6vvs3tnPvp7R15ko+pzrQ1THXE4i2GtmLcCdwAoz2w70Tngko3D35cBygGXLlnlnZ+e49tPV1cV4t40rHXM0vrdpNb2JPjo7XzbiOv+742Ge6d05Kf/++pzrQ1THXE7T0BUEheI/B34GPAm8bgLeewuwoOT1/HCeSM0rq0agpiGJiXIGnSv99f+dCXzvW4GPm9lNwLlAd0lvZpGals0XRh1eAsL7EahYLDEwWoey/Qwz2BwHB52bNtqOzexGoBNoN7PNwBeANMHG1wK3A68GNgIHgPeP+yhEJlkmV0YiSCUYyBVw91F7IItU24iJwN1bK9mxu79zjOUOfKyS9xCplu37Bzh9Qduo67S3NDCQK7CvP8f0KenJCUxkHMq6VaWZXWRm7w+n281sUbRhidSuQsF5vrufuW1No643t20KANu6+yYjLJFxK6dD2ReAzwBXh7MagO9FGZRILdvZO0AmX2Be+EU/kmIi2LpXiUBqWzlnBG8EXk94yWh4u8qKmo1E4mzr3n4Ajp0+RiIIl28J1xepVeUkgkzYnu8AZjY12pBEatu28Bf+WE1Ds1sbSSVscH2RWlVOIvihmf07wRAQfwr8CviPaMMSqV1bwi/2sZqGkgnjmOlNahqSmjdqPwILrnn7AXASsA9YAnze3X85CbGJ1KSte/uZkk6WdSXQ3OlTBpuSRGrVqInA3d3Mbnf3lwL68hchuApobltTWX0D5rY1sXrTnkmISmT8ymkaWmNmZ0ceiUhMbN3bN3hF0Fjmtk3h+e5+8gUfe2WRKiknEZwL3GNmT4Y3kHl0yK0rRerKlr39Y9YHiua2TSFXcHbsH4g4KpHxK2f00VdFHoVITAzk8uzsGRjz0tGi4pVFW/b2ccz00a8yEqmWcgad2zQZgYjEwfPdQeF3rEtHiw7tXTwjqrBEKlLWEBMiEij30tEi9S6WOFAiEDkCg72Ky0wE05rStDSmdAmp1DQlApEjUOwlfOwRtPfPbVOnMqltSgQiR2Brdx/tLQ00pZNlbzO3bQpbNQKp1DAlApEjsGVvf9lXDBXNbVPvYqltSgQiR2Db3r6yrxgqmju9id29Gfoy+YiiEqmMEoFImdz9iHoVF+kGNVLrlAhEyrSvL0dvJj94n4FyHbyEVM1DUpuUCETKVCz4HukZwTz1JZAap0QgUqatZd6QZqiOaU2YoSuHpGYpEYiUaesR9iouakglmN3SqDMCqVlKBCJl2trdTzpptLc0HvG2uoRUapkSgUiZtoYjiCYSY9+QZij1LpZapkQgUqate/uO+IqhornTg97F7rpBjdQeJQKRMuQLzhPP7+eE2VPHtf2L5rTQny3w5I7eCY5MpHKRJgIzu8zMnjCzjWb22WGWv8/MdpjZQ+Hjg1HGIzJej2zey77+HBe8qH1c2190YrDdXRt2TGRYIhMiskRgZkngGuBy4BTgnWZ2yjCr/sDdzwgf10UVj0gl7tqwEzO48MTxJYIFM5s5flYzd23cOcGRiVQuyjOCc4CN7v6Uu2eAm4ArInw/kcis2rCTU+dOY+bUhnHv46IT27nnyV1k84UJjEykcuXcs3i85gHPlbzeDJw7zHpvNrOXA78H/tzdnxu6gpldCVwJ0NHRQVdX17gC6unpGfe2caVjrlxfznlg0wEuW5iuaL8zM8EQFdf/ZCVLZpY/jHU59DnXh6iOOcpEUI7/AW509wEz+xDwHeCVQ1dy9+XAcoBly5Z5Z2fnuN6sq6uL8W4bVzrmyv16/QvkfTXvumQpF4yzaQjgzL4s1zz0C3pb5tPZuWTC4gN9zvUiqmOOsmloC7Cg5PX8cN4gd9/l7gPhy+uAsyKMR2RcVm3YSVM6wVkLK7v5/PQpaU5f0MadG1QnkNoSZSK4H1hsZovMrAF4B3Br6QpmdmzJy9cD6yOMR2RcVm3YwTmLZtGYqrw552WLZ/PI5r10H8hOQGQiEyOyRODuOeDjwM8JvuB/6O5rzeyLZvb6cLVPmtlaM3sY+CTwvqjiERmPbd19PLmjl5cvHn+TUKmXLW6n4HD3kzorkNoRaY3A3W8Hbh8y7/Ml01cDV0cZg0glVoXNOBdNUCI4Y0EbLY0pVm3cyeUvPXbsDUQmgXoWi4xi1YadzG5tZElH64TsL51McN4Js1iljmVSQ5QIREZwIJPjzt/v4GUntmN25APNjeQVL27nud19PLJ574TtU6QSSgQiI1hx77N092V513nHT+h+rzhzHtOaUlyzcuOE7ldkvJQIRIbRn82zfNVTXPCiWZx1fGWXjQ41rSnN+y5cxM/XvsDjz++b0H2LjIcSgcgwfnD/c+zYP8AnXrk4kv3/yYULmdqQ5Ot36KxAqk+JQGSITK7Atb95kmXHz+C8E2ZG8h5tzQ388QUL+d9Ht7Fxe08k7yFSLiUCkSFuXrOZbd39fOKSxRNaJB7qgxctoimV5BuqFUiVKRGIlOgdyHHNyo2cNn/6hHUiG8mslkbede5x/OThrazd2h3pe4mMRolAJOTufO7Hj7J1bx+fe/XJkZ4NFH304hNpb2ngYyvWsK9fw05IdSgRiIRW3PcsP3loK5/6wyWcd8KsSXnPmVMbuOaPlrJ5Tx+f/uHDuqexVIUSgQjBrSi/+D/ruHjJbD7yihdN6nsvWziTz15+Er9Y9wL/seqpSX1vEVAiEGHzngN85HtrmN3ayFfedgaJRPRNQkN94KJFXP6SY/j7nz3BTx/dNunvL/VNiUDq2uPP7+PN37yb/f1Zvvnupcyo4FaUlTAz/uEtp3H6/Ol89Ptr+O69m6oSh9QnJQKpW797ejdvvfYeAP7rwxdw2vy2qsbT2pRmxQfP45KT5vBX//0Y//yLJ1QzkEmhRCB1J19wlt/5JO/+1n3Mbm3k5o9cwJJjJmZ00UpNaUhy7bvP4u3LFvBvd2zkvf95P1v29lU7LDnKKRFIXdm4vYe3XHs3f3f747zixbP50YcvYP6M5mqHdYhUMsGX3/xSvnjFqax+Zjev+pc7WXHfJgoFnR1INKp983qRSbFj/wDX/uZJvnvvJpobknz1HWfw+tPnTkpfgfEwM/74/IVcvGQOn7n5Ef7yx4+x4t5nuerSxfzhKR01G7fEkxKBHNW2dffx7buf4Ya7NzGQy/OmpfP5i8uWMKe1qdqhlWXBzGZWfPBc/vuhLXz1Vxv40Hcf4NS507jy5SfwqlOPoSld+X2URZQI5KiTLzgrH9/Oivue5Y7HX8CBK06fyycvWcwJs1uqHd4RMzPeeOZ8XnfaXH784BauWbmRq256iLbmNG9eOp83njlPRWWpiBKBHBUGcnnue2o3P31sG7c9eID92ftpb2ngQ694Ee88+ziOm1VbdYDxSCUTvHXZAt68dD53P7mLG3/3LDfc8wzfuutp2qcYb+hdxyUnd7D0+DYaUzpTkPIpEUgs5QvO48/v476ndrNqww7ufWo3fdk8UxuSvLQ9yfsuOZ1XntRBQ+roux4ikTAuWtzORYvb2d2b4VfrXmDFnWu54Z5NXHfX0zSlE5yzaBbnLprJ0uNmcPqC6TQ36E9dRqb/HVLz3J3Ne/p4bEs3j23t5uHnunnw2T30ZvIAnNA+lbcum8/LF8/mosXt3PvbVXS+5NgqRz05Zk5t4G1nL2BO75Ocdd6F3PfUbu7auJPfbtzJP/78CQCSCWPxnBZOmTuNU+dO5+RjWjmxo4XZLY0qOgugRCA1JJsvsHlPH0/v7OGpHb1s3N7D71/Yz4YXetg/kAOCL7UXd7TypqXzWbZwBssWzmRe25QqR14bWpvSXHpKB5ee0gHAnt4MDz23lzXP7uHRLd3ctWEnt6zZMrj+tKYUL5rTwqJZUzl+1lQWtjczf8YU5rU1M6e1sSpDbUh1KBHIpHB39g/k2L6vn+e7B9ja3cfWvcHjud19PLv7ANu6+yi9VH5Gc5oXd7TyxqXzeHFHKy+dN50lx7TqSpkyzZjawMUnzeHik+YMztu+v5/fP9/Dxu372bC9hyd39HDvU7u45cEth2ybThod05o4dnoTHdOamNPaxJxpjcxpbaS9pZFZLQ3MbmmkrbnhqGx+qzdKBDJu/dk8ew9k2XMgw57eDHsOZNndO8Cu3gw7ewbY1ZNhx/4BdvQMsGP/AAfCppwiM5jd0sj8GVNYtnAGx82cx3EzmzlhdgsntE+t2rg/R7M5rcGX+kVDbrrTn82zec8BNu/pY/OePrbs7eP57n62dQdNctv3bz/s8ytqbUwxY2oDbc1p2pobaJuSZvqUNNOmpJg+JU1rU5rWptTB58YULU0ppjammNqQIqkzj6pTIqhD7s5ArkDvQI7egTw9Azl6Mzl6+nPsHwif+7PsL3ne159lX1+OvX0ZuvuydPdl6c8WRnyPGc1pZk5tYHZrI6fPb2N2ayMd0xrpmNbEMdOamNs2hY5pTfo1WSOa0klOnNPKiXNGHmqjJzyj29WbYVfPADt7gh8Auw9k2N2bYe+BLHv7sjy7q5fuviz7+nPky+gN3ZRO0NKYorkhRXNDkikNyeA5Hb5OB/Oa0kma0gma0sG8Z57LsvfBLTSmEjSmEzSlkjSmEzQkg+fGVIKGVIJ0MnhuSAYPNXkdLtJEYGaXAV8FksB17v7lIcsbgRuAs4BdwNvd/ZkoY6p1hULwJT2Qy9OfLdCfzdNfOp09dLovfPRn8hzIhK/D5wOZPNt29PFPj67iwEDwujeT40AmX9YfaMKgpTHFtClppjUFv/AWtU9leviLr625gRnNwS/BGc0NzGoJpmc2N5BK6gv+aNPSmKJldgsnzC5vfXenN5NnX1/Jj4rwh0bPQG7wh0hvJpg+kMlzIFN8zrO7t4++TG7w/3R/tkAmP+THx9qHjvg40kkbTA7pMDkU56VLplMl81IJI5U0UolwfuLg8mS4LJ0IpxNGMhk+JxLhsx18Tgbzkxa8Li5LJOyQeckEJMLXxee9AyP/+KpEZInAzJLANcAfAJuB+83sVndfV7LaB4A97n6imb0D+Hvg7VHFNBJ3J5t3MvkCmVzJI58nkxsyP58nkyuEX9al8wvh/IPLi8sGBh/5g9PZPJl8gYHswdcDuWH+o5fJjOCXUzr45dQc/qpKGHS0NjFlVnFeKvj11ZhkakNwet7SmAyfU7Q2pWhpDE7hmxuSuqpExs3MguTROHFfM/mCD/5IWnnnXSw9+1z6w7+dgWye/kP+7vKDf5sD2YN/o5l8gWyuQDYfTud9cJtcIXidzRfI5Z2eXG5wOpsvkC8E3xW5wpB5BSeXLxD1cFCvXpTmDRHsN8ozgnOAje7+FICZ3QRcAZQmgiuAvw6nfwR83czMI+gm2fXEdq5edYD071Ye8sWdqeDLdzgJg8bBU9TE4HNDKjitbUgmmNaUoqm1cfDUtSmdPDidSg6+Lp4KN6aSTGkonvqWnionBr/4G1OJYb+0u7q66Ow8e8KOT6SakgkLm5Bg1pQEi9qnVjukQ7g7+YKTKxx8zuUL5Ivz84cuzxecgh/6OlcoUChA3p1CcX44vfOZ9ZHEHWUimAc8V/J6M3DuSOu4e87MuoFZwM7SlczsSuBKgI6ODrq6uo44mI178hwzpUBTeoDUFCOdgFQCUolk+IB0wsLncJlZuM4wyxLBPtIl06kEoxS+8uGjTLnwUTICcSZ87D+C4+7p6RnXv1ec6ZjrQz0csxF8SRe/qGfYgUiOORbFYndfDiwHWLZsmXd2dh7xPjqBE7u6GM+2cdalY64LOub6ENUxR1nR2wIsKHk9P5w37DpmlgKmExSNRURkkkSZCO4HFpvZIjNrAN4B3DpknVuB94bTbwHuiKI+ICIiI4usaShs8/848HOCy0evd/e1ZvZFYLW73wp8C/iumW0EdhMkCxERmUSR1gjc/Xbg9iHzPl8y3Q+8NcoYRERkdOr1IyJS55QIRETqnBKBiEidUyIQEalzFrerNc1sB7BpnJu3M6TXch3QMdcHHXN9qOSYj3f3YYcMjF0iqISZrXb3ZdWOYzLpmOuDjrk+RHXMahoSEalzSgQiInWu3hLB8moHUAU65vqgY64PkRxzXdUIRETkcPV2RiAiIkMoEYiI1Lm6SQRmdpmZPWFmG83ss9WOJ2pmtsDMVprZOjNba2ZXVTumyWBmSTN70Mxuq3Ysk8XM2szsR2b2uJmtN7Pzqx1TlMzsz8P/04+Z2Y1m1lTtmKJgZteb2XYze6xk3kwz+6WZbQifZ0zEe9VFIjCzJHANcDlwCvBOMzululFFLgd8yt1PAc4DPlYHxwxwFRDNjV1r11eBn7n7ScDpHMXHb2bzgE8Cy9z9JQRD3B+tw9d/G7hsyLzPAr9298XAr8PXFauLRACcA2x096fcPQPcBFxR5Zgi5e7b3H1NOL2f4MthXnWjipaZzQdeA1xX7Vgmi5lNB15OcG8P3D3j7nurGlT0UsCU8K6GzcDWKscTCXe/k+A+LaWuAL4TTn8HeMNEvFe9JIJ5wHMlrzdzlH8pljKzhcCZwH1VDiVq/wr8BVCochyTaRGwA/jPsEnsOjObWu2gouLuW4B/Ap4FtgHd7v6L6kY1qTrcfVs4/TzQMRE7rZdEULfMrAW4Gfgzd99X7XiiYmavBba7+wPVjmWSpYClwDfd/UyglwlqLqhFYZv4FQQJcC4w1czeXd2oqiO8re+EXP9fL4lgC7Cg5PX8cN5RzczSBElghbvfUu14InYh8Hoze4ag6e+VZva96oY0KTYDm929eLb3I4LEcLS6FHja3Xe4exa4BbigyjFNphfM7FiA8Hn7ROy0XhLB/cBiM1tkZg0ExaVbqxxTpMzMCNqN17v7V6odT9Tc/Wp3n+/uCwk+3zvc/aj/pejuzwPPmdmScNYlwLoqhhS1Z4HzzKw5/D9+CUdxcXwYtwLvDaffC/xkInYa6T2La4W758zs48DPCa4yuN7d11Y5rKhdCLwHeNTMHgrnfS68j7QcXT4BrAh/5DwFvL/K8UTG3e8zsx8BawiujHuQo3SoCTO7EegE2s1sM/AF4MvAD83sAwTD8b9tQt5LQ0yIiNS3emkaEhGRESgRiIjUOSUCEZE6p0QgIlLnlAhEROqcEoFIBMysy8zq6sbqEl9KBCJDWEB/G1I39J9dhGBgvvB+FTcAj1EyJEl4L4v/KnndWbzfgZl908xWh+Pj/80I++4pmX6LmX07nJ5tZjeb2f3h48KIDk9kVHXRs1ikTIuB97r7vUPm/wpYbmZT3b0XeDvBeEYAf+nuu8N7XvzazE5z90fKfL+vAv/i7neZ2XEEPd9PnoDjEDkiSgQiB20aJgkUhyj5GfC6cHiD1xAMdw3wNjO7kuBv6ViCGx+VmwguBU4JhswBYJqZtbh7zyjbiEw4JQKRg3pHWXYT8HGCG4Wsdvf9ZrYI+DRwtrvvCZt8hrttYuk4LqXLE8B57t5fWdgilVGNQKQ8vyEY3vlPOdgsNI0geXSbWQfBrVCH84KZnRwWoN9YMv8XBAPGAWBmZ0x00CLlUCIQKYO754HbCL7sbwvnPUww+uXjwPeB346w+WfDbe4muKtW0SeBZWb2iJmtAz4cTfQio9PooyIidU5nBCIidU6JQESkzikRiIjUOSUCEZE6p0QgIlLnlAhEROqcEoGISJ37/z77OBwJ04mgAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "\n", "\n", "f = sym.lambdify(r, e42f)\n", "\n", "rvals=np.linspace(0,10, 100)\n", "\n", "ax.plot(rvals, f(rvals))\n", " \n", "ax.set_xlabel('r value')\n", "ax.set_ylabel('relative potential')\n", "#ax.set_ylim(-1e-9,1e-9)\n", "ax.grid()" ] }, { "cell_type": "code", "execution_count": 17, "id": "8fdc7e0e", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle 0$" ], "text/plain": [ "0" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2.subs([(th, sym.pi), (q1, -q2)])" ] }, { "cell_type": "code", "execution_count": 18, "id": "6aea4cd8", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\sqrt{\\frac{r^{2}}{2} + \\left(h + \\frac{\\sqrt{2} r}{2}\\right)^{2}}} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\sqrt{\\frac{r^{2}}{2} + \\left(- h + \\frac{\\sqrt{2} r}{2}\\right)^{2}}}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*sqrt(r**2/2 + (h + sqrt(2)*r/2)**2)) - q_2/(4*pi*epsilon_0*sqrt(r**2/2 + (-h + sqrt(2)*r/2)**2))" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2.subs(th, sym.pi/4)\n" ] }, { "cell_type": "code", "execution_count": 19, "id": "59219b3e", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\sqrt{\\frac{r^{2}}{2} + \\left(h + \\frac{\\sqrt{2} r}{2}\\right)^{2}}} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\sqrt{\\frac{r^{2}}{2} + \\left(- h + \\frac{\\sqrt{2} r}{2}\\right)^{2}}}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*sqrt(r**2/2 + (h + sqrt(2)*r/2)**2)) - q_2/(4*pi*epsilon_0*sqrt(r**2/2 + (-h + sqrt(2)*r/2)**2))" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2.subs(th, 3*sym.pi/4)\n" ] }, { "cell_type": "code", "execution_count": 20, "id": "e7351981", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\sqrt{\\frac{r^{2}}{2} + \\left(h - \\frac{\\sqrt{2} r}{2}\\right)^{2}}} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\sqrt{\\frac{r^{2}}{2} + \\left(- h - \\frac{\\sqrt{2} r}{2}\\right)^{2}}}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*sqrt(r**2/2 + (h - sqrt(2)*r/2)**2)) - q_2/(4*pi*epsilon_0*sqrt(r**2/2 + (-h - sqrt(2)*r/2)**2))" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2.subs(th, 5*sym.pi/4)\n" ] }, { "cell_type": "code", "execution_count": 21, "id": "954afa07", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\sqrt{\\frac{r^{2}}{2} + \\left(h - \\frac{\\sqrt{2} r}{2}\\right)^{2}}} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\sqrt{\\frac{r^{2}}{2} + \\left(- h - \\frac{\\sqrt{2} r}{2}\\right)^{2}}}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*sqrt(r**2/2 + (h - sqrt(2)*r/2)**2)) - q_2/(4*pi*epsilon_0*sqrt(r**2/2 + (-h - sqrt(2)*r/2)**2))" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2.subs(th, 7*sym.pi/4)" ] }, { "cell_type": "code", "execution_count": 22, "id": "4ba36651", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\left|{h - r}\\right|} - \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\left(h + r\\right)}$" ], "text/plain": [ "-q_1/(4*pi*epsilon_0*Abs(h - r)) - q_2/(4*pi*epsilon_0*(h + r))" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "e2.subs(th, 3*sym.pi/2)" ] }, { "cell_type": "markdown", "id": "b426e552", "metadata": {}, "source": [ "To work out the vector directions of each charge" ] }, { "cell_type": "code", "execution_count": 60, "id": "aeaa7357", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([['0', '5', '1.60218e-19', 'green'],\n", " ['0', '-5', '-1.60218e-19', 'red']], dtype='" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "#plt.rcParams[\"figure.autolayout\"] = True\n", "for charge in charges:\n", " ax.plot(int(charge[0]), int(charge[1]), 'o', ms=15, color=charge[3])\n", "\n", "#ax.set_xlim((-10,10))\n", "ax.set_ylim((-10,10))\n", "plt.annotate('+', (0, 5), ha='center', va='center', size='large', c='cyan', weight='bold')\n", "plt.annotate('-', (0, -5), ha='center', va='center', size='large', c='yellow', weight='bold')\n", "ax.grid()" ] }, { "cell_type": "code", "execution_count": 29, "id": "14882e69", "metadata": {}, "outputs": [], "source": [ "from scipy.optimize import root_scalar\n", "from functools import partial" ] }, { "cell_type": "code", "execution_count": 30, "id": "93a8b333", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-1.1999729775437505e-10\n", "-4703291.019272046\n" ] } ], "source": [ "print (e3fn(1, sp.pi/2))\n", "print (e3fn(5, sp.pi/2))" ] }, { "cell_type": "code", "execution_count": 31, "id": "66b1ed0a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "5e-11\n", "-4703291.019272046\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "\n", "cval = -5e-11\n", "f = lambda r, th: e3fn(r, th) -cval\n", "\n", "print (f(0,sp.pi/2))\n", "print (f(5,sp.pi/2))\n", "#r1 = root_scalar(f, x0=.5, x1=1, args=(sp.pi/2,), method='secant', bracket=(0,5), rtol=1e-4)\n", "\n", "\n", "\n", "rvals=np.linspace(0,20, 100)\n", "angles = np.arange(0, 4)\n", "for ang in angles:\n", " ff = np.vectorize(lambda x: f(x, sp.pi*ang/8))\n", " ax.plot(rvals, ff(rvals), label=\"{} $\\pi$ / 8\".format(ang))\n", " \n", "ax.legend()\n", "ax.set_xlabel('r value')\n", "ax.set_ylabel('relative potential')\n", "#ax.set_ylim(-1e-9,1e-9)\n", "ax.grid()" ] }, { "cell_type": "code", "execution_count": 32, "id": "500c027d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([], dtype=float64)" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fields = np.array([], dtype=float)\n", "hval = 5\n", "fields" ] }, { "cell_type": "code", "execution_count": 33, "id": "87c0e251", "metadata": {}, "outputs": [], "source": [ "fn = sym.lambdify( [x,y], e1.subs([(eps0, eps0_val),(q1, -elem_charge), (q2, elem_charge), (h,hval)]))" ] }, { "cell_type": "code", "execution_count": 34, "id": "13f565a4", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "-3.344837001159094e-10" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fn(2,3)" ] }, { "cell_type": "code", "execution_count": 35, "id": "dd5327ae", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\frac{q_{1}}{4 \\pi \\epsilon_{0} \\left(x^{2} + \\left(h + y\\right)^{2}\\right)}$" ], "text/plain": [ "q_1/(4*pi*epsilon_0*(x**2 + (h + y)**2))" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle \\frac{q_{2}}{4 \\pi \\epsilon_{0} \\left(x^{2} + \\left(- h + y\\right)^{2}\\right)}$" ], "text/plain": [ "q_2/(4*pi*epsilon_0*(x**2 + (-h + y)**2))" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ev1 = q1/(4*sym.pi * eps0 * (x**2+(y+h)**2)) \n", "ev2 = q2/(4*sym.pi * eps0 * (x**2+(y-h)**2))\n", "display(ev1)\n", "display(ev2)\n" ] }, { "cell_type": "code", "execution_count": 36, "id": "94246456", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle - \\frac{4.52379154890926 \\cdot 10^{-9}}{\\pi \\left(x^{2} + \\left(y + 5\\right)^{2}\\right)} + \\frac{4.52379154890926 \\cdot 10^{-9}}{\\pi \\left(x^{2} + \\left(y - 5\\right)^{2}\\right)}$" ], "text/plain": [ "-4.52379154890926e-9/(pi*(x**2 + (y + 5)**2)) + 4.52379154890926e-9/(pi*(x**2 + (y - 5)**2))" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "evsubs = (ev1+ev2).subs([(eps0, eps0_val),(q1, -elem_charge), (q2, elem_charge), (h,hval)])\n", "evsubs" ] }, { "cell_type": "code", "execution_count": 37, "id": "ed12ecfa", "metadata": {}, "outputs": [], "source": [ "evfn = sym.lambdify([x,y], evsubs)" ] }, { "cell_type": "code", "execution_count": 38, "id": "794e42c6", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1.5881995291020227e-10" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "evfn(2,3)" ] }, { "cell_type": "code", "execution_count": 39, "id": "364a9a31", "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\frac{28235226684.3255 q}{\\pi \\left(x^{2} + y^{2}\\right)}$" ], "text/plain": [ "28235226684.3255*q/(pi*(x**2 + y**2))" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ev = q/(4*sym.pi * eps0 * (x**2+y**2)).subs(eps0, eps0_val) \n", "evfn = sym.lambdify([x,y,q], ev)\n", "display(ev)" ] }, { "cell_type": "code", "execution_count": 40, "id": "bdc11f37", "metadata": {}, "outputs": [], "source": [ "def compute_efield(charges, xin, yin):\n", " total = np.array([0,0], dtype=float)\n", " for x,y,qval in charges[:,:3].astype(float):\n", " efield = evfn(x-xin,y-yin,qval)\n", " #print (x,y,qval, efield)\n", " dvec = np.array([xin-x, yin-y])\n", " #print (dvec/np.linalg.norm(dvec))\n", " total += efield * dvec/np.linalg.norm(dvec)\n", " return (total)\n", "\n" ] }, { "cell_type": "code", "execution_count": 41, "id": "98862af8", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 5.24469307e-11 -1.03034396e-11]\n" ] } ], "source": [ "print (compute_efield(charges, 5,5.00001))" ] }, { "cell_type": "code", "execution_count": 42, "id": "3505d1c4", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 1.22140422e-10, -1.47820086e-10])" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "compute_efield(charges, 2, 3)" ] }, { "cell_type": "code", "execution_count": 43, "id": "aa965522", "metadata": { "scrolled": true }, "outputs": [], "source": [ "def compute_lines(point, num_lines=40, sectors=12, direction=1, segment_length = .12):\n", " #sectors = 24\n", " #num_lines =60\n", " x,y = point\n", "\n", " radial_length = segment_length\n", " radial_offset = 0.1\n", " arr = [[] for i in range(sectors)]\n", "\n", " for idx ,ang in enumerate(np.linspace(0, 2*np.pi, sectors, endpoint=False)):\n", " v = (radial_offset*np.cos(ang)+x, radial_offset*np.sin(ang)+y)\n", " arr[idx].append(v)\n", "\n", " for ii in range(0,num_lines):\n", " for idx ,ang in enumerate(np.linspace(0, 2*np.pi, sectors)):\n", " lx, ly = arr[idx][-1]\n", " efield = compute_efield(charges, lx, ly)\n", " evec = efield/np.linalg.norm(efield)*radial_length*direction\n", " #print ((lx,ly),evec)\n", " eveccum = evec + np.array([lx,ly])\n", " arr[idx].append(tuple(eveccum.tolist()))\n", " return arr\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 83, "id": "1cc9b77b", "metadata": {}, "outputs": [], "source": [ "def charge_lines(charges, num_lines=100, sectors=24, segment_length = .12):\n", " nparrs = []\n", " for charge in charges:\n", " xval = float(charge[0])\n", " yval = float(charge[1])\n", " if float(charge[2]) > 0:\n", " direction = 1\n", " else:\n", " direction = -1\n", " nparr = np.array(compute_lines((xval, yval), num_lines=num_lines, sectors=sectors, segment_length=segment_length, direction = direction ))\n", " nparrs.append(nparr)\n", " \n", " return nparrs" ] }, { "cell_type": "code", "execution_count": 84, "id": "c139738d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([['0', '5', '1.60218e-19', 'green'],\n", " ['0', '-5', '-1.60218e-19', 'red']], dtype='\u001b[0;34m\u001b[0m\n\u001b[1;32m 7\u001b[0m ax\u001b[38;5;241m.\u001b[39mset_title(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mElectric Dipole Field Lines\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 9\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m nparr \u001b[38;5;129;01min\u001b[39;00m nparrs:\n\u001b[0;32m---> 10\u001b[0m \u001b[43max\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43madd_collection\u001b[49m\u001b[43m(\u001b[49m\u001b[43mlines\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 11\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m charge \u001b[38;5;129;01min\u001b[39;00m charges:\n\u001b[1;32m 12\u001b[0m ax\u001b[38;5;241m.\u001b[39mplot(\u001b[38;5;28mfloat\u001b[39m(charge[\u001b[38;5;241m0\u001b[39m]), \u001b[38;5;28mfloat\u001b[39m(charge[\u001b[38;5;241m1\u001b[39m]), \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mo\u001b[39m\u001b[38;5;124m'\u001b[39m, ms\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m10\u001b[39m, color\u001b[38;5;241m=\u001b[39mcharge[\u001b[38;5;241m3\u001b[39m])\n", "File \u001b[0;32m~/venvs/jupyter-notebook/lib/python3.8/site-packages/matplotlib/axes/_base.py:2234\u001b[0m, in \u001b[0;36m_AxesBase.add_collection\u001b[0;34m(self, collection, autolim)\u001b[0m\n\u001b[1;32m 2232\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_children\u001b[38;5;241m.\u001b[39mappend(collection)\n\u001b[1;32m 2233\u001b[0m collection\u001b[38;5;241m.\u001b[39m_remove_method \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_children\u001b[38;5;241m.\u001b[39mremove\n\u001b[0;32m-> 2234\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_set_artist_props\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcollection\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 2236\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m collection\u001b[38;5;241m.\u001b[39mget_clip_path() \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 2237\u001b[0m collection\u001b[38;5;241m.\u001b[39mset_clip_path(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mpatch)\n", "File \u001b[0;32m~/venvs/jupyter-notebook/lib/python3.8/site-packages/matplotlib/axes/_base.py:1101\u001b[0m, in \u001b[0;36m_AxesBase._set_artist_props\u001b[0;34m(self, a)\u001b[0m\n\u001b[1;32m 1099\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m_set_artist_props\u001b[39m(\u001b[38;5;28mself\u001b[39m, a):\n\u001b[1;32m 1100\u001b[0m \u001b[38;5;124;03m\"\"\"Set the boilerplate props for artists added to Axes.\"\"\"\u001b[39;00m\n\u001b[0;32m-> 1101\u001b[0m \u001b[43ma\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mset_figure\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfigure\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1102\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m a\u001b[38;5;241m.\u001b[39mis_transform_set():\n\u001b[1;32m 1103\u001b[0m a\u001b[38;5;241m.\u001b[39mset_transform(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mtransData)\n", "File \u001b[0;32m~/venvs/jupyter-notebook/lib/python3.8/site-packages/matplotlib/artist.py:740\u001b[0m, in \u001b[0;36mArtist.set_figure\u001b[0;34m(self, fig)\u001b[0m\n\u001b[1;32m 734\u001b[0m \u001b[38;5;66;03m# if we currently have a figure (the case of both `self.figure`\u001b[39;00m\n\u001b[1;32m 735\u001b[0m \u001b[38;5;66;03m# and *fig* being none is taken care of above) we then user is\u001b[39;00m\n\u001b[1;32m 736\u001b[0m \u001b[38;5;66;03m# trying to change the figure an artist is associated with which\u001b[39;00m\n\u001b[1;32m 737\u001b[0m \u001b[38;5;66;03m# is not allowed for the same reason as adding the same instance\u001b[39;00m\n\u001b[1;32m 738\u001b[0m \u001b[38;5;66;03m# to more than one Axes\u001b[39;00m\n\u001b[1;32m 739\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfigure \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m--> 740\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mRuntimeError\u001b[39;00m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mCan not put single artist in \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 741\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmore than one figure\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 742\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfigure \u001b[38;5;241m=\u001b[39m fig\n\u001b[1;32m 743\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfigure \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfigure \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m:\n", "\u001b[0;31mRuntimeError\u001b[0m: Can not put single artist in more than one figure" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "for x,y in nparr[:,0]:\n", " ax.plot(x,y, 'o', color='blue')\n", "ax.grid()\n", "ax.set_xlim(-10, 10)\n", "ax.set_ylim(-10,10)\n", "ax.set_title(\"Electric Dipole Field Lines\")\n", "\n", "for nparr in nparrs:\n", " lines = LineCollection(nparr)\n", " ax.add_collection(lines)\n", "for charge in charges:\n", " ax.plot(float(charge[0]), float(charge[1]), 'o', ms=10, color=charge[3])" ] }, { "cell_type": "code", "execution_count": 87, "id": "3503ef5f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([['0', '5', '1.60218e-19', 'green'],\n", " ['0', '-5', '1.60218e-19', 'green']], dtype='" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "for x,y in nparr[:,0]:\n", " ax.plot(x,y, 'o', color='blue')\n", "ax.grid()\n", "ax.set_xlim(-10, 10)\n", "ax.set_ylim(-10,10)\n", "ax.set_title(\"Electric Dipole Field Lines\")\n", "\n", "for nparr in nparrs:\n", " lines = LineCollection(nparr)\n", " ax.add_collection(lines)\n", "for charge in charges:\n", " ax.plot(float(charge[0]), float(charge[1]), 'o', ms=10, color=charge[3])" ] }, { "cell_type": "code", "execution_count": 132, "id": "7ca7a87e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([['5', '5', '1.60218e-19', 'green'],\n", " ['-5', '5', '-1.60218e-19', 'red'],\n", " ['0', '0', '1.60218e-19', 'green']], dtype='" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "for x,y in nparr[:,0]:\n", " ax.plot(x,y, 'o', color='blue')\n", "ax.grid()\n", "ax.set_xlim(-10, 10)\n", "ax.set_ylim(-10,10)\n", "ax.set_title(\"Electric Dipole Field Lines\")\n", "\n", "for nparr in nparrs:\n", " lines = LineCollection(nparr)\n", " ax.add_collection(lines)\n", "for charge in charges:\n", " ax.plot(float(charge[0]), float(charge[1]), 'o', ms=10, color=charge[3])" ] }, { "cell_type": "code", "execution_count": 103, "id": "dde14680", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([['-5', '0', '1.60218e-19', 'green'],\n", " ['0', '0', '-1.60218e-19', 'red'],\n", " ['5', '0', '1.60218e-19', 'green']], dtype='" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "for x,y in nparr[:,0]:\n", " ax.plot(x,y, 'o', color='blue')\n", "ax.grid()\n", "ax.set_xlim(-10, 10)\n", "ax.set_ylim(-5,5)\n", "ax.set_title(\"Electric Dipole Field Lines\")\n", "\n", "for nparr in nparrs:\n", " lines = LineCollection(nparr)\n", " ax.add_collection(lines)\n", "for charge in charges:\n", " ax.plot(float(charge[0]), float(charge[1]), 'o', ms=10, color=charge[3])" ] }, { "cell_type": "code", "execution_count": 106, "id": "dccb2b62", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array(['5', '0', '1.60218e-19', 'green'], dtype='" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "for x,y in nparr[:,0]:\n", " ax.plot(x,y, 'o', color='blue')\n", "ax.grid()\n", "ax.set_xlim(-10, 10)\n", "ax.set_ylim(-5,5)\n", "ax.set_title(\"Electric Dipole Field Lines\")\n", "\n", "for nparr in nparrs:\n", " lines = LineCollection(nparr)\n", " ax.add_collection(lines)\n", "for charge in charges:\n", " ax.plot(float(charge[0]), float(charge[1]), 'o', ms=10, color=charge[3])" ] }, { "cell_type": "code", "execution_count": 119, "id": "70bfd8ad", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([['-5', '5', '1.60218e-19', 'green'],\n", " ['5', '5', '-1.60218e-19', 'red'],\n", " ['5', '-5', '1.60218e-19', 'green'],\n", " ['-5', '-5', '-1.60218e-19', 'red']], dtype='" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "for x,y in nparr[:,0]:\n", " ax.plot(x,y, 'o', color='blue')\n", "ax.grid()\n", "ax.set_xlim(-10, 10)\n", "ax.set_ylim(-10, 10)\n", "ax.set_title(\"Electric Dipole Field Lines\")\n", "\n", "for nparr in nparrs:\n", " lines = LineCollection(nparr)\n", " ax.add_collection(lines)\n", "for charge in charges:\n", " ax.plot(float(charge[0]), float(charge[1]), 'o', ms=10, color=charge[3])" ] }, { "cell_type": "code", "execution_count": null, "id": "d2ce745c", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }