{ "cells": [ { "attachments": {}, "cell_type": "markdown", "id": "556562f3-8ece-4517-8c93-ee5e2fc29131", "metadata": {}, "source": [ "# Example-12: TM010 cavity factory" ] }, { "cell_type": "markdown", "id": "c71d863b-4f0d-4669-a9bc-acf198a50f70", "metadata": {}, "source": [ "In this example cavity factory is illustrated. \n", "\n", "The TM010 cavity hamiltonian is:\n", "\n", "$\n", "\\begin{align}\n", "& H(q_x, q_y, q_s, p_x, p_y, p_s; s) = \\frac{p_s}{\\beta} - t(s)(q_x p_y - q_y p_x) - (1 + h(s) q_x) \\left(\\sqrt{P_s^2 - P_x^2 - P_y^2 - \\frac{1}{\\beta^2 \\gamma^2}} + a_s(q_x, q_y, q_s; s)\\right) \\\\\n", "& \\\\\n", "& P_s = p_s + 1/\\beta - \\varphi(q_x, q_y, q_s; s) \\\\\n", "& P_x = p_x - a_x(q_x, q_y, q_s; s) \\\\\n", "& P_y = p_y - a_y(q_x, q_y, q_s; s) \\\\\n", "\\\\\n", "& (a_x, a_y, a_s) = (0, 0, \\frac{q E}{P \\omega} J(k r) \\cos(k\\left(\\frac{s}{\\beta} - q_s \\right) + \\phi))\\\\\n", "& r^2 = q_x^2 + q_y^2\n", "& \\\\\n", "& \\varphi = 0 \\\\\n", "& t = h = 0 \\\\\n", "\\end{align}\n", "$\n", "\n", "The constructed element signature is:\n", "\n", "```python\n", "# kick\n", "def cavity(qsps:Array, length:Array, kn:Array, ks:Array) -> Array:\n", " ...\n", "\n", "# main\n", "def cavity(qsps:Array, length:Array, kn:Array, ks:Array) -> Array:\n", " ...\n", "```\n", "\n", "Note, by default only energy kick is performed and cavity has zero length." ] }, { "cell_type": "code", "execution_count": 1, "id": "8e01b94e-cd84-4693-9746-c4b2ce24e13e", "metadata": {}, "outputs": [], "source": [ "import jax\n", "from jax import jit\n", "from jax import jacrev\n", "\n", "from elementary.util import ptc\n", "from elementary.util import CL\n", "from elementary.util import ME\n", "from elementary.util import beta\n", "from elementary.util import gamma\n", "from elementary.util import rigidity\n", "\n", "from elementary.cavity import cavity_factory\n", "\n", "from matplotlib import pyplot as plt\n", "\n", "jax.numpy.set_printoptions(linewidth=256, precision=12)" ] }, { "cell_type": "code", "execution_count": 2, "id": "957db832-a37b-49eb-9708-c45f8a49ab49", "metadata": {}, "outputs": [], "source": [ "# Set data type\n", "\n", "jax.config.update(\"jax_enable_x64\", True)" ] }, { "cell_type": "code", "execution_count": 3, "id": "9e86151b-7513-4e95-88a2-e2a7c758cf07", "metadata": {}, "outputs": [], "source": [ "# Set device\n", "\n", "device, *_ = jax.devices('cpu')\n", "jax.config.update('jax_default_device', device)" ] }, { "cell_type": "code", "execution_count": 4, "id": "ef2e3329-9150-411c-80a8-0fb68cce0ac5", "metadata": {}, "outputs": [], "source": [ "# Define cavity elements\n", "\n", "gamma = 1000.0\n", "\n", "element_kick = jit(cavity_factory(rigidity(beta(gamma), gamma, ME, 1), kind='kick', beta=beta(gamma), gamma=gamma, order=2**1, iterations=100))\n", "element_main = jit(cavity_factory(rigidity(beta(gamma), gamma, ME, 1), kind='main', beta=beta(gamma), gamma=gamma, order=2**1, iterations=100))" ] }, { "cell_type": "code", "execution_count": 5, "id": "a5ed13b3-f775-4aaa-81c7-8877b6a5608f", "metadata": {}, "outputs": [], "source": [ "# Set zero initial condition\n", "\n", "(q_x, q_y, q_s) = qs = jax.numpy.array([0., 0., 0.])\n", "(p_x, p_y, p_s) = ps = jax.numpy.array([0., 0., 0.])\n", "qsps = jax.numpy.hstack([qs, ps])" ] }, { "cell_type": "code", "execution_count": 6, "id": "61d06454-c160-414c-8761-7513e1c7bb62", "metadata": {}, "outputs": [], "source": [ "# Set parameters\n", "\n", "length = jax.numpy.float64(1.0)\n", "voltage = jax.numpy.float64(5.0E+5)*1E-6\n", "frequency = jax.numpy.float64(2.0E+08)*1E-6\n", "lag = jax.numpy.float64(90*jax.numpy.pi/180)" ] }, { "cell_type": "code", "execution_count": 7, "id": "427716f1-508f-4df2-8e73-6a9a3de92a66", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.0009784760796965218\n" ] } ], "source": [ "# Compute energy gain\n", "\n", "print((1E+6*voltage)/(rigidity(beta(gamma), gamma, ME, 1)*CL)*jax.numpy.sin(lag))" ] }, { "cell_type": "code", "execution_count": 8, "id": "a36f69d0-dc42-40ad-90a5-2c8df90bf917", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0. 0. 0. 0. 0. 0.00097847608]\n", "[-1.082847985127e-18 -1.082847985127e-18 4.885907984818e-10 -1.490078219212e-21 -1.490078219212e-21 9.784760807539e-04]\n", "[0.000000000000e+00 0.000000000000e+00 4.887602574200e-10 0.000000000000e+00 0.000000000000e+00 9.784760810177e-04]\n", "\n" ] } ], "source": [ "# Compare with PTC\n", "\n", "print(element_kick(qsps, voltage, lag))\n", "print(element_main(qsps, length, voltage, frequency, lag))\n", "\n", "print(ref := ptc(qsps, 'rfcavity', {'l': float(length), 'no_cavity_totalpath': 'true', 'n_bessel': 10, 'freq': float(frequency), 'volt': float(voltage), 'lag': float(lag/(2*jax.numpy.pi))}, gamma=gamma))\n", "print()" ] }, { "cell_type": "code", "execution_count": 9, "id": "c4b493fa-8791-4008-8b05-08efb7c14d29", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[ 9.989171520149e-01 -5.721517742631e-20 -4.295716685495e-18 9.995109978134e-01 -1.059978537520e-20 1.082475290913e-18]\n", " [-5.721517742631e-20 9.989171520149e-01 -4.295716685495e-18 -1.059978537520e-20 9.995109978134e-01 1.082475290913e-18]\n", " [-1.493632396068e-21 -1.493632396068e-21 9.999999978367e-01 1.082158489132e-18 1.082158489132e-18 9.985358733929e-07]\n", " [-1.490078219213e-06 6.105199573872e-20 -8.596042621954e-18 1.001082530852e+00 7.757678047506e-21 1.485053344709e-21]\n", " [ 6.105199573872e-20 -1.490078219213e-06 -8.596042621954e-18 7.757678047506e-21 1.001082530852e+00 1.485053344710e-21]\n", " [-8.586740834050e-18 -8.586740834050e-18 -6.769838121622e-12 -4.291472216269e-18 -4.291472216269e-18 1.000000002163e+00]]\n", "1.0\n" ] } ], "source": [ "# Differentiability\n", "\n", "matrix = jax.jacrev(element_main)(qsps, length, voltage, frequency, lag)\n", "\n", "print(matrix)\n", "print(jax.numpy.linalg.det(matrix))" ] }, { "cell_type": "code", "execution_count": 10, "id": "6931b0cf-c5fd-42e2-8cbf-8d958e8a86cd", "metadata": {}, "outputs": [], "source": [ "# Scan initial lag\n", "\n", "lags = 2*jax.numpy.pi*jax.numpy.linspace(0.0, 1.0, 101) ;\n", "\n", "out_kick = [element_kick(qsps, voltage, lag) for lag in lags]\n", "*_, out_kick = jax.numpy.stack(out_kick).T\n", "\n", "out_main = [element_main(qsps, length, voltage, frequency, lag) for lag in lags]\n", "*_, out_main = jax.numpy.stack(out_main).T\n", "\n", "out_ptc = [ptc(qsps, 'rfcavity', {'no_cavity_totalpath': 'true', 'l': float(length), 'n_bessel': 10, 'freq': float(frequency), 'volt': float(voltage), 'lag': float(lag/(2*jax.numpy.pi))}, gamma=gamma) for lag in lags]\n", "*_, out_ptc = jax.numpy.stack(out_ptc).T" ] }, { "cell_type": "code", "execution_count": 11, "id": "3df8f2e4-da68-4606-8064-e5cd43c27913", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot energy change vs lag\n", "\n", "plt.figure(figsize=(16, 4))\n", "plt.plot(lags, out_ptc, color='black', label='ptc', lw=5)\n", "plt.plot(lags, out_kick, color='red', label='kick')\n", "plt.plot(lags, out_main, color='blue', label='main')\n", "plt.gca().axhline(0, color='black', alpha=0.5)\n", "plt.gca().axvline(0, color='black', alpha=0.5)\n", "plt.gca().axvline(jax.numpy.pi/2, color='black', alpha=0.5)\n", "plt.gca().axvline(jax.numpy.pi, color='black', alpha=0.5)\n", "plt.gca().axvline(3*jax.numpy.pi/2, color='black', alpha=0.5)\n", "plt.gca().axvline(2*jax.numpy.pi, color='black', alpha=0.5)\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 12, "id": "e9f638b7-8676-4270-acb3-9ebafc1a0700", "metadata": {}, "outputs": [], "source": [ "# Set non-zero initial condition\n", "\n", "(q_x, q_y, q_s) = qs = jax.numpy.array([0., 0., -0.001])\n", "(p_x, p_y, p_s) = ps = jax.numpy.array([0.001, 0.001, 0.0001])\n", "qsps = jax.numpy.hstack([qs, ps])" ] }, { "cell_type": "code", "execution_count": 13, "id": "ed6797bb-91bd-47b6-96f5-f3a6b0ef44c6", "metadata": {}, "outputs": [], "source": [ "# Set parameters\n", "\n", "length = jax.numpy.float64(1.0)\n", "voltage = jax.numpy.float64(5.0E+5)*1E-6\n", "frequency = jax.numpy.float64(2.0E+08)*1E-6\n", "lag = jax.numpy.float64(90*jax.numpy.pi/180)" ] }, { "cell_type": "code", "execution_count": 14, "id": "ccb22e2c-b912-4fb0-b9d4-56f353abf0bf", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.0009784760796965218\n" ] } ], "source": [ "# Compute energy gain\n", "\n", "print((1E+6*voltage)/(rigidity(beta(gamma), gamma, ME, 1)*CL)*jax.numpy.sin(lag))" ] }, { "cell_type": "code", "execution_count": 15, "id": "8557496f-c61c-4a76-8e13-42737c36d024", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 0. 0. -0.001 0.001 0.001 0.00107847608]\n", "[ 0.00099941211 0.00099941211 -0.001000998234 0.001001086708 0.001001086708 0.001078463202]\n", "[ 0.000999412549 0.000999412549 -0.001000998237 0.001000001075 0.001000001075 0.001078466761]\n", "\n" ] } ], "source": [ "# Compare with PTC\n", "\n", "print(element_kick(qsps, voltage, lag))\n", "print(element_main(qsps, length, voltage, frequency, lag))\n", "\n", "print(ref := ptc(qsps, 'rfcavity', {'l': float(length), 'no_cavity_totalpath': 'true', 'n_bessel': 10, 'freq': float(frequency), 'volt': float(voltage), 'lag': float(lag/(2*jax.numpy.pi))}, gamma=gamma))\n", "print()" ] } ], "metadata": { "colab": { "collapsed_sections": [ "myt0_gMIOq7b", "5d97819c" ], "name": "03_frequency.ipynb", "provenance": [] }, "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.12.1" }, "latex_envs": { "LaTeX_envs_menu_present": true, "autoclose": false, "autocomplete": true, "bibliofile": "biblio.bib", "cite_by": "apalike", "current_citInitial": 1, "eqLabelWithNumbers": true, "eqNumInitial": 1, "hotkeys": { "equation": "Ctrl-E", "itemize": "Ctrl-I" }, "labels_anchors": false, "latex_user_defs": false, "report_style_numbering": false, "user_envs_cfg": false } }, "nbformat": 4, "nbformat_minor": 5 }