tprak

Theoretical Physics Practical Training
git clone git://popovic.xyz/tprak.git
Log | Files | Refs

commit 6deaa25f4b150ff7d84b46fcd9776899a2d3f19b
parent 63e9a48296e8cae98f806162f54ac96e5a8fb104
Author: miksa <milutin@popovic.xyz>
Date:   Thu,  1 Jul 2021 14:58:24 +0200

done my part of sesh6

Diffstat:
Msesh6/calc/.ipynb_checkpoints/Untitled-checkpoint.ipynb | 398++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
Asesh6/calc/.ipynb_checkpoints/plots-checkpoint.ipynb | 274+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dsesh6/calc/Untitled.ipynb | 189-------------------------------------------------------------------------------
Asesh6/calc/omnes_bw.png | 0
Asesh6/calc/plots.py | 104+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asesh6/calc/section2.png | 0
Asesh6/src/main.pdf | 0
Asesh6/src/main.tex | 659+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asesh6/src/omnes_bw.png | 0
Asesh6/src/plots_sec2.png | 0
Asesh6/src/uni.bib | 30++++++++++++++++++++++++++++++
11 files changed, 1463 insertions(+), 191 deletions(-)

diff --git a/sesh6/calc/.ipynb_checkpoints/Untitled-checkpoint.ipynb b/sesh6/calc/.ipynb_checkpoints/Untitled-checkpoint.ipynb @@ -1,6 +1,400 @@ { - "cells": [], - "metadata": {}, + "cells": [ + { + "cell_type": "code", + "execution_count": 4, + "id": "72f8e84d", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from sympy import *\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "bb9b1221", + "metadata": {}, + "outputs": [], + "source": [ + "w_00 = 2\n", + "gamma = w_00/20\n", + "G_np = lambda w: 1/(-w**2 - 1j*gamma*w + w_00**2)\n", + "w_np = np.linspace(w_00-2*gamma, w_00+2*gamma, 200)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "0829358d", + "metadata": {}, + "outputs": [], + "source": [ + "w = Symbol('w', real=True)\n", + "z = Symbol('z')\n", + "g = Symbol('g', real=True)\n", + "w_0 = Symbol('w_0', real=True)\n", + "\n", + "G = 1/(-w**2 - 1j*g*w + w_0**2)\n", + "G_n = np.abs(G.subs([(w, w_00), (w_0, w_00), (g, gamma)]))**2\n", + "\n", + "#equation for half maximum solve for w\n", + "solutions = solve(Eq(1/2*G.subs(w, w_0)**2, re(G)**2 + im(G)**2), w)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "27652162", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle 3.34695259659415$" + ], + "text/plain": [ + "3.34695259659415" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "a_1 = solutions[1].subs([(w_0, w_00), (g, gamma)])\n", + "f_1 = G.subs([(w, a_1), (g, gamma), (w_0, w_00)])\n", + "f_1 = re(f_1)**1 + im(f_1)**1\n", + "\n", + "a_2 = solutions[3].subs([(w_0, w_00), (g, gamma)])\n", + "f_2 = G.subs([(w, a_2), (g, gamma), (w_0, w_00)])\n", + "f_2 = re(f_2)**2 + im(f_2)**2\n" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "a02f8ad6", + "metadata": {}, + "outputs": [ + { + "ename": "RecursionError", + "evalue": "maximum recursion depth exceeded in __instancecheck__", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mRecursionError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-19-7dab2edc9c38>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscatter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mgamma\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mw_00\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mG_n\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mc\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'r'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscatter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ma_1\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mw_00\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mabs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mf_1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mG_n\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mc\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'r'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 8\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscatter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ma_2\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mw_00\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mabs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mf_2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mG_n\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mc\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'r'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlinspace\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mw_00\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mgamma\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mw_00\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0mgamma\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m20\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mw_00\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mf_1\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mones\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m20\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mG_n\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/expr.py\u001b[0m in \u001b[0;36m__abs__\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 190\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m__abs__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 191\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0msympy\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mAbs\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 192\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mAbs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 193\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 194\u001b[0m \u001b[0;34m@\u001b[0m\u001b[0msympify_return\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'other'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'Expr'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mNotImplemented\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/cache.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 70\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 71\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 72\u001b[0;31m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 73\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 74\u001b[0m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/function.py\u001b[0m in \u001b[0;36m__new__\u001b[0;34m(cls, *args, **options)\u001b[0m\n\u001b[1;32m 471\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 472\u001b[0m \u001b[0mevaluate\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0moptions\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'evaluate'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mglobal_parameters\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mevaluate\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 473\u001b[0;31m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msuper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__new__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcls\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 474\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mevaluate\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0misinstance\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mresult\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcls\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 475\u001b[0m \u001b[0mpr2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcls\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_should_evalf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ma\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0ma\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/cache.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 70\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 71\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 72\u001b[0;31m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 73\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 74\u001b[0m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/function.py\u001b[0m in \u001b[0;36m__new__\u001b[0;34m(cls, *args, **options)\u001b[0m\n\u001b[1;32m 283\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 284\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mevaluate\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 285\u001b[0;31m \u001b[0mevaluated\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcls\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0meval\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 286\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mevaluated\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 287\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mevaluated\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/functions/elementary/complexes.py\u001b[0m in \u001b[0;36meval\u001b[0;34m(cls, arg)\u001b[0m\n\u001b[1;32m 576\u001b[0m \u001b[0ma\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mb\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mlog\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mbase\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mas_real_imag\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 577\u001b[0m \u001b[0mz\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0ma\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mI\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mb\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 578\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mexp\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mre\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mexponent\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mz\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 579\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0misinstance\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0marg\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mexp\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 580\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mexp\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mre\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0marg\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/cache.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 70\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 71\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 72\u001b[0;31m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 73\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 74\u001b[0m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/function.py\u001b[0m in \u001b[0;36m__new__\u001b[0;34m(cls, *args, **options)\u001b[0m\n\u001b[1;32m 471\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 472\u001b[0m \u001b[0mevaluate\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0moptions\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'evaluate'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mglobal_parameters\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mevaluate\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 473\u001b[0;31m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msuper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__new__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcls\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 474\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mevaluate\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0misinstance\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mresult\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcls\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 475\u001b[0m \u001b[0mpr2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcls\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_should_evalf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ma\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0ma\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/cache.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 70\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 71\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 72\u001b[0;31m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 73\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 74\u001b[0m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/function.py\u001b[0m in \u001b[0;36m__new__\u001b[0;34m(cls, *args, **options)\u001b[0m\n\u001b[1;32m 283\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 284\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mevaluate\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 285\u001b[0;31m \u001b[0mevaluated\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcls\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0meval\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 286\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mevaluated\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 287\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mevaluated\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/functions/elementary/complexes.py\u001b[0m in \u001b[0;36meval\u001b[0;34m(cls, arg)\u001b[0m\n\u001b[1;32m 94\u001b[0m \u001b[0;31m# impossible, don't try to do re(arg) again\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 95\u001b[0m \u001b[0;31m# (because this is what we are trying to do now).\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 96\u001b[0;31m \u001b[0mreal_imag\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mterm\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mas_real_imag\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mignore\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0marg\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 97\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mreal_imag\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 98\u001b[0m \u001b[0mexcluded\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreal_imag\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/mul.py\u001b[0m in \u001b[0;36mas_real_imag\u001b[0;34m(self, deep, **hints)\u001b[0m\n\u001b[1;32m 796\u001b[0m \u001b[0maddterms\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mS\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mOne\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 797\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0ma\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 798\u001b[0;31m \u001b[0mr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mi\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0ma\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mas_real_imag\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 799\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mis_zero\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 800\u001b[0m \u001b[0mcoeffr\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mr\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/functions/elementary/exponential.py\u001b[0m in \u001b[0;36mas_real_imag\u001b[0;34m(self, deep, **hints)\u001b[0m\n\u001b[1;32m 890\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mdeep\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 891\u001b[0m \u001b[0msarg\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexpand\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdeep\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mhints\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 892\u001b[0;31m \u001b[0mabs\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mAbs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msarg\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 893\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mabs\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0msarg\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 894\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mS\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mZero\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "... last 12 frames repeated, from the frame below ...\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/sympy/core/cache.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 70\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 71\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 72\u001b[0;31m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 73\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 74\u001b[0m \u001b[0mretval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mRecursionError\u001b[0m: maximum recursion depth exceeded in __instancecheck__" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 720x504 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize=[10,7])\n", + "#plt.plot(w_np/w_00, np.abs(G_np(w_np))**2/G_n)\n", + "\n", + "plt.plot(w_np/w_00, np.pi*np.angle(G_np(w_np))/G_n)\n", + "\n", + "plt.scatter(1, 1/(gamma*w_00)**2/G_n, c='r')\n", + "plt.scatter(a_1/w_00, f_1/G_n, c='r')\n", + "plt.scatter(a_2/w_00, f_2/G_n, c='r')\n", + "plt.plot(np.linspace(w_00-gamma/2, w_00+gamma/2, 20)/w_00, f_1*np.ones(20)/G_n)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a2d94145", + "metadata": {}, + "outputs": [], + "source": [ + "# KAPITEL 5\n", + "M_rho = 0.77\n", + "G_rho = 0.15\n", + "M_pi = 0.14\n", + "\n", + "def F_BW(s):\n", + " sigma = lambda x: np.sqrt(1- 4*M_pi**2/x)\n", + " G = G_rho* s/M_rho**2* (sigma(s)/sigma(M_rho**2))**3 * np.heaviside(s- 4*M_pi**2, 0 )\n", + " return M_rho**2 / (M_rho**2 - s - 1j*M_rho*G)\n", + "\n", + "delta = lambda x: np.arctan2(-np.imag(F_BW(x)), np.real(F_BW(x)))\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "04bd8956", + "metadata": {}, + "outputs": [], + "source": [ + "# P.V.\n", + "from scipy.integrate import quad\n", + "\n", + "s_0 = 4*M_pi**2\n", + "def integrand(s_, x):\n", + " return (delta(s_) + delta(x))/(s_*(s_ - x))\n", + "\n", + "def integral(x):\n", + " return quad(integrand, s_0, np.inf, args=(x))[0]\n", + "\n", + "s = np.linspace(0.1, 1, 100)\n", + "\n", + "I = np.vectorize(integral)\n", + "first = s/np.pi * I(s)\n", + "second = delta(s) * 1/np.pi * np.log(s_0/(s-s_0))\n", + "\n", + "F = np.exp(first + second + 1j * delta(s))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f6550847", + "metadata": {}, + "outputs": [], + "source": [ + "plt.figure(figsize=[10, 7])\n", + "plt.plot(s, np.abs(F_BW(s))**2)\n", + "#plt.plot(s, np.abs(F)**2/10)\n", + "#plt.plot(s, delta(s))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "143b3c10", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a522a03a", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "388772b7", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "af0ee465", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7fcf0bd2", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5fabf901", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "317204c3", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0407e1d7", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7e87567a", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9be10a28", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6398184f", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f5ba56fa", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d2930adc", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e937609d", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b34c457e", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fa165a35", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7676cda5", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7a2520af", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "14c923da", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "02d369b7", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d41a4456", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 188, + "id": "31c70a79", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "154a6957", + "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.9.5" + } + }, "nbformat": 4, "nbformat_minor": 5 } diff --git a/sesh6/calc/.ipynb_checkpoints/plots-checkpoint.ipynb b/sesh6/calc/.ipynb_checkpoints/plots-checkpoint.ipynb @@ -0,0 +1,274 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "import scipy as sp\n", + "from scipy import integrate\n", + "import numpy as np \n", + "import matplotlib.pyplot as plt \n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "global M_r; M_r = 0.77\n", + "global G_r; G_r = 0.15\n", + "global M_pi; M_pi = 0.14\n", + "global s0; s0 = 4*M_pi\n", + "\n", + "s = np.linspace(0.01, 1, 1000, endpoint=True)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "def Fvpi(s):\n", + " p1 = (M_r**2)\n", + " p2 = (M_r**2 - s - M_r*G_fct(s)*1j)\n", + " pf = p1/p2\n", + " return pf\n", + "\n", + "def G_fct(s):\n", + " p1 = (G_r*s)/(M_r**2)\n", + " p2 = ((sig(s))/(sig(M_r**2)))**3\n", + " p3 = np.heaviside(s - 4*M_pi**2, 0)\n", + " pf = p1*p2*p3\n", + " return pf\n", + "\n", + "def sig(a):\n", + " p = np.sqrt(1 - 4*M_pi**2/a)\n", + " return p\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "def Omega(s):\n", + " p1 = (s/np.pi)*int_del(s) \n", + " p2 = del_pp(s)*1j\n", + " p = np.exp(p1+p2)\n", + " return p\n", + "\n", + "def del_pp(s):\n", + " return np.angle( Fvpi(s) ) \n", + "\n", + "def int_del(s):\n", + " return integrate.quad( integrand , s0, np.inf, args=(s) )\n", + "\n", + "def integrand(x, s):\n", + " return del_pp(x)/(x*(x - s))\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "<ipython-input-4-20fc573e6fdd>:15: RuntimeWarning: invalid value encountered in sqrt\n", + " p = np.sqrt(1 - 4*M_pi**2/a)\n", + "<ipython-input-4-20fc573e6fdd>:4: RuntimeWarning: invalid value encountered in true_divide\n", + " pf = p1/p2\n" + ] + }, + { + "ename": "TypeError", + "evalue": "only size-1 arrays can be converted to Python scalars", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-7-7824316803cc>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0mfig\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfigure\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfigsize\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m10.24\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m7.68\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mabs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mFvpi\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"-b\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlabel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34mr'$| F_\\pi^V(s)_{BW} |$'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 3\u001b[0;31m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mabs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mOmega\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"-r\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlabel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34mr'$ |\\Omega(s)| $'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 4\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlegend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mloc\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"best\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m<ipython-input-5-868dbe201a21>\u001b[0m in \u001b[0;36mOmega\u001b[0;34m(s)\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mOmega\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mp1\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpi\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mint_del\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 3\u001b[0m \u001b[0mp2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdel_pp\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0;36m1j\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexp\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mp1\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0mp2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mp\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m<ipython-input-5-868dbe201a21>\u001b[0m in \u001b[0;36mint_del\u001b[0;34m(s)\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mint_del\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 11\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mintegrate\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mquad\u001b[0m\u001b[0;34m(\u001b[0m \u001b[0mintegrand\u001b[0m \u001b[0;34m,\u001b[0m \u001b[0ms0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minf\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0margs\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 12\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mintegrand\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/scipy/integrate/quadpack.py\u001b[0m in \u001b[0;36mquad\u001b[0;34m(func, a, b, args, full_output, epsabs, epsrel, limit, points, weight, wvar, wopts, maxp1, limlst)\u001b[0m\n\u001b[1;32m 349\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 350\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mweight\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 351\u001b[0;31m retval = _quad(func, a, b, args, full_output, epsabs, epsrel, limit,\n\u001b[0m\u001b[1;32m 352\u001b[0m points)\n\u001b[1;32m 353\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.9/site-packages/scipy/integrate/quadpack.py\u001b[0m in \u001b[0;36m_quad\u001b[0;34m(func, a, b, args, full_output, epsabs, epsrel, limit, points)\u001b[0m\n\u001b[1;32m 463\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0m_quadpack\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_qagse\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfunc\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0ma\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mb\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mfull_output\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mepsabs\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mepsrel\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlimit\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 464\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 465\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0m_quadpack\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_qagie\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfunc\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mbound\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0minfbounds\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mfull_output\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mepsabs\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mepsrel\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlimit\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 466\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 467\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0minfbounds\u001b[0m \u001b[0;34m!=\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mTypeError\u001b[0m: only size-1 arrays can be converted to Python scalars" + ] + }, + { + "data": { + "image/png": "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LLMM7LVX6iQLZ5ttYI014snykqqH5UpSWfrii3iUwYEHxrVLeRRCHL16/nkYPTp1GkmlYrmSVJb694eZM+Ggg1InqZ8//CHeN9i3b+okkkrFciWp7GRZvD5myy1hrbVSp6mfZZaJ517deSdMmZI6jaRSsFxJKjsvvQTvvAM9e6ZOUhi9esE338ADD6ROIqkULFeSyk6/frDootClS+okhfHb38Kqq8Ktt6ZOIqkULFeSysrkyXDPPbFY5eVE9vlp0AB69Igntn/ySeo0korNciWprAweDJMmwcEHp05SWD16xLVkd92VOomkYrNcSSor/frFs6G22ip1ksJq2xa23hruuCOWLEmVy3IlqWx8+CE8+2w8fiGE1GkKr0ePuFB/+PDUSSQVk+VKUtmYPWXWrVvaHMXSpQs0bRqPZZBUuSxXkspClsVLjrfZBlZaKXWa4lh8cdhjDxg4EKZNS51GUrFYriSVhREj4L33KnfUarYePeKZV48/njqJpGKxXEkqCwMGxDsEO3dOnaS4OnaEZZeNC9slVSbLlaTkZsyIU2WdOsESS6ROU1yNGsEBB8RLqb/5JnUaScVguZKU3FNPwZdfxtJRDXr0gOnT42GpkiqP5UpScnfdFUesdt01dZLS2GADWG89uPvu1EkkFYPlSlJSkybB/ff/dExBtejaFV58EcaNS51EUqFZriQl9dBD8OOPlb9L8L/tt19879SgVHksV5KSGjAAVlml8q67mZ9VV4UttogL+SVVFsuVpGT+9S948knYf39oUIW/jbp2hX/+E95+O3USSYVUhb/OJJWLe++FmTOrb0pwti5dYql09EqqLJYrScncey+svz6ss07qJGkstxxst10sV1mWOo2kQrFcSUri00/jbrkuXVInSatrVxgzJl7/I6kyWK4kJTF4cHy/zz5pc6S2117QuLFTg1IlsVxJSmLQoHiYZrt2qZOkteSSsMsucYq0tjZ1GkmFYLmSVHKffBKnBKt91Gq2rl1h/Hh47rnUSSQVguVKUsndd198b7mKOnWCRRd1alCqFJYrSSVXU+OU4M81bw677x6nSqdPT51GUn1ZriSV1CefwLBh7hL8b127woQJ8PTTqZNIqi/LlaSScpfgnHXsCC1bxtErSflmuZJUUoMGwYYbwhprpE5SXpo2jVODDzzg1KCUd5YrSSUze0rQUas522cf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\n", + "text/plain": [ + "<Figure size 737.28x552.96 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig = plt.figure(figsize=(10.24, 7.68))\n", + "plt.plot(s, np.abs(Fvpi(s)), \"-b\", label=r'$| F_\\pi^V(s)_{BW} |$')\n", + "plt.plot(s, np.abs(Omega(s), \"-r\", label=r'$ |\\Omega(s)| $') )\n", + "plt.legend(loc=\"best\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "interpreter": { + "hash": "3aff35d366b980e568cc03d2d00c83eac08dd05ed9a824e247edc85e357eb300" + }, + "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.9.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/sesh6/calc/Untitled.ipynb b/sesh6/calc/Untitled.ipynb @@ -1,189 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 118, - "id": "72f8e84d", - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "from sympy import *\n", - "\n" - ] - }, - { - "cell_type": "code", - "execution_count": 221, - "id": "bb9b1221", - "metadata": {}, - "outputs": [], - "source": [ - "w_00 = 2\n", - "gamma = w_00/20\n", - "G_np = lambda w: 1/(-w**2 - 1j*gamma*w + w_00**2)\n", - "w_np = np.linspace(w_00-2*gamma, w_00+2*gamma, 200)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "0829358d", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": 222, - "id": "27652162", - "metadata": {}, - "outputs": [], - "source": [ - "w = Symbol('w', real=True)\n", - "z = Symbol('z')\n", - "g = Symbol('g', real=True)\n", - "w_0 = Symbol('w_0', real=True)\n", - "\n", - "G = 1/(-w**2 - 1j*g*w + w_0**2)\n", - "\n", - "#equation for half maximum solve for w\n", - "solutions = solve(Eq(1/2*1/(g*w_0)**2, re(G)**2 + im(G)**2), w)\n", - "\n", - "\n", - "a_1 = solutions[1].subs([(w_0, w_00), (g, gamma)])\n", - "f_1 = abs(G.subs([(w, a_1), (g, gamma), (w_0, w_00)]))**2\n", - "\n", - "a_2 = solutions[3].subs([(w_0, w_00), (g, gamma)])\n", - "f_2 = abs(G.subs([(w, a_2), (g, gamma), (w_0, w_00)]))**2" - ] - }, - { - "cell_type": "code", - "execution_count": 230, - "id": "a02f8ad6", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[<matplotlib.lines.Line2D at 0x7f728d3cdbb0>]" - ] - }, - "execution_count": 230, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 720x504 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "plt.figure(figsize=[10,7])\n", - "plt.plot(w_np/w_00, np.abs(G_np(w_np))**2)\n", - "\n", - "plt.plot(w_np/w_00, np.pi*np.angle(G_np(w_np)))\n", - "\n", - "plt.scatter(1, 1/(gamma*w_00)**2, c='r')\n", - "plt.scatter(a_1/w_00, f_1, c='r')\n", - "plt.scatter(a_2/w_00, f_2, c='r')\n", - "plt.plot(np.linspace(w_00-gamma/2, w_00+gamma/2, 20)/w_00, f_1*np.ones(20))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "a2d94145", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "04bd8956", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "f6550847", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "143b3c10", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "a522a03a", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "388772b7", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "af0ee465", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "7fcf0bd2", - "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.9.5" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/sesh6/calc/omnes_bw.png b/sesh6/calc/omnes_bw.png Binary files differ. diff --git a/sesh6/calc/plots.py b/sesh6/calc/plots.py @@ -0,0 +1,104 @@ +import numpy as np +import matplotlib.pyplot as plt +import matplotlib +from sympy import * +from scipy.integrate import quad + +font = {'family' : 'sans', + 'weight' : 'bold', + 'size' : 18} + +matplotlib.rc('font', **font) +matplotlib.matplotlib_fname() + +def main(): + # numpy representation + w_00 = 1 + gamma = w_00/20 + G_np = lambda w: 1/(-w**2 - 1j*gamma*w + w_00**2) + w_np = np.linspace(w_00-2*gamma, w_00+2*gamma, 200) + + # sympy representation + w = Symbol('w', real=True) + z = Symbol('z') + g = Symbol('g', real=True) + w_0 = Symbol('w_0', real=True) + + G = 1/(-w**2 - 1j*g*w + w_0**2) + G_n = np.abs(G.subs([(w, w_00), (w_0, w_00), (g, gamma)]))**2 + + #equation for half maximum solve for w + solutions = solve(Eq(1/2*1/(g*w_0)**2, abs(G)**2), w) + + so = solve(Eq(0, 1/G.subs(w, z)), z) + + a_1 = solutions[1].subs([(w_0, w_00), (g, gamma)]) + f_1 = abs(G.subs([(w, a_1), (g, gamma), (w_0, w_00)]))**2 + + a_2 = solutions[3].subs([(w_0, w_00), (g, gamma)]) + f_2 = abs(G.subs([(w, a_2), (g, gamma), (w_0, w_00)]))**2 + fig, ax= plt.subplots(1, 2, figsize=[17,7]) + + # Plots for |G(w)|^2 and arg(G(w)) + for i in range(len(ax)): + ax[i].spines['right'].set_visible(False) + ax[i].spines['top'].set_visible(False) + ax[i].yaxis.set_ticks_position('left') + ax[i].xaxis.set_ticks_position('bottom') + + ax[0].plot(w_np/w_00, np.abs(G_np(w_np))**2/G_n, c='black') + ax[0].set_xlabel(r'$\frac{\omega}{\omega_0}$') + ax[0].set_ylabel(r'$\frac{|G(\omega)|^2}{|G(\omega_0)|^2}$') + ax[0].scatter(1, 1/(gamma*w_00)**2/G_n, c='r') + ax[0].scatter(a_1/w_00, f_1/G_n, c='r') + ax[0].scatter(a_2/w_00, f_2/G_n, c='r') + ax[0].plot(np.linspace(w_00-gamma/2, w_00+gamma/2, 20)/w_00, f_1*np.ones(20)/G_n) + + ax[1].plot(w_np/w_00, np.angle(G_np(w_np))/np.pi, c='black') + ax[1].set_xlabel(r'$\frac{\omega}{\omega_0}$') + ax[1].set_ylabel(r'$arg(G(\omega)\frac{1}{\pi}$') + + fig.tight_layout() + + fig.savefig('section2.png') + + + # CHAPTER 5 + M_rho = 0.77 + G_rho = 0.15 + M_pi = 0.14 + + def F_BW(s): + sigma = lambda x: np.sqrt(1 - 4*M_pi**2/x) + G = G_rho* s/M_rho**2* (sigma(s)/sigma(M_rho**2))**3 * np.heaviside(s- 4*M_pi**2, 0 ) + return M_rho**2 / (M_rho**2 - s - 1j*M_rho*G) + + s = np.linspace(0.1, 1, 200) + delta = lambda x: np.angle(F_BW(x)) + + # P.V. + s_0 = 4*M_pi**2 + def integrand(s_, x): + return (delta(s_) - delta(x))/(s_*(s_ - x)) + def integral(x): + return quad(integrand, s_0, np.inf, args=(x))[0] + + I = np.vectorize(integral) + + first = s/np.pi * I(s) # first integral + second = delta(s) * 1/np.pi * np.log(s_0/(s-s_0)) # second integral + + F = np.exp(first + second + 1j * delta(s)) + + # BW - Omnes representations + plt.figure(figsize=[10, 7]) + plt.plot(s, np.abs(F), label='Omnes', c='black') + plt.plot(s, np.abs(F_BW(s)), label='Breit-Wigner', c='red') + plt.legend(loc='best', fontsize=12) + plt.xlabel(r'$s\ [GeV^2]$') + plt.ylabel(r'$|F_\pi^V(s)|$') + plt.savefig('omnes_bw.png') + + +if __name__ == '__main__': + main() diff --git a/sesh6/calc/section2.png b/sesh6/calc/section2.png Binary files differ. diff --git a/sesh6/src/main.pdf b/sesh6/src/main.pdf Binary files differ. diff --git a/sesh6/src/main.tex b/sesh6/src/main.tex @@ -0,0 +1,659 @@ +\documentclass[a4paper]{article} + +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} + +\usepackage{mathptmx} + +\usepackage[a4paper, total={6in, 8in}]{geometry} +\usepackage{subcaption} +\usepackage[shortlabels]{enumitem} +\usepackage{amssymb} +\usepackage{amsthm} +\usepackage{mathtools} +\usepackage{braket} +\usepackage{bbm} +\usepackage{graphicx} +\usepackage{float} +\usepackage{yhmath} +\usepackage{tikz} +\usetikzlibrary{calc,decorations.markings} +\usepackage[colorlinks=true,naturalnames=true,plainpages=false,pdfpagelabels=true]{hyperref} +\usepackage[parfill]{parskip} +\usepackage[backend=biber, sorting=none]{biblatex} +\newcommand{\hbbar}{{\raisebox{0.05ex}{$\mathchar '26$}\mkern -9mu\raisebox{-0.15ex}{$\mathchar '26$}\mkern -9muh}} +\addbibresource{uni.bib} +\pagestyle{myheadings} +\markright{Popovic, Vogel\hfill Dispertion relations \hfill} + + +\title{Universität Wien\\ Fakultät für Physik\\ +\vspace{1.25cm}Laborpraktikum Theoretische Physik 2021S \\ Dispertion relations +} +\author{Milutin Popovic \& Tim Vogel \vspace{1cm}\\ Betreuer: Peter Stoffer} +\date{30. Juni, 2021} + +\begin{document} +\maketitle +\noindent\rule[0.5ex]{\linewidth}{1pt} +\begin{abstract} +\end{abstract} +\noindent\rule[0.5ex]{\linewidth}{1pt} +\newcommand{\PV}{\mathop{\mathrlap{\pushR}}\!\int} +\newcommand{\pushR}{\mathchoice + {\mkern2.5mu P} + {\scriptstyle P} + {\scriptscriptstyle P} + {\scriptscriptstyle P} +} + +\tableofcontents + +\section{Introduction} +Within the tools of complex analysis, there exists the possibility, to form +relations between observable quantities of physicals systems, for example +dispersion in a dielectric medium. This can be taken even further, by using the +same methods within particle-physical problems, where the now more popular +methods of qauntum chromodynamics do not apply, which would be low energy +hadronic processes. We will firstly apply these concepts to the simple example +of the harmonic oscillator and finally work out more complex problems, +regarding the pion vector form factor. The reader is expected to be familiar +with the subject of complex analysis, especially analyticity/holomorphicity of +a function, integration of complex functions, the residue theorem and the +Schwartz reflection principle. + + + + + + + + + + +\section{Damped harmonic oscillator} +Considering a free harmonic oscillator, the equation of motion accounts to: +\begin{equation} + \Ddot{x}(t)+\gamma\Dot{x}(t)+\omega_0^2x(t)=0 +\end{equation} +where $\gamma > 0$ is the damping coefficient, and $\omega_0$ the angular frequency +of the oscillator. Using the exponential ansatz we can arrive at an general +solution to this ordinary differential equation +\begin{align} + &x(t) = a e^{-i\omega_1 t} + b e^{-i\omega_2 t} \\ + &\nonumber \\ + \text{with:} \nonumber\\ + &\omega_{1/2} = \pm \sqrt{\omega_0^2 - (\frac{\gamma}{2})^2} - + i\frac{\gamma}{2} +\end{align} +where $a$ and $b$ are calculated based on the Couchy boundary conditions. + +For the case $\omega_0 > \frac{\gamma}{2}$ we can rewrite the solution +\begin{align} + &x(t) = \left(a e^{-i\tilde{\omega}_0 t} + b e^{-i\tilde{\omega}_0 + t}\right) e^{-\frac{\gamma}{2}t}\\ + &\nonumber \\ + \text{with:} \nonumber\\ + &\tilde{\omega}_{0} = \sqrt{\omega_0^2 - \left(\frac{\gamma}{2}\right)^2} +\end{align} +\subsection{External Force} + +Now consider a harmonic oscillator with an external force $F(t)$ driving it +\begin{align}\label{eq:force} + \Ddot{x}(t)+\gamma\Dot{x}(t)+\omega_0^2x(t)=\frac{F(t)}{m} =: f(t). +\end{align} +By Fourier transforming the equation we can arrive at an equation for the +greens function in Fourier space. Note that the Fourier transform of +$x(t)$ is +\begin{align} + \hat{x}(t) &= \frac{1}{2\pi}\int_\infty^\infty d\omega + X(\omega) e^{-i\omega t} +\end{align} +so the Fourier transforms of $\dot{x}$ and $\Ddot{x}$ are +\begin{align} + \mathcal{F}(\dot{x}) &= -i\omega X(\omega)\\ + \mathcal{F}(\Ddot{x}) &= -\omega^2 X(\omega)\\ +\end{align} +and the equation \ref{eq:force} turns into +\begin{align} + (-\omega^2 - i\gamma \omega + \omega_0^2) X(\omega) = F(\omega) +\end{align} + +The Green's function can be represented in Fourier space like the following +\begin{align} + G(\omega)= \frac{1}{-\omega^2 - i\gamma \omega + \omega_0^2} +\end{align} + +The Maximum of the squared modulus $|G(\omega)|^2$ for $\gamma \ll \omega_0$ is +roughly at $\omega_0$, thus the width at half maximum can be calculated by +looking for two $\omega$'s that satisfy +\begin{align} + \frac{1}{2}|G(\omega_0)|^2 &= |G(\omega)|^2\\ + \frac{1}{2} \frac{1}{\omega_0^2\gamma^2} &= |G(\omega)|^2 +\end{align} + +The exact solutions are +\begin{align} + \tilde{\omega}_1 &= \omega_0\sqrt{-0.5\left(\frac{\gamma}{\omega_0}\right)^2 + - 1.0\frac{\gamma}{\omega_0}(0.25\left(\frac{\gamma}{\omega_0}\right)^2 + + 1)^{\frac{1}{2}} + 1}\\ + \tilde{\omega}_2 &= \omega_0\sqrt{-0.5\left(\frac{\gamma}{\omega_0}\right)^2 + + 1.0\frac{\gamma}{\omega_0}(0.25\left(\frac{\gamma}{\omega_0}\right)^2 + + 1)^{\frac{1}{2}} + 1} +\end{align} +With help of Taylor expansion in the linear order in $\frac{\gamma}{\omega_0}$ +gives us the approximation for the with at half maximum +\begin{align} + \tilde{\omega}_2 - \tilde{\omega}_1 \simeq \gamma +\end{align} + +In the figure below we plotted the squared modulus of $|G(\omega)|^2$ +\begin{figure}[H] + \centering + \includegraphics[width=\textwidth]{plots_sec2.png} + \caption{On the left the squared modulus $|G(\omega)|^2$ in $\omega +\in [\omega_0 - 2\gamma, w_0 + w\gamma]$ for $\gamma \ll \omega_0$, precisely +$\gamma = \omega_0/20$ for $\omega_0 = 1$ and on the right $arg(G(\omega))$} +\end{figure} + + +Next we want calculate the Green's function in terms of time +\begin{align} + g(t) = \frac{1}{2\pi} \int^\infty_\infty d\omega G(\omega)e^{-i\omega t}. +\end{align} +Furthermore we can transform this to the complex integral where we have two singularities +at We have two singularities at $z_{1/2} = - \frac{i\gamma}{2} \pm +\tilde{\omega}_{0}$. We have the following integral +path + +\begin{center} +\begin{tikzpicture}[decoration={markings, +mark=at position 13cm with {\arrow[line width=2pt]{>}} +} +] +% The axes +\draw[help lines,->] (-4,0) -- (4,0) coordinate (xaxis); +\draw[help lines,->] (0,-3.5) -- (0,1) coordinate (yaxis); + +% The path +\path[draw,line width=0.8pt,postaction=decorate] + (3,0) node[above right] {} arc (0:-180:3) -- (-3, 0) + node[above left] {} -- (-3, 0) -- (3, 0); + +% The labels + \draw[thick, ->] (0,0) -- (2.1, -2.1) node[midway, fill=white] {$R$}; + \node[below] at (xaxis) {$\text{Re}$}; + \node[left] at (yaxis) {$\text{Im}$}; + \node at (0.2,-1.5) {$\nu$}; + \node at (1, -3.2) {$C(R)$}; +\end{tikzpicture} +\end{center} + +The complex integral representation is +\begin{align} + \oint_\nu dz G(z) e^{-izt} &= + \lim_{R \rightarrow \infty } + \bigg( + \int_{C(R)} + \int_{-R}^{R} + \bigg) + dz\ G(z) e^{-izt}\\ + &= 2\pi i\sum_j \text{I}(C_j, z_j) \text{Res}_j +\end{align} +Keep in mind that the integral from $R$ to $-R$ is the integral we are +trying to solve, that is pulling the limit we have one integral over the real +axis. Because of Jordan's lemma, the integral over the complex curve vanishes +\begin{align} + \big| \int_{C(R)} dz G(z) e^{-izt}\big| \leq \frac{\pi}{t}M_R +\end{align} +where $M_R:= \max_{C(R)}\{G(Re^{i\varphi})\}$.It can easily be seen that $M_R$ +converges to $0$ as $R$ goes to infinity. Thus the only value the integral can +take is $0$ and we can calculate the real integral with the residues +\begin{align} + \text{Res}_1 &= \frac{e^{i z t}}{(z - z_1)(z - z_2)} (z - z_1)\bigg|_{z=z_1} + \\ + &= -\frac{e^{-iz_1t}}{z_1 - z_2} = \frac{e^{-\frac{\gamma}{2}t} + e^{i\tilde{\omega}_0 t}}{2\tilde{\omega}_0}\\ + \nonumber \\ + \text{Res}_2 &= \frac{e^{i z t}}{(z - z_1)(z - z_2)} (z - z_2)\bigg|_{z=z_2} + \\ + &= -\frac{e^{-iz_1t}}{z_2 - z_1} = -\frac{e^{-\frac{\gamma}{2}t} + e^{-i\tilde{\omega}_0 t}}{2\tilde{\omega}_0}\\ +\end{align} +with the index $\text{I}(C_R, z_i)$ being $1$, because the curve goes around the +singularities once. + +The integral evolves to +\begin{align} + \frac{1}{2\pi} \int_{-\infty}^{\infty} d\omega G(\omega) e^{-i\omega t}= + \frac{\sin(\tilde{\omega}_0t)}{\tilde{\omega}_0} e^{-\frac{\gamma}{2}t}. +\end{align} +Treating the cases $t<0$ and $t>0$ separately we can join them with the +Heaviside-theta function $\theta(t)$, the Green's function for the damped +harmonic oscillator is +\begin{align} + g(t) = \frac{\sin(\tilde{\omega}_0t}{\tilde{\omega}_0} + e^{-\frac{\gamma}{2}t} \theta(t) +\end{align} +With convolution we can arrive at a solution for the damped harmonic oscillator +for an arbitrary driving force $f(t)$ +\begin{align} + x(t) = \int_{-\infty}^{t} dt' + \frac{\sin(\tilde{\omega}_0 (t-t'))}{\tilde{\omega}_0} + e^{-\frac{\gamma}{2}(t-t')} f(t'). +\end{align} + +\subsection{Green's Function and dispersion relations} +Next we want to compute the following integral +\begin{align} + 0 = \oint_C d\omega' \frac{G(\omega')}{\omega - \omega'}, \;\;\;\; + \text{with} \;\;\; \omega' = \omega_r + i\omega_i +\end{align} +along the following contour + +\begin{center} +\begin{tikzpicture}[decoration={markings, +mark=at position 0.5cm with {\arrow[line width=2pt]{>}}, +mark=at position 5cm with {\arrow[line width=2pt]{>}}, +mark=at position 13cm with {\arrow[line width=2pt]{>}}, +mark=at position 15cm with {\arrow[line width=2pt]{>}} +} +] +% The axes +\draw[help lines,->] (-3.5,0) -- (3.5,0) coordinate (xaxis); +\draw[help lines,->] (0,-0.5) -- (0,3.5) coordinate (yaxis); + +% The path +\path[draw,line width=0.8pt,postaction=decorate] + (2,0) -- (3, 0) node[below right] {} arc (0:180:3) -- (0.5, 0) + arc (180:0:0.75); + +% The labels + \draw[thick, ->] (0,0) -- (-2.1, 2.1) node[midway, fill=white] {$R$}; + \draw[thick, ->] (1.25,0) -- (1.75, 0.5) node[midway, above] {$\varrho$}; + \node[below] at (xaxis) {$\text{Re}$}; + \node[left] at (yaxis) {$\text{Im}$}; + \node[circle,inner sep=1pt,label=below:{$\omega$}, fill=black] at (1.25,0) {}; +\end{tikzpicture} +\end{center} +so the integral representation is +\begin{align} + \oint_C d\omega' \frac{G(\omega')}{\omega - \omega'} = + \lim_{\substack{R\rightarrow \infty \\ \varrho \rightarrow 0^+}} + \bigg( \int_{C(R)} + \int_{(C(\rho)} + \int_{-R}^{\omega - + \varrho} + \int_{\omega +\varrho}^R + \bigg) + \;d\omega'\ \frac{G(\omega')}{\omega - \omega'} +\end{align} +We need show that the integral over the big circle goes to $0$. We know that for +$\omega' \neq \omega$ we have +\begin{align} + \big|\frac{G(\omega')}{\omega' - \omega}\big| &= + \big|\frac{1}{\omega'^3}\frac{1}{(1-\frac{\omega_1}{\omega'})(1-\frac{\omega_2}{\omega'}) + (1 - \frac{\omega}{\omega'})}\big| + \leq \frac{1}{R^3} +\end{align} +thus +\begin{align} + \bigg| + \int_{C(R)} d\omega' \frac{G(\omega')}{\omega - \omega'} + \bigg| \leq \frac{2\pi R}{R^3} = \frac{2\pi}{R^2} + \xrightarrow[R\rightarrow \infty]{} 0. +\end{align} +The small circle can be calculated with the Residue theorem with the pole at +$\omega$ +\begin{align} +\int_{C(\varrho)}d\omega' \frac{G(\omega')}{\omega - \omega'} = 2\pi i + \text{I}(C(\varrho), \omega) \text{Res}(\frac{G(\omega')}{\omega - \omega'}, + \omega) = i\pi G(\omega). +\end{align} +Note that we go around $\omega$ only $1/2$ times. Reconstructing the integral +equation we get +\begin{align} + -i\pi G(\omega) = \lim_{\varrho \rightarrow 0^+} + \big( + \int_{-R}^{\omega -\varrho} + \int_{\omega +\varrho}^R + \big) \;d\omega'\ \frac{G(\omega')}{\omega' - \omega} +\end{align} +which is exactly the Cauchy Principal Value. Furthermore we can rewrite +$G(\omega)$ into real and imaginary parts +\begin{align} + \text{Re} (G(\omega)) = \frac{1}{\pi} \PV d\omega' \frac{\text{Im} + (G(\omega'))}{\omega' - \omega}\\ + \text{Im} (G(\omega)) = \frac{1}{\pi} \PV d\omega' \frac{\text{Re} + (G(\omega'))}{\omega' - \omega}\\ +\end{align} +which are Hilbert transforms of each other, the equations are also known +as ``dispersion relations''. It should be noted that these equations also allow +negative frequencies. Let us derrive an representation for only positive +frequencies. We start off by a simple statement +\begin{align} + G(-\omega^*) = G(\omega)^*. +\end{align} +In our case this is obviously true +\begin{align} + &G(-\omega^*) = \frac{1}{-(\omega^*)^2 + i\gamma \omega^* + \omega_0^2}\\ + \nonumber \\ + &G(\omega)^* = \frac{1}{-(\omega^2)^* + i\gamma \omega^* + \omega_0^2} = + G(-\omega^*) +\end{align} +Now we choose $\omega \in \mathbb{R}^+$, our relation then becomes +$G(-\omega) = G(\omega)^*$. Then we get +\begin{align} + \text{Re} (G(\omega)) &= \frac{1}{\pi} \PV_0^\infty d\omega' \frac{2\omega'\text{Im} + (G(\omega'))}{\omega'^2 - \omega^2}\\ + \text{Im} (G(\omega)) &= -\frac{1}{\pi} \PV_0^\infty d\omega' \frac{2\omega'\text{Re} + (G(\omega'))}{\omega'^2 - \omega^2} +\end{align} + +To round this chapter up we would like to show one last identity in the sense +of distributions +\begin{align} + \lim_{\varepsilon \rightarrow 0^+} \frac{1}{\omega' -\omega \mp + i\varepsilon} = \text{P}(\frac{1}{\omega' - \omega}) \pm i\pi\delta(\omega' + - \omega). +\end{align} +Let us extend the fraction with $\omega' - \omega \pm i\varepsilon$. +\begin{align} +\frac{\omega' - \omega \pm i\varepsilon}{(\omega' -\omega \mp + i\varepsilon)(\omega' - \omega \pm i\varepsilon)} = \frac{\omega' - \omega + \pm i\varepsilon}{(\omega' - \omega)^2 + \varepsilon^2}. +\end{align} +That means for a test function $f(\omega')$ we have +\begin{align} + \lim_{\varepsilon \rightarrow 0^+} \int_{-\infty}^\infty d\omega' + \frac{f(\omega')}{\omega' - \omega \mp i\varepsilon} &= + \lim_{\varepsilon \rightarrow 0^+} + \int_{-\infty}^\infty d\omega' + \frac{(\omega' - \omega \pm i\varepsilon) f(\omega')}{(\omega' - \omega)^2 + + \varepsilon^2}\\ + & = + \lim_{\varepsilon \rightarrow 0^+}\bigg( + \int_{-\infty}^\infty d\omega' + \frac{f(\omega')(\omega' - \omega )}{(\omega' - \omega)^2 + \varepsilon^2} + \pm i\varepsilon + \int_{-\infty}^\infty d\omega'\frac{f(\omega')}{(\omega' - \omega)^2 + \varepsilon^2} + \bigg)\label{eq:id}. +\end{align} +Let us look into the first integral in equation \ref{eq:id}, we can rewrite it +\begin{align} + \lim_{\varepsilon \rightarrow 0^+}\int_{-\infty}^\infty + d\omega'\frac{f(\omega')(\omega' - \omega )}{(\omega' - \omega)^2 + \varepsilon^2} + &= \lim_{\varepsilon,\varrho \rightarrow 0^+} + \bigg( + \int_{-\infty}^{\omega - \varrho}d\omega'\frac{f(\omega')(\omega' - + \omega )}{(\omega' - \omega)^2 + \varepsilon^2} + + \int_{\omega + \varrho}^{\infty}d\omega'\frac{f(\omega')(\omega' - \omega )}{(\omega' + - \omega)^2 + \varepsilon^2} + \\ + &+\int_{\omega -\varrho}^{\omega+ + \varrho}d\omega'\frac{f(\omega')(\omega' - \omega )}{(\omega' - + \omega)^2 + \varepsilon^2} + \bigg) + \\ + &= \PV_{-\infty}^{\infty}d\omega' \frac{f(\omega')}{(\omega' - \omega)} +\end{align} +The integral from $\omega - \varrho$ to $\omega + \varrho$ can be calculated by +pulling out $f(\omega)$ out of the integral and directly computing it, which +gives then vanishes. In second integral we approximate $f(\omega')$ to +$f(\omega)$ in the region $\omega' \simeq \omega$ +\begin{align} + \varepsilon \int_{-\infty}^{\infty}d\omega' \frac{f(\omega')}{(\omega' - + \omega)^2 + \varepsilon^2} &\simeq \varepsilon f(\omega) \int_{-\infty}^{\infty} + \frac{1}{(\omega' -\omega)^2 + \varepsilon^2}\\ + &= \pi f(\omega). +\end{align} +Which means the identity is +\begin{align} + \lim_{\varepsilon \rightarrow 0^+} \int_{-\infty}^{\infty} d\omega' + \frac{f(\omega')}{\omega' -\omega \mp i\varepsilon} = + \PV_{-\infty}^{\infty} d\omega' \frac{f(\omega')}{\omega' -\omega} \pm + i\pi f(\omega)\label{eq:pv} +\end{align} +\section{Potential scattering in quantum mechanics} +If we consider elastic scattering of a spinless particle off a +time-independent, spherically symmetric potential of finite range, we look for +stationary solutions $\psi$ of the Schrödinger equation +\begin{equation} + -\frac{\hbbar^2}{2m}\Vec{\nabla^2}\psi(\Vec{x})+V(r)\psi(\Vec{x})=E\psi(\Vec{x}) +\end{equation} +Since the potential is spherically symmetric, it only depends on $r$ and for +large values of $r$, it can be shown, that the asymptotic form of $\psi$ looks +like: +\begin{equation} + \psi(r,\theta)\approx A[e^{ikz}+f(E,\theta)\frac{e^{ikr}}{r}] +\end{equation} +Where $kr\gg 1$, and k given by +\begin{equation} + k=\frac{\sqrt{2mE}}{\hbbar} +\end{equation} +We also define the scattering angle $\theta$ by $z=r\cos{\theta}$, and since +there is no dependence on the azimuthal angle $\phi$. we can define the +incoming and outgoing parts of the wave function as follows: +\begin{equation} + \psi_{in}=Ae^{ikz} +\end{equation} +and +\begin{equation} + \psi_{out}=Af(E,\theta)\frac{e^{ikr}}{r} +\end{equation} +Where the factor $\frac{1}{r}$ is carried, to conserve probability. The complex +function $f(E,\theta)$ is the so called scattering amplitude. We are now +interested in the differential cross section $\frac{d\sigma}{d\Omega}$, which +is defined as the ratio of number of particles per unit time, that are +scattered into the surface element $dS=r^2d\Omega(\theta,\phi)$ and the number +of incoming particles per unit time, per are orthogonal to the beam direction. +Expressed via probability currents, we thus obtain: +\begin{equation} + \frac{d\sigma}{d\Omega}=\frac{\Vec{j}_{out}\cdot \Vec{e}_rr^2}{|\Vec{j}_{in}|} +\end{equation} +With $\Vec{e}_r$ being a unit vector in direction of the radius, and the currents given as: +\begin{equation} +\Vec{j}=\frac{i\hbbar}{2m}(\psi\Vec{\nabla}\psi^*-\psi^*\Vec{\nabla}\psi) +\end{equation} +By applying these equations, we obtain the differential crosssection as: +\begin{equation} + \frac{d\sigma}{d\Omega}=|f(E,\theta)|^2 +\end{equation} +With the scattering amplitude, being given as: +\begin{equation} + f(E,\theta)=\sum_{l=0}^\infty(2l+1)f_l(E)P_l(cos\theta) +\end{equation} +where $l$ denotes the magnitude of orbital angular momentum, and +$P_l(cos\theta)$ are the Legendre polynomials. +We can now work out the total crosssection $\sigma$ via the integral: +\begin{equation} + \sigma=\int{d\Omega\frac{d\sigma}{d\Omega}} +\end{equation} +We do this, by applying the orthogonality relation +\begin{equation} + \int{d\Omega P_l(cos\theta)P_{l'}(cos\theta)}=\frac{4\pi}{(2l+1)}\delta_{ll'} +\end{equation} +Thus, we obtain: +\begin{equation} + \sigma=\sum_{l,l'}(2l+1)(2l'+1)f^*_l(E)f_{l'}(E)\int{d\Omega P_l(cos\theta)P_{l'}(cos\theta)} +\end{equation} +Which, finally leads to: +\begin{equation} + \sigma=4\pi\sum_l(2l+1)|f(E)|^2 +\end{equation} + + + +\section{The pion vector from factor and the Omn\`es Problem} +Insert Text +\subsection{Unitarity of the scattering matrix} +Insert Text +\begin{align} + \label{eq:rec} + \text{Im}(F^V_\pi(s) = F^V_\pi(s) e^{-i\delta_{\pi\pi}(s)}\sin\delta_{\pi\pi}(s) +\end{align} +\subsection{The Omn\`es Problem} +The equations \ref{eq:rec} allow us to carefully reconstruct the pion Vector Form +Factor, based on strictly formulated conditions. This is known as the Omn\`es +Problem. First of all the equation tells us that $F_\pi^V(s)$ is a complex +valued function, as $s$ is an analytic variable in the complex plane, apart +from a cut complex s-plane $\Gamma = [s_0, \infty) \subset \mathbb{R}$, where +$s = 4M_\pi^2 > 0$. To summerize the conditions are +\begin{itemize} + \item $F_\pi^V(s)$ is analytic on the cut complex s-plane + $\mathbb{C}\backslash \Gamma$ + \item $F_\pi^V(s)\in \mathbb{R} \;\;\; \forall\; s \in + \mathbb{R}\backslash \Gamma$ + \item $\lim_{\varepsilon \rightarrow 0}(F_\pi^V(s+i\varepsilon) + e^{-i\delta_{\pi\pi}(s)}) \in \mathbb{R}$ on $\Gamma$ for a real + bounded fucntion $\delta_{\pi\pi}(s)$ + \item We assume $F_\pi^V(0) = 1$ and $F_\pi^V(s)$ has no zeros. +\end{itemize} +We start off with the Couchy Integral +\begin{align} + \ln(F(s)) = \frac{1}{2\pi i}\oint_C ds' \frac{\ln(F(s'))}{s'-s} +\end{align} +over the following contour +\begin{center} +\begin{tikzpicture}[decoration={markings, +mark=at position 0.5cm with {\arrow[line width=2pt]{>}}, +mark=at position 5cm with {\arrow[line width=2pt]{>}}, +mark=at position 13cm with {\arrow[line width=2pt]{>}}, +mark=at position 21cm with {\arrow[line width=2pt]{>}}, +mark=at position 23cm with {\arrow[line width=2pt]{>}} +} +] +% The axes +\draw[help lines,->] (-3.5,0) -- (3.5,0) coordinate (xaxis); +\draw[help lines,->] (0,-3.5) -- (0,3.5) coordinate (yaxis); + +% The path +\path[draw,line width=0.8pt,postaction=decorate] + (1.5,0.1) -- (3, 0.1) node[below right] {} arc (4:360:3) -- (1.5, -0.1) + node[below right] {} arc(345:15:0.4); + +% The labels + \draw[thick, ->] (0,0) -- (-2, 2) node[midway, fill=white] {$R$}; + \draw[thick, ->] (1.1,0) -- (1.1, 0.4) node[above] {$\varrho$}; + \node[below] at (xaxis) {$\text{Re}$}; + \node[left] at (yaxis) {$\text{Im}$}; + \node[circle,inner sep=1pt,label=below:{$s_0$}, fill=black] at (1.1,0) {}; +\end{tikzpicture} +\end{center} +This means the integral can be separated into +\begin{align} + \oint_C ds' \frac{\ln(F(s'))}{s'-s} = + \lim_{\substack{\varepsilon \rightarrow 0}} + \bigg( + \int_{C(R)} + \int_{C(\varrho)} + \int_{s_0+i\varepsilon}^{\infty + +i\varepsilon} + \int^{s_0-i\varepsilon}_{\infty + -i\varepsilon} + \bigg) ds' \frac{\ln(F(s'))}{s'-s} +\end{align} +The integrals over $C(R)$ and $C(\varrho)$ dissapear. For the last two +integrals we can use the Schwarz reflection principle and then we get +\begin{align} + \oint_C ds' \frac{\ln(F(s'))}{s'-s} = \frac{1}{\pi} \int_{s_0}^{\infty}ds' + \text{Im}\left( + \frac{\ln(F(s'))}{s'-s}\right) +\end{align} +where we used $\text{Im}(z) = \frac{z - z^*}{2i}$ to write the imaginary part +here. We look now at equation \ref{eq:rec} and refactor it +\begin{align} + &\frac{F_\pi^V(s)-F_\pi^V(s)^*}{2i} = F_\pi^V e^{i\delta_{\pi\pi}}(s) + \sin(\delta_{\pi\pi}(s)) \\ + &F_\pi^V(s) = F_\pi^V(s)^* e^{2i \delta_{\pi\pi}(s)}\\ + &\ln(F_\pi^V(s)) = \ln((F_\pi^V e^{-i\delta_{\pi\pi}})^*)+ + i\delta_{\pi\pi}(s).\label{eq:use} +\end{align} +Now we use this equation to compute the integral with variation in $s +\rightarrow s+i\varepsilon$ as $\varepsilon$ goes to infinity. +\begin{align} + \ln(F_\pi^V(s)) &= \lim_{\substack{\varepsilon \rightarrow \infty}} + \ln(F_\pi^V(s+i\varepsilon)) = \\ + &= \lim_{\substack{\varepsilon \rightarrow \infty}}\frac{1}{\pi} + \int_{s_0}^{\infty} + \text{Im}\left(\frac{F_\pi^V(s')}{s'-s-i\varepsilon}\right)=\\ + &=\lim_{\substack{\varepsilon \rightarrow \infty}}\frac{1}{\pi} + \int_{s_0}^{\infty} + \text{Im}\left(\frac{\ln((F_\pi^V e^{-i\delta_{\pi\pi}})^*)+ + i\delta_{\pi\pi}}{s'-s-i\varepsilon}\right) +\end{align} +the part $F_\pi^V e^{-i\delta_{\pi\pi}}$ needs to be real that means +\begin{align} + \ln(F_\pi^V(s)) &= \lim_{\substack{\varepsilon \rightarrow \infty}}\frac{1}{\pi} + \int_{s_0}^{\infty} + \frac{\delta_{\pi\pi}(s')}{s'-s-i\varepsilon} =\\ + &= \ln(F_\pi^V(0)) + \lim_{\substack{\varepsilon \rightarrow \infty}} + \frac{s}{\pi} + \int_{s_0}^{\infty} + \frac{\delta_{\pi\pi}(s')}{s'(s'-s-i\varepsilon)} +\end{align} +with the condition $F_\pi^V(0) = 1$ and the relation from \ref{eq:pv} we get +\begin{align} + F_\pi^V(s) = \exp + \bigg( + \frac{s}{\pi}\PV_{s_0}^\infty ds' \frac{\delta_{\pi\pi}(s')}{s'(s'-s)} + + i\delta_{\pi\pi}(s) + \bigg). +\end{align} +To compute the principal value integral we use the following trick +\begin{align} + \frac{s}{\pi}\PV_{s_0}^\infty ds' \frac{\delta_{\pi\pi}(s')}{s'(s'-s)} = + \frac{2}{\pi} \int_{s_0}^\infty ds' \frac{\delta_{\pi\pi}(s') + -\delta_{\pi\pi}(s)}{s'(s'-s)}+ + \delta_{\pi\pi}\frac{s}{\pi}\PV_{s_0}^\infty \frac{1}{s'(s'-s)}. +\end{align} +The first integral can be computed numerically, the second one has an analytic +solution for $s > s_0$. We use the definition of the principal value and circle +around $s$ in a small half circle with the radius $r$. +\begin{align} + \PV_{s_0}^\infty \frac{1}{s'(s'-s)} = \lim_{\substack{r\rightarrow0}} + \bigg( + \int_{s_0}^{s-r}ds' + \int_{s+r}^{\infty} ds' + \bigg)\frac{1}{s'(s'-s)} +\end{align} +then we simply integrate and plug in +\begin{align} + \PV_{s_0}^\infty \frac{1}{s'(s'-s)} &= \lim_{\substack{r\rightarrow 0}} + \bigg( + \frac{\ln(s'-s) - \ln(s')}{s}\big|_{s'= s_0}^{s'= s-r} + \frac{\ln(s'-s)-\ln(s')}{s}\big|_{s'=s+r}^{s'=\infty} + \bigg) =\\ + &=\frac{1}{s}\ln\left(\frac{s_0}{s_0-s}\right) +\end{align} +that means the second integral is +\begin{align} + \delta_{\pi\pi}\frac{s}{\pi}\PV_{s_0}^\infty \frac{1}{s'(s'-s)} + =\delta_{\pi\pi}(s)\frac{1}{\pi} \ln\left(\frac{s_0}{s_0 -s }\right) +\end{align} + +Lastly we would like to plot the modulus of the Omn\`es representation of the +pion vector form +factor. For the phase we would usually use experimentall value, but in our case +we will use the Breit-Wigner representation of the pion VVF to compute the +phase $\delta_{\pi\pi}$. A reminder the Breit-Wigner representation is the +following +\begin{align} + F^V_\pi(s)_{BW} = \frac{M_\varrho^2}{M_\varrho^2 - s - iM_\varrho + \Gamma_\varrho(s)} +\end{align} +where +\begin{align} + \Gamma_\varrho(s) := \Gamma_\varrho\frac{s}{M_\varrho^2} \left( + \frac{\sigma_\pi(s)}{\sigma_\pi(M_\varrho^2)} + \right)^3 \theta(s-4M_\pi^2), \;\;\;\;\;\; \sigma_\pi(s) := + \sqrt{1-\frac{4M_\pi^2}{s}}. +\end{align} +Thus our phase shift will be +\begin{align} + \delta_{\pi\pi}(s) := \arg\left(F_\pi^V(s)_{BW}\right) +\end{align} +where we will use numerical values for $M_\varrho = 0.77\ \text{GeV}$, +$\Gamma_\varrho = 0.15\ \text{GeV}$, $M_\pi = 0.14 \text{GeV}$. +\begin{figure}[H] + \centering + \includegraphics[width=0.9\textwidth]{./omnes_bw.png} + \caption{Plot of the modulus of the Breit-Wigner(red) and the Omn\`es + representation(black) of the pion Vector From Factor for $s \in [0, 1]$ in $GeV^2$} +\end{figure} +\nocite{mathe} +\nocite{stoffer} +\nocite{omnes} +\printbibliography +\end{document} diff --git a/sesh6/src/omnes_bw.png b/sesh6/src/omnes_bw.png Binary files differ. diff --git a/sesh6/src/plots_sec2.png b/sesh6/src/plots_sec2.png Binary files differ. diff --git a/sesh6/src/uni.bib b/sesh6/src/uni.bib @@ -0,0 +1,30 @@ +@book{mathe, + title={Mathematik für Physiker}, + publisher={Springer-Verlag}, + author={Kerner, von Wahl}, + year={2005} +} + +@article{stoffer, + title={Two-pion contribution to hadronic vacuum polarization}, + volume={2019}, + ISSN={1029-8479}, + url={http://dx.doi.org/10.1007/JHEP02(2019)006}, + DOI={10.1007/jhep02(2019)006}, + number={2}, + journal={Journal of High Energy Physics}, + publisher={Springer Science and Business Media LLC}, + author={Colangelo, Gilberto and Hoferichter, Martin and Stoffer, Peter}, + year={2019}, + month={Feb} +} + +@article{omnes, + author = "Omnes, R.", + title = "{On the Solution of certain singular integral equations of quantum field theory}", + doi = "10.1007/BF02747746", + journal = "Nuovo Cim.", + volume = "8", + pages = "316--326", + year = "1958" +}