{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Eksamen i Fys1120 H2023 - Oppgave 1\n",
    "*Du kan totalt få 100 poeng i denne oppgaven. Maksimal poengsum er oppgitt for hver deloppgave.*\n",
    "\n",
    "Vi skal i denne oppgaven studere det elektriske feltet rundt en dipol som består av to ringformede ladninger.\n",
    "Vi skal først studere en enkelt ringladning og deretter se på to ringladninger med motsatt ladning."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Potensial og felt fra en ringladning\n",
    "Vi ser på en enkelt ringladning med ladning $Q$ som ligger i $xy$-planet. Ringladningen består av en tynn ring med uniform linjeladningstetthet. Den har sentrum i origo og radius $a$. Du kan anta at ringladningen ligger i vakuum."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Oppgave (a) (10 poeng)\n",
    "Vis at det elektriske potensialet langs $z$-aksen er gitt som\n",
    "\n",
    "$$V(z) = \\frac{Q}{4 \\pi \\epsilon_0} \\frac{1}{\\sqrt{z^2 + a^2}}$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "*(Svar ved å trykke på cellen under og skriv svaret her. Du kan godt bruke mer enn en celle til å skrive svaret ditt.)*\n",
    "\n",
    "(__Tips__ Du kan trykke på oppgave-cellene også og kopiere LaTeX koden derfra hvis du trenger den)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Oppgave (b) (10 poeng)\n",
    "Finn $z$-komponenten av det elektriske feltet langs $z$-aksen, $E_z(z)$."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Eksempel\n",
    "Som en hjelp til å løse oppgaven, kan du ta utgangspunkt i dette eksempelet. Merk at dette eksempelet løser et annet problem enn det du skal løse i denne oppgaven, men du kan bruke deler av koden fra dette eksempelet til å løse oppgavene nedenfor hvis du ønsker det.\n",
    "\n",
    "Det elektriske potensialet fra en linje med ladning $q = 1\\text{mC}$ langs $x$-aksen fra $x=-a$ til $x=a$ kan beregnes og visualiseres ved hjelp av følgende program:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "def epotlist(r,Q,R):\n",
    "    epsilon0 = 8.854e-12\n",
    "    K = 1.0/(4.0*np.pi*epsilon0)\n",
    "    V = 0.0\n",
    "    for i in range(len(R)):\n",
    "        Ri = r - R[i]\n",
    "        qi = Q[i]\n",
    "        Rinorm = np.linalg.norm(Ri)\n",
    "        V = V + qi/Rinorm\n",
    "    V = V*K\n",
    "    return V\n",
    "def findpotential(R,Q,y0,y1,z0,z1,Ny,Nz):\n",
    "    y = np.linspace(y0,y1,Ny)\n",
    "    z = np.linspace(z0,z1,Nz)\n",
    "    ry,rz = np.meshgrid(y,z)\n",
    "    V = np.zeros((Ny,Nz),float)\n",
    "    for i in range(len(ry.flat)):\n",
    "        r = np.array([0.0,ry.flat[i],rz.flat[i]])\n",
    "        V.flat[i] = epotlist(r,Q,R)\n",
    "    return y,z,ry,rz,V"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "Q = []\n",
    "R = []\n",
    "a = 1.0\n",
    "q = 1.0e-3\n",
    "nline = 100\n",
    "for i in range(nline):\n",
    "    x = -a + i/nline*(2*a)\n",
    "    y = 0\n",
    "    z = 0\n",
    "    dq = q/nline\n",
    "    R.append(np.array([x,y,z]))\n",
    "    Q.append(dq)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "y,z,ry,rz,V = findpotential(R,Q,-2*a,2*a,-2*a,2*a,30,30)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-2.0, 2.0, -2.0, 2.0)"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x432 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(6,6))\n",
    "plt.contourf(ry,rz,V)\n",
    "plt.colorbar()\n",
    "plt.axis('equal')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Oppgave (c) (15 poeng)\n",
    "Skriv et program som finner det elektriske potensialet fra ringladningen i $yz$-planet og visualiserer dette i et passende område slik at potensialets form klart kommer frem."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Oppgave (d) (15 poeng)\n",
    "\n",
    "Kontroller resultatet fra programmet ditt ved å sammenlikne med den eksakte løsningen du fant i oppgave (a). Vis ved et plot at beregningen fra programmet sammenfaller med det teoretiske resultatet langs $z$-aksen.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Dipol av to ringladninger\n",
    "Vi skal nå studere et dipol-aktig system som består av to ringladninger: \n",
    "- En ringladning med ladning $Q = 1\\text{mC}$ og radius $a$ med sentrum i $(0,0,a)$ som ligger i et plan parallellt med $xy$-planet.\n",
    "- En ringladning med ladning $Q = -1\\text{mC}$ og radius $a$ med sentrum i $(0,0,-a)$ som ligger i et plan parallellt med $xy$-planet.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Oppgave (e) (15 poeng)\n",
    "Skriv et program som finner det elektriske potensialet i $yz$-planet for dette systemet og visualiserer det i et passende område så potensialets form klart kommer frem."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Oppgave (f) (15 poeng)\n",
    "Det elektriske potensialet $V(\\vec{r})$ i et punkt $\\vec{r}$ fra en dipol med dipolmoment $\\vec{p} = q \\vec{d}$ med sentrum i origo er tilnærmet lik:\n",
    "\n",
    "$$V(\\vec{r}) = \\frac{1}{4 \\pi \\epsilon_0}\\frac{\\vec{p}\\cdot \\hat{r}}{r^2}$$\n",
    "\n",
    "hvor $\\hat{r} = \\vec{r}/r$, $r = |\\vec{r}|$ og $\\vec{d}$ er en vektor fra den negative ladningen $-q$ til den positive ladningen $q$.\n",
    "\n",
    "Sammenlikn det elektriske potensialet fra programmet med det tilnærmede uttrykket for en dipol langs en linje som er parallell med $z$-aksen og går gjennom $(2a,0,0)$ ved å plotte de to uttrykkene i samme plot."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Oppgave (g) (10 poeng)\n",
    "Visualiser det elektriske feltet fra de to ringladningene i $yz$-planet. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Oppgave (h) (10 poeng)\n",
    "\n",
    "Bruk modellen til å finne $E_z(x,0,0)$ for systemet som består av de to ringladningene.\n",
    "\n",
    "*(Hint: Finn det elektriske potensialet umiddelbart over og under $xy$-planet langs en linje langs $x$-aksen og bruk dette til å finne $E_z$)*"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
