{ "cells": [ { "attachments": {}, "cell_type": "markdown", "id": "262a5ec8-2553-4237-ab62-319b6ca22089", "metadata": {}, "source": [ "# Example-55: Demo" ] }, { "cell_type": "code", "execution_count": 1, "id": "ae1a3c3d-11ff-405f-a9fd-b53e77d64618", "metadata": {}, "outputs": [], "source": [ "# In this DEMO basic functionality used for linear lattice analysis is demonstrated" ] }, { "cell_type": "code", "execution_count": 2, "id": "bc0c1c80-8a01-4e9d-a6e3-b5f4cf3ab5c7", "metadata": {}, "outputs": [], "source": [ "# Set data type and device\n", "\n", "import torch\n", "\n", "dtype = torch.float64\n", "device = torch.device('cuda') if torch.cuda.is_available() else torch.device('cpu')" ] }, { "cell_type": "code", "execution_count": 3, "id": "f79c1725-7c7d-4775-8720-1cd2ab93be7f", "metadata": {}, "outputs": [], "source": [ "# Use selected data type and device for all elements\n", "\n", "from model.library.element import Element\n", "\n", "Element.dtype = dtype\n", "Element.device = device" ] }, { "cell_type": "code", "execution_count": 4, "id": "2016b6b6-020e-49ae-a028-1022b2e8fb9c", "metadata": {}, "outputs": [], "source": [ "# Load ELEGANT SDDS twiss or other table\n", "\n", "from pathlib import Path\n", "from model.command.external import load_sdds\n", "\n", "path = Path('ic.twiss')\n", "\n", "# parameters -- {parameter: value}\n", "# columns -- {element: {parameter: value}}\n", "\n", "parameters, columns = load_sdds(path)" ] }, { "cell_type": "code", "execution_count": 5, "id": "89b0388b-888d-47cf-bd68-0f5d66d285b4", "metadata": {}, "outputs": [], "source": [ "# Set tunes, twiss parameters, phase advances and dispersion at BPMs\n", "\n", "from model.command.util import select\n", "\n", "NUX = torch.tensor(parameters['nux'] % 1, dtype=torch.float64)\n", "NUY = torch.tensor(parameters['nuy'] % 1, dtype=torch.float64)\n", "\n", "kinds = select(columns, 'ElementType')\n", "\n", "S = torch.tensor([value for value, kind in zip(select(columns, 's').values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "\n", "AX = torch.tensor([value for value, kind in zip(select(columns, 'alphax').values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "BX = torch.tensor([value for value, kind in zip(select(columns, 'betax' ).values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "AY = torch.tensor([value for value, kind in zip(select(columns, 'alphay').values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "BY = torch.tensor([value for value, kind in zip(select(columns, 'betay' ).values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "\n", "MUX = torch.tensor([value for value, kind in zip(select(columns, 'psix').values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "MUY = torch.tensor([value for value, kind in zip(select(columns, 'psiy').values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "\n", "DQX = torch.tensor([value for value, kind in zip(select(columns, 'etax' ).values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "DPX = torch.tensor([value for value, kind in zip(select(columns, 'etaxp').values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "DQY = torch.tensor([value for value, kind in zip(select(columns, 'etay' ).values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)\n", "DPY = torch.tensor([value for value, kind in zip(select(columns, 'etayp').values(), kinds.values()) if kind == 'MONI'], dtype=dtype, device=device)" ] }, { "cell_type": "code", "execution_count": 6, "id": "3aebf641-baf9-4207-9dcd-13b0ee2761fb", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'BPM': 16, 'Drift': 68, 'Quadrupole': 28, 'Dipole': 8, 'Sextupole': 16}\n" ] } ], "source": [ "# Load and build ELEGANT lattice\n", "\n", "from model.command.external import load_lattice\n", "\n", "path = Path('ic.lte')\n", "data = load_lattice(path)\n", "\n", "from model.library.line import Line\n", "from model.command.build import build\n", "\n", "ring:Line = build('RING', 'ELEGANT', data)\n", "\n", "# Flatten lattice\n", "\n", "ring.flatten()\n", "\n", "# Merge adjacent drifts (all drifts are renamed)\n", "\n", "ring.merge()\n", "\n", "# Set linear flag in dipoles (dipoles are nonlinear by default)\n", "\n", "for element in ring: \n", " if element.kind == 'Dipole':\n", " element.linear = True\n", "\n", "# Set number of elements of different kinds\n", "\n", "nb = ring.describe['BPM']\n", "nd = ring.describe['Dipole']\n", "nq = ring.describe['Quadrupole']\n", "ns = ring.describe['Sextupole']\n", "\n", "# Describe\n", "\n", "print(ring.describe)" ] }, { "cell_type": "code", "execution_count": 7, "id": "7f9f2de7-a9bc-4370-b95c-0bcf426db8c7", "metadata": {}, "outputs": [ { "data": { "image/png": "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oTDXy8VERES6Zm4XTTRO7NavX6+LOBRkMplSPzoiIiIiTZnrRRONEzttmjBhAlq3bo2SJUsiISEBf/75J06ePInDhw+LGRYRERGRUVJr8ESrVq1w8eLFHI9LSEjA3LlzsWzZMrUqj46Oxvfffw8vLy80b94cV65cweHDh9GiRQu1ziciIiKij9S6YtelSxd07twZzs7OaN++PXx9feHu7g47Ozu8efMGoaGhOHv2LA4cOIC2bdti/vz5alW+du3aPAVvasytHwARERFpl1qJXUBAAHr16oXt27dj69atWLVqFaRSKQD5PewKFSrAz88PV65cQfny5XUasCky134AREREumZuF03U7mNna2uLXr16oVevXgAAqVSKpKQkFCxYMNOUJ0RERERiMteLJrkePJExSTARERERGQaNV54g3TG3y8VERESkXUzsDIC5Xi4mIiLSNXO7aMLEjoiIiEyOuV40YWJHREREZCI0Tuz69OmD06dP6yIWIiIiIsoDjRM7qVSKr776Cl9++SVmz56NyMhIXcRllsytHwARERFpl8aJ3Z49exAZGYn/+7//w9atW+Hp6YnWrVtjx44dSE1N1UWMJs9c+wEQERHpmrldNMlVHzs3NzeMHj0aN27cwKVLl/DFF1+gd+/ecHd3x6hRo3D//n1tx0lERESkNnO9aJKnwRPPnz/H0aNHcfToUVhaWqJNmza4desWKlSogEWLFmkrRiIiIiJSg8aJXWpqKnbu3Il27dqhVKlS2L59O0aOHImoqChs2LAB//zzD7Zt24bp06frIl6TZm6Xi4mIiEi7NF5SrFixYpDJZOjRowcuX76MatWqZTqmadOmcHFx0UJ45sFcLxcTERHpmrldNJEIGr7ijRs3okuXLrCzs9NVTGqLj4+Hs7MzpFIpnJycxA4nZ4mJwMiRwM2bSpsfP3mCFy9ewN3dHSU9PJTPadYMmD1bfzESEREZo4kTgePHFU9fv36N+w8ewMnRERUqVMh8fJUqwOLFgIOD/mLMJU3yHY0TO0NidIndtGnA1Kman7dnD9Chg7ajISIiMg3BwUDHjpqfN3UqMGWKtqPROk3yHa48oU9WGt/5JiIiIl0xwe9lJnb6ZG8vdgRERESUwQhuw2qKiR0RERGRiWBiR0RERGQimNgRERERmQgmdvrk7Z2787y8tBsHERGRKcnt96QJfr8y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NCQSYMiQj0lecLDYERER6c/KlUB6uvwzcMECwNpa7IjIEDGxI6MkkQBff/1xcZzUVGDnTqBkSbEjIyLKO0tLYNUq+biMjM+5gQPl/ZCJssPBE2QSrKyATp3kj0+9fi2flPPgQfka6vfuZT63YUO9hEhEZkrV7DMlSgBNmgCtWgHNmgFFi3KJL8o7JnZk0goWBDp0kD+IiMRgbS2/4kakD7yoS0RERGQimNgRERERmQgmdkREREQmgokdERERkYlgYkdERERkIpjYEREREZkIJnZEREREJoKJHREREZGJYGJHREREZCKY2BERERGZCCZ2RERERCaCiR0RERGRibASOwAiQ+Pt7a30L+kH21172JbiYduT2CSCIAhiB5Fb8fHxcHZ2hlQqhZOTk9jhEBEREWmdJvkOb8USERERmQgmdkREREQmgokdERERkYlgYkdERERkIpjYEREREZkIJnZEREREJoKJHREREZGJYGJHREREZCKY2BERERGZCCZ2RERERCaCiR0RERGRiWBiR0RERGQimNgRERERmQgmdkREREQmgokdERERkYmwEjuAvBAEAQAQHx8vciREREREupGR52TkPdkx6sQuISEBAODh4SFyJERERES6lZCQAGdn52yPkQjqpH8GSiaTISoqCo6OjpBIJGKHg/j4eHh4eCAiIgJOTk5ih2OW+DMQH38G4uPPwDDw5yA+U/kZCIKAhIQEuLu7w8Ii+150Rn3FzsLCAiVKlBA7jEycnJyM+hfIFPBnID7+DMTHn4Fh4M9BfKbwM8jpSl0GDp4gIiIiMhFM7IiIiIhMBBM7LbK1tcWUKVNga2srdihmiz8D8fFnID7+DAwDfw7iM8efgVEPniAiIiKij3jFjoiIiMhEMLEjIiIiMhFM7IiIiIhMBBM7Hdq/fz9q164Ne3t7uLq6omPHjmKHZLZSUlJQrVo1SCQS/Pvvv2KHYzYeP36MgIAAlC5dGvb29ihbtiymTJmC9+/fix2aSVu2bBk8PT1hZ2eH2rVr4/Lly2KHZDbmzJmDmjVrwtHREYULF0bHjh1x7949scMya7/88gskEglGjhwpdih6wcROR3bu3InevXvD398fN27cwLlz5/Ddd9+JHZbZGjduHNzd3cUOw+yEhYVBJpNh5cqVuHPnDhYtWoQVK1Zg4sSJYodmsrZu3YrRo0djypQpCAkJ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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot 2D layout\n", "\n", "from model.command.layout import Layout\n", "\n", "line = ring.clone()\n", "line.ns = 0.01\n", "layout = Layout(line)\n", "\n", "# Generate reference orbit\n", "\n", "x, y, _ = layout.orbit(flat=False, step=0.01, start=(0, 0))\n", "\n", "# Generate layout\n", "\n", "blocks, _ = layout.profile_2d(start=(0, 0), delta=1.0, linewidth=1.0, exclude=['Drift'])\n", "_, labels = layout.profile_2d(start=(0, 0), delta=1.0, linewidth=1.0, exclude=['Dipole', 'Quadrupole', 'Sextupole', 'Drift'], fontsize=8)\n", "\n", "# Plot\n", "\n", "from matplotlib import pyplot as plt\n", "\n", "plt.figure()\n", "plt.plot(x, y, color='black')\n", "for block in blocks:\n", " plt.errorbar(**block)\n", "for label in labels:\n", " plt.text(**label) \n", "plt.xlabel(r'x (m)')\n", "plt.ylabel(r'y (m)')\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 8, "id": "3ec39d96-23be-4baf-8127-7e4a2ca028c8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "tensor([-0.0045, 0.0091, 0.0000, 0.0000], dtype=torch.float64)\n" ] } ], "source": [ "# Tracking (single initial)\n", "\n", "x = torch.tensor([0.001, 0.0, 0.0, 0.0], dtype=dtype, device=device)\n", "\n", "print(ring(x))" ] }, { "cell_type": "code", "execution_count": 9, "id": "f8197444-92df-4b30-aa81-afa6900d4dd9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([1024, 4])\n" ] } ], "source": [ "# Tracking (vectorized map over initial values)\n", "\n", "xs = torch.tensor(2**10*[4*[0.0]], dtype=dtype, device=device)\n", "\n", "print(torch.vmap(ring)(xs).shape)" ] }, { "cell_type": "code", "execution_count": 10, "id": "797a3d32-2c12-4430-abd8-4a8b754f432e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "tensor([-0.0044, 0.0089, 0.0000, 0.0000], dtype=torch.float64)\n" ] } ], "source": [ "# Tracking (pass deviation parameters)\n", "\n", "data = ring.data()\n", "data['Q3D3']['kn'] = 0.25\n", "\n", "print(ring(x, data=data))" ] }, { "cell_type": "code", "execution_count": 11, "id": "2f6bff87-30b8-46ec-aa79-b4048ba627c0", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "tensor([-0.0044, 0.0089, 0.0000, 0.0000], dtype=torch.float64)\n" ] } ], "source": [ "# Tracking (wrapper)\n", "\n", "from model.command.wrapper import group\n", "\n", "kn = torch.tensor([0.25], dtype=dtype, device=device)\n", "mapping, *_ = group(ring, 0, len(ring) - 1, ('kn', None, ['Q3D3'], None))\n", "\n", "print(mapping(x, kn))" ] }, { "cell_type": "code", "execution_count": 12, "id": "75654b2a-d4a3-4cc2-8d8d-2266cfb739f3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "tensor([[-4.4739, -2.6532, 0.0000, 0.0000],\n", " [ 8.9295, 5.0721, 0.0000, 0.0000],\n", " [ 0.0000, 0.0000, 3.8653, -2.1508],\n", " [ 0.0000, 0.0000, 5.5530, -2.8312]], dtype=torch.float64)\n", "tensor([[ 0.0004],\n", " [-0.0007],\n", " [ 0.0000],\n", " [ 0.0000]], dtype=torch.float64)\n" ] } ], "source": [ "# Differentiability with respect to initial state\n", "\n", "print(torch.func.jacrev(mapping, 0)(x, kn))\n", "print(torch.func.jacrev(mapping, 1)(x, kn))" ] }, { "cell_type": "code", "execution_count": 13, "id": "01787a6e-309f-4e33-9ebf-e07e9455cc71", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "tensor([[ 0.0004],\n", " [-0.0007],\n", " [ 0.0000],\n", " [ 0.0000]], dtype=torch.float64)\n" ] } ], "source": [ "# Differentiability with respect to deviation parameters\n", "\n", "print(torch.func.jacrev(mapping, 1)(x, kn))" ] }, { "cell_type": "code", "execution_count": 14, "id": "66d29d21-86f1-4feb-9886-b793cd8d0f80", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "True\n", "True\n" ] } ], "source": [ "# Tunes\n", "\n", "from model.command.tune import tune\n", "\n", "nux, nuy = tune(ring, [], matched=True)\n", "\n", "print(torch.allclose(NUX, nux, rtol=1.0E-12, atol=1.0E-12))\n", "print(torch.allclose(NUY, nuy, rtol=1.0E-12, atol=1.0E-12))" ] }, { "cell_type": "code", "execution_count": 15, "id": "e6039520-9381-463b-a9ee-6810009ef7a0", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([1024, 2])\n", "tensor([[0.0284],\n", " [0.7658]], dtype=torch.float64)\n", "tensor([[ 0.0187, 0.0217, 0.0461, 0.0601, 0.0484, 0.0297, 0.0299, 0.0488,\n", " 0.0597, 0.0457, 0.0214, 0.0192, 0.0669, 0.0667, 0.0191, 0.0216,\n", " 0.0461, 0.0597, 0.0483, 0.0296, 0.0297, 0.0485, 0.0595, 0.0459,\n", " 0.0209, 0.0196, 0.0683, 0.0647],\n", " [-0.0668, -0.0283, -0.0136, -0.0078, -0.0141, -0.0205, -0.0202, -0.0137,\n", " -0.0079, -0.0137, -0.0282, -0.0661, -0.0250, -0.0251, -0.0663, -0.0282,\n", " -0.0137, -0.0079, -0.0138, -0.0203, -0.0205, -0.0140, -0.0078, -0.0137,\n", " -0.0288, -0.0659, -0.0250, -0.0258]], dtype=torch.float64)\n" ] } ], "source": [ "# Parametric tunes\n", "\n", "def fn(dp, kn, ks):\n", " return tune(ring, [dp, kn, ks], ('dp', None, None, None), ('kn', ['Quadrupole'], None, None), ('ks', ['Quadrupole'], None, None), matched=True)\n", "\n", "# Vectorizing map\n", "\n", "dp = torch.tensor([0.0], dtype=dtype, device=device)\n", "\n", "kn = torch.zeros(nq, dtype=dtype, device=device)\n", "ks = torch.zeros(nq, dtype=dtype, device=device)\n", "\n", "print(torch.vmap(fn, in_dims=(None, 0, None))(dp, torch.stack(2**10*[kn]), ks).shape)\n", "\n", "# Derivatives\n", "\n", "print(torch.func.jacrev(fn, 0)(dp, kn, ks))\n", "print(torch.func.jacrev(fn, 1)(dp, kn, ks))" ] }, { "cell_type": "code", "execution_count": 16, "id": "ac9d4db2-7486-4d94-bfce-5e2b248408ad", "metadata": {}, "outputs": [], "source": [ "# Twiss parameters\n", "\n", "from model.command.twiss import twiss\n", "\n", "ax, bx, ay, by = twiss(ring, [], alignment=False, matched=True, advance=True, full=False).T" ] }, { "cell_type": "code", "execution_count": 17, "id": "0df27811-644a-4d53-b9d7-4b04bc3dbcf7", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "True\n", "True\n", "True\n", "True\n" ] } ], "source": [ "# Compare Twiss parameters at BPMs\n", "\n", "ax_bpm, bx_bpm, ay_bpm, by_bpm = torch.stack([torch.stack([*cs]) for (_, kind, *_), *cs in zip(ring.layout(), ax, bx, ay, by) if kind == 'BPM']).T\n", "\n", "print(torch.allclose(AX, ax_bpm, rtol=1.0E-12, atol=1.0E-12))\n", "print(torch.allclose(BX, bx_bpm, rtol=1.0E-12, atol=1.0E-12))\n", "print(torch.allclose(AY, ay_bpm, rtol=1.0E-12, atol=1.0E-12))\n", "print(torch.allclose(BY, by_bpm, rtol=1.0E-12, atol=1.0E-12))" ] }, { "cell_type": "code", "execution_count": 18, "id": "37ade225-ee48-4491-a53c-3871abf98ebc", "metadata": {}, "outputs": [ { "data": { "image/png": "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cu+9Iied5P9eKCLyww/4ftVVInHsiRO53pVXoqTcsmUijz8u0qoVrgFJSfg66SQk9Jx0ksi8efibcePYFiYisgKbUkQUlLg4ZGs/+SQaaqqx1hyV3U1E7vfLXyKosX8/vpqTkIDOHxERUaRISECQ4sUXcT8MJC1N5MILbd8sIgqBzEyRYcOwVoaeEnQJCVxXkojIKgxqEFHQRo8WWbRIZOtWZJ20atX0V6dOIoMGOb3FRGSVU08VmTMH5eVUbXCPR/tS/xYRycoSadPGme0kIiKyy1VXibRtiwXAfe9/Io3vib17iyQmOrOdRGS9KVPQHi4txTWgokLk6FGRY8fwXf2uqgrl6tLSnN5iIqLI4PF61WTY0CgtLZXU1FQpKSmRlJSUUL40ERERERERERERERGFIb2xAy4UTkRERERERERERERErsCgBhERERERERERERERuQKDGkRERERERERERERE5AoMahARERERERERERERkSswqEFERERERERERERERK7AoAYREREREREREREREbkCgxpEREREREREREREROQKDGoQEREREREREREREZErMKhBRERERERERERERESuwKAGERERERERERERERG5QpzTG0DkRoWFIiUlTm+FfqmpIhkZTm9FaLntMxKJzs/JbXhcuQM/JyIi+/AaG/74GZFdeGyFP35GRBQtGNQgMqiwUGTcOJEjR5zeEv3S00Xmz4+ehoIbPyOR6Puc3IbHlTvwcyIisg+vseGPnxHZhcdW+ONnRETRhEENIoNKStBIaNFCJDHR6a0JrLIS21tSEj2NBLd9RiLR+Tm5DY8rd+DnRERkH15jwx8/I7ILj63wx8+IiKIJgxpEJiUmiiQlOb0V+lRXO70FznDTZyQSvZ+T2/C4cgd+TkRE9uE1NvzxMyK78NgKf/yMiCgacKFwIiIiIiIiIiIiIiJyBQY1iIiIiIiIiIiIiIjIFRjUICIiIiIiIiIiIiIiV2BQg4iIiIiIiIiIiIiIXIFBDSIiIiIiIiIiIiIicgUGNYiIiIiIiIiIiIiIyBUY1CAiIiIiIiIiIiIiIldgUIOIiIiIiIiIiIiIiFwhzukNIB0KC0VKSgI/LjVVJCPD/u2xm13vV8/zRso+1KnwaKGUVGr7JDUxVTJOavr9B3y8iX1s+TZEumDPD7eeB8Fut1vft414/ruQHccx2xj+6Xm/0bbvjOK+Ns+O9xtt+1Anp++FDZ/Pkm2IdMHcC918Htj9vsPxPdvM0vPfxLEV7Ovr+ZuIY/WxrPdzM/q84Ypts9Dh/gkJBjXCXWGhyLhxIkeOBH5serrI/PnuPiHser96nzcS9qFOhUcLZdxr4+RIpbZP0hPTZf418/02jAI+3sQ+tnwbIl2w54dbz4Ngt9ut79tGPP9dyI7jmG2MpgV6v9G274zivjbPjvcbbftQJ6fvhYUnSaPnC3obIl0w90I3nweheN/h9p5tZun5f1QMH1v+zn+jrx/obyKO1ceykWuCkecNV2ybhQ73T8gwqBHuSkpwIrRoIZKY2PTjKivxuJISd58Mdr1fPc8bKftQp5LKEjlSeURaxLaQxLhEqayplCOVR6SkssRvoyjg403sY8u3IdIFe3649TwIdrvd+r5txPPfhew4jtnG8E/P+422fWcU97V5drzfaNuHOjl9LyyJlXrPJyK8FwYSzL3QzeeB3e87HN+zzSw9/0vE8LHV8Pw3+voiga8XEcfqY1nvNcHo84Yrts1Ch/snZBjUcIvERJGkpOYfU10dmm0JBbveb6DnjaR9qFNiXKIkxWOfVNcGfv8BH29iH1u+DZEu2PPDredBsNvt1vdtI57/LmTHccw2RmN632+07TujuK/Ns+P9Rts+1Mnpe6Hv81m2DZEumHuhm88DO993uL5nm1l6/ps4toJ5fb1/E3GsPpb1fG5mnjdcsW0WOtw/tuNC4URERERERERERERE5AoMahARERERERERERERkSswqEFERERERERERERERK7AoAYREREREREREREREbmCqaDGc889J507d5bExEQZPHiwrFixwurtIiIiIiIiIiIiIiIiqsdwUOP111+XKVOmyMyZM+Xbb7+VgoICGTVqlBQWFtqxfURERERERERERERERCJiIqjx1FNPyc033yw33HCD9OzZU1544QVJSkqSl156yY7tIyIiIiIiIiIiIiIiEhGROCMPrq6ullWrVsn06dNP/C4mJkZGjhwpS5cu9fs3VVVVUlVVdeLfpaWlJjc1ylVWBvf/bmPX+23u7ww+p1t2ecBdWVNZ73vA5wv0eBP72PJt0LEp4cbQtgZ7flh4HoRUsNtt0fsO513UEM9/d7Ds/Lfj3hjM84YrK99vtO07o7ivzbPj/Vr4nG7a3eF+L/R9HivvhZH0GRn6AzvbyU6z631HaD9YJMTnv4nPwOzrB/qbSPqMDP2BHfdGs88brtg2Cx3uH9sZCmocPnxYamtrpV27dvV+365dO9m4caPfv3n00Udl1qxZ5rcw2qWmiqSnixw5IlJd3fxj09PxeDez6/3qfV4dz2lkE8OFv7eVmpgq6YnpcqTyiFTX4o2kJ6ZLaqL/9x/w8Sb2seXboB7nws9IRMfhF+z5YeF5EFLBbrdF7zuSjiue/+HHsvPfjnuj0ecNV1a+32jbd0ZxX5tnx/u18Dkj6Rrr9L0wNVEaPV/Q22BgM8KNrsM5mHuhm68loXjfEdoPFgnB+Z8qho8tf+e/0df39zeR9Bk1YnVb2OjOCrfrglFsm4UO90/IeLxer1fvg/ft2yedOnWSr7/+WoYOHXri9/fee68sXrxYli9f3uhv/M3UyMrKkpKSEklJSQly86NEYaFISUngx6WmimRk2L89drPr/ep5Xp3PqXcTw0VTb6vwaKGUVGpvJDUxVTJOavr9B3y8iX1s+TYY2JRwo+vwC/b8sPA8CKlgt9ui9x1JxxXP//Bi2flvx73RzPOGKyvfb7TtO6O4r82z4/1a+JyRdI11+l7Y8Pks2QadmxFudB/OwdwL3Xwtsft9R2g/WCRE57+JYyvY12/qbyLpM2rE6rawkZ0VjtcFo9g2Cx3un6CUlpZKampqwNiBoaBGdXW1JCUlyVtvvSVjx4498fsJEyZIcXGxvPfee5ZtGBERERERERERERERRQe9sQNDC4W3aNFC+vfvLwsXLjzxu7q6Olm4cGG9mRtERERERERERERERERWM7SmhojIlClTZMKECTJgwAAZNGiQzJ49W44ePSo33HCDHdtHREREREREREREREQkIiaCGldffbUcOnRIHnzwQTlw4ID069dPPv7440aLhxMREREREREREREREVnJ0JoaVuCaGkRERERERERERERE5MuWNTWIiIiIiIiIiIiIiIicwqAGERERERERERERERG5AoMaRERERERERERERETkCgxqEBERERERERERERGRKzCoQURERERERERERERErsCgBhERERERERERERERuQKDGkRERERERERERERE5AoMahARERERERERERERkSswqEFERERERERERERERK7AoAYREREREREREREREbkCgxpEREREREREREREROQKDGoQEREREREREREREZErMKhBRERERERERERERESuwKAGERERERERERERERG5AoMaRERERERERERERETkCgxqEBERERERERERERGRKzCoQURERERERERERERErsCgBhERERERERERERERuQKDGkRERERERERERERE5AoMahARERERERERERERkSswqEFERERERERERERERK7AoAYREREREREREREREbkCgxpEREREREREREREROQKcaF+Qa/XKyIipaWloX5pIiIiIiIiIiIiIiIKQypmoGIITQl5UKOsrExERLKyskL90kREREREREREREREFMbKysokNTW1yf/3eAOFPSxWV1cn+/btk+TkZPF4PKF86bBWWloqWVlZsmfPHklJSXF6c4jIAbwOEEU3XgOIiNcBIuJ1gCi68RpA0c7r9UpZWZl07NhRYmKaXjkj5DM1YmJiJDMzM9Qv6xopKSm8aBFFOV4HiKIbrwFExOsAEfE6QBTdeA2gaNbcDA2FC4UTEREREREREREREZErMKhBRERERERERERERESuwKBGmEhISJCZM2dKQkKC05tCRA7hdYAouvEaQES8DhARrwNE0Y3XACJ9Qr5QOBERERERERERERERkRmcqUFERERERERERERERK7AoAYREREREREREREREbkCgxpEREREREREREREROQKDGoQEREREREREREREZErMKgRJp577jnp3LmzJCYmyuDBg2XFihVObxIRhcBDDz0kHo+n3lf37t2d3iwistGSJUvk4osvlo4dO4rH45F333233v97vV558MEHpUOHDtKyZUsZOXKkbNmyxZmNJSJbBLoOTJw4sVH7YPTo0c5sLBFZ7tFHH5WBAwdKcnKyZGRkyNixY2XTpk31HlNZWSmTJk2S1q1bS6tWreTyyy+XgwcPOrTFRGQ1PdeB4cOHN2oP3HLLLQ5tMVF4YVAjDLz++usyZcoUmTlzpnz77bdSUFAgo0aNksLCQqc3jYhCoFevXrJ///4TX19++aXTm0RENjp69KgUFBTIc8895/f/H3/8cXnmmWfkhRdekOXLl8tJJ50ko0aNksrKyhBvKRHZJdB1QERk9OjR9doHr776agi3kIjstHjxYpk0aZIsW7ZMPvvsMzl+/Licf/75cvTo0ROP+d3vfif/+c9/5M0335TFixfLvn375LLLLnNw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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot beta functions\n", "\n", "from matplotlib.patches import Rectangle\n", "\n", "layout = Layout(ring)\n", "_, _, lengths, *_ = layout.slicing_table()\n", "rectangles = layout.profile_1d(scale=0.75, shift=0.0, text=False, exclude=['BPM', 'Drift'])\n", "\n", "plt.figure(figsize=(16, 4))\n", "plt.errorbar(S.cpu().numpy(), BX.cpu().numpy(), fmt=' ', color='red', alpha=0.75, marker='x')\n", "plt.errorbar(ring.locations().cpu().numpy(), bx.cpu().numpy(), fmt='-', color='red', alpha=0.75)\n", "plt.errorbar(S.cpu().numpy(), BY.cpu().numpy(), fmt=' ', color='blue', alpha=0.75, marker='x')\n", "plt.errorbar(ring.locations().cpu().numpy(), by.cpu().numpy(), fmt='-', color='blue', alpha=0.75)\n", "for rectangle in rectangles:\n", " plt.gca().add_patch(Rectangle(**rectangle))\n", "plt.ylim(-0.5, 5.0)\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 19, "id": "13cef76d-b7b5-4158-b744-24668464a2e0", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([1024, 4])\n", "tensor([[-222.0538],\n", " [-110.7909],\n", " [ 27.9708],\n", " [ -13.9537]], dtype=torch.float64)\n", "tensor([[-0.0893, 0.4014, 1.2554, -0.9068, -1.5491, -0.9866, -0.6147, -0.7071,\n", " -1.9186, 0.2045, -0.1659, 0.4221, 1.9239, 2.2147, 0.5854, -0.4487,\n", " -0.4684, -1.9595, -0.0112, -0.2204, -0.9209, -1.5967, -0.0541, 1.5081,\n", " 0.5988, -0.3222, -0.4638, 0.8415],\n", " [ 0.0182, 0.1496, 0.5733, -0.6730, -0.7756, -0.5178, -0.4104, -0.5325,\n", " -0.9651, 0.2699, -0.0145, 0.1734, 0.9035, 1.1954, 0.3374, -0.2984,\n", " -0.4055, -1.0062, 0.1660, -0.0147, -0.4518, -0.8235, 0.1829, 0.8281,\n", " 0.3562, -0.2319, -0.4848, 0.2358],\n", " [ 1.6183, -0.0219, -0.2993, -0.0049, 0.3526, 0.2005, -0.5750, -0.4693,\n", " 0.1832, 0.0065, -0.5948, -2.2667, -0.8472, 0.8119, 2.2819, 0.7206,\n", " 0.0759, -0.2127, 0.4684, 0.6358, -0.0792, -0.2893, -0.0394, 0.3584,\n", " 0.2001, -1.2685, -0.6598, 0.2486],\n", " [-0.7202, 0.1496, 0.2258, -0.0342, -0.1608, -0.0228, 0.3921, 0.2789,\n", " -0.1348, 0.0622, 0.4565, 1.3632, 0.4758, -0.5180, -1.3618, -0.3315,\n", " 0.0206, 0.1024, -0.2828, -0.3332, 0.1447, 0.2237, -0.0135, -0.1681,\n", " 0.0184, 1.0088, 0.4647, -0.2653]], dtype=torch.float64)\n" ] } ], "source": [ "# Parametric twiss (lattice start location)\n", "\n", "def fn(dp, kn, ks):\n", " return twiss(ring, [dp, kn, ks], ('dp', None, None, None), ('kn', ['Quadrupole'], None, None), ('ks', ['Quadrupole'], None, None), advance=False, matched=True)\n", "\n", "# Vectorizing map\n", "\n", "dp = torch.tensor([0.0], dtype=dtype, device=device)\n", "\n", "kn = torch.zeros(nq, dtype=dtype, device=device)\n", "ks = torch.zeros(nq, dtype=dtype, device=device)\n", "\n", "print(torch.vmap(fn, in_dims=(None, 0, None))(dp, torch.stack(2**10*[kn]), ks).shape)\n", "\n", "# Derivatives\n", "\n", "print(torch.func.jacrev(fn, 0)(dp, kn, ks))\n", "print(torch.func.jacrev(fn, 1)(dp, kn, ks))" ] }, { "cell_type": "code", "execution_count": 20, "id": "e8e6459b-3073-4038-893a-e103ae8b71c8", "metadata": {}, "outputs": [], "source": [ "# Phase advance\n", "\n", "from model.command.advance import advance\n", "\n", "mux, muy = advance(ring, [], alignment=False, matched=True).T" ] }, { "cell_type": "code", "execution_count": 21, "id": "ce75d584-a53f-46d1-8396-d1cd823bbc8f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "True\n", "True\n" ] } ], "source": [ "# Total tunes\n", "\n", "print(torch.allclose(mux.sum()/(2*torch.pi), torch.tensor(parameters['nux'], dtype=torch.float64), rtol=1.0E-12, atol=1.0E-12))\n", "print(torch.allclose(muy.sum()/(2*torch.pi), torch.tensor(parameters['nuy'], dtype=torch.float64), rtol=1.0E-12, atol=1.0E-12))" ] }, { "cell_type": "code", "execution_count": 22, "id": "075e5dc0-e063-4839-b92a-3de738879529", "metadata": {}, "outputs": [ { "data": { "image/png": "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NEJCl4PBuHYZAACkDo/jOE6yOzGYWKudAwAAAACAJNu714KM556z4t6STSe1YIGNyrjySik7O7l9BAAAE1aseQAjNQAAAAAAwOh0dEgvvGBhxq5d7vbycmn5cmtVVcnrHwAAmHQINQAAAAAAQOwcR3r3XQsyXnhB6uqy7ZmZNhrj1lulyy6TMjKS208AADApEWoAAAAAAIDhtbRIzz5rYcbBg+72ujqrk7FsmVRSkqzeAQCANEGoAQAAAAAAogsGpTfflJ5+WnrlFam317Z7vdJ119mojAsusNoZAAAA44BQAwAAAAAARGpslDZssNbU5G6fO9eCjOuvl/Lzk9c/AACQtgg1AAAAAACA1NNjozGeekrats1qZ0hSUZF0000WZsyaldw+AgCAtEeoAQAAAABAOtu/36aXevZZye93t196qdXKuPpqKScnad0DAAAIlzHaGz700ENauHChioqKVFFRodtuu027d++OuE5nZ6fuuusulZWVqbCwUHfccYcaGxvH3GkAAAAAADAGp0/b1FJ33y2tWiU98YQFGmVl0qc+Ja1bJ33nO9INNxBoAACACWXUIzU2b96su+66SwsXLlRvb6++8pWvaOnSpXr33XdVUFAgSbr33nv11FNP6YknnpDP59Pdd9+t22+/Xa+88krcngAAAAAAAIiB40i7dtn0Ui+8YMGGJGVkSFdcYdNLLVwoZWYmt58AAABD8DhOaJLMsTl+/LgqKiq0efNmXXPNNfL7/SovL9e6dev0sY99TJK0a9cunXfeedqyZYsuv/zyYe8zEAjI5/PJ7/eruLg4Ht0EAAAAACC9+P3Sc8/ZFFP79rnbp02zIGPpUqm0NHn9AwAAUOx5QNxqavj/e97N0v8+ENq2bZt6enp04403nrnO3LlzVVdXN2io0dXVpa6urognAQAAAAAARshxpLfeslEZf/iD1Ntr23NypGuvtTDjwgsljyep3QQAABipuIQawWBQX/jCF3TllVdq3rx5kqSGhgbl5OSopKQk4rqVlZVqaGiIej8PPfSQ1qxZE48uAQAAAACQHjo6pIMHpQMH3Pb++9Lx4+51Zs+2IOOGG6TCwuT1FQAAYIziEmrcdddd2rlzp15++eUx3c/999+v1atXn7kcCARUW1s71u4BAAAAABC7tWutzsSKFQP31ddLwaC0cmVi+9DbK7W22tRRgYAt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ffH5B9ITn30gPfHZB9ITn30gdiMqFA4AAAAAAAAAAJAsg5cQBwAAAAAAAAAAmEAINQAAAAAAAAAAQEog1AAAAAAAAAAAACmBUAMAAAAAAAAAAKQEQo0U9P3vf18zZsxQbm6uFi9erDfeeCPZXQKQQA8++KA8Hk9Emzt3brK7BSDOXnrpJX34wx9WTU2NPB6PfvOb30TsdxxHX//611VdXa28vDzdeOONev/995PTWQBxNdznf+XKlQOOBW6++ebkdBZAXDz00ENauHChioqKVFFRodtuu027d++OuE5nZ6fuuusulZWVqbCwUHfccYcaGxuT1GMA8RDLZ//aa68d8L3/N3/zN0nqMTAxEWqkmP/4j//Q6tWr9cADD+itt97SRRddpGXLlqmpqSnZXQOQQBdccIGOHTt2pr388svJ7hKAOGtvb9dFF12k73//+1H3f/vb39Z3v/td/fCHP9Trr7+ugoICLVu2TJ2dnePcUwDxNtznX5JuvvnmiGOBn//85+PYQwDxtnnzZt1111167bXX9Nxzz6mnp0dLly5Ve3v7mevce++9+t3vfqcnnnhCmzdv1tGjR3X77bcnsdcAxiqWz74k/dVf/VXE9/63v/3tJPUYmJg8juM4ye4EYrd48WItXLhQ3/ve9yRJwWBQtbW1uueee/TlL385yb0DkAgPPvigfvOb32j79u3J7gqAceLxeLR+/XrddtttkmyURk1Nje677z598YtflCT5/X5VVlZq7dq1+vjHP57E3gKIp/6ff8lGarS0tAwYwQFg8jh+/LgqKiq0efNmXXPNNfL7/SovL9e6dev0sY99TJK0a9cunXfeedqyZYsuv/zyJPcYQDz0/+xLNlLj4osv1iOPPJLczgETGCM1Ukh3d7e2bdumG2+88cy2jIwM3XjjjdqyZUsSewYg0d5//33V1NRo1qxZ+su//EsdPHgw2V0CMI727dunhoaGiGMAn8+nxYsXcwwApIlNmzapoqJCc+bM0ec//3mdPHky2V0CEEd+v1+SVFpaKknatm2benp6Ir77586dq7q6Or77gUmk/2c/5Gc/+5mmTp2qefPm6f7771dHR0cyugdMWFnJ7gBid+LECfX19amysjJie2VlpXbt2pWkXgFItMWLF2vt2rWaM2eOjh07pjVr1ujqq6/Wzp07VVRUlOzuARgHDQ0NkhT1GCC0D8DkdfPNN+v222/XzJkztWfPHn3lK1/R8uXLtWXLFmVmZia7ewDGKBgM6gtf+IKuvPJKzZs3T5J99+fk5KikpCTiunz3A5NHtM++JH3yk5/U9OnTVVNTox07duhLX/qSdu/erV//+tdJ7C0wsRBqAMAEt3z58jPr8+fP1+LFizV9+nT953/+pz772c8msWcAAGA8hE8xd+GFF2r+/Pk6++yztWnTJt1www1J7BmAeLjrrru0c+dO6uYBaWawz/7nPve5M+sXXnihqqurdcMNN2jPnj06++yzx7ubwITE9FMpZOrUqcrMzFRjY2PE9sbGRlVVVSWpVwDGW0lJic4991x98MEHye4KgHES+p7nGACAJM2aNUtTp07lWACYBO6++249+eSTevHFFzVt2rQz26uqqtTd3a2WlpaI6/PdD0wOg332o1m8eLEk8b0PhCHUSCE5OTlasGCBnn/++TPbgsGgnn/+eS1ZsiSJPQMwntra2rRnzx5VV1cnuysAxsnMmTNVVVUVcQwQCAT0+uuvcwwApKHDhw/r5MmTHAsAKcxxHN19991av369XnjhBc2cOTNi/4IFC5SdnR3x3b97924dPHiQ734ghQ332Y9m+/btksT3PhCG6adSzOrVq3XnnXfqsssu06JFi/TII4+ovb1dq1atSnbXACTIF7/4RX34wx/W9OnTdfToUT3wwAPKzMzUJz7xiWR3DUActbW1Rfz6at++fdq+fbtKS0tVV1enL3zhC/rmN7+p2bNna+bMmfra176mmpoa3XbbbcnrNIC4GOrzX1paqjVr1uiOO+5QVVWV9uzZo7/7u7/TOeeco2XLliWx1wDG4q677tK6dev029/+VkVFRWfqZPh8PuXl5cnn8+mzn/2sVq9erdLSUhUXF+uee+7RkiVLdPnllye59wBGa7jP/p49e7Ru3TrdcsstKisr044dO3Tvvffqmmuu0fz585Pce2Di8DiO4yS7ExiZ733ve3r44YfV0NCgiy++WN/97nfPDEUDMPl8/OMf10svvaSTJ0+qvLxcV111lf7hH/6BuTSBSWbTpk267rrrBmy/8847tXbtWjmOowceeED/+q//qpaWFl111VX6wQ9+oHPPPTcJvQUQT0N9/h999FHddtttevvtt9XS0qKamhotXbpUf//3f6/Kysok9BZAPHg8nqjbH3/8ca1cuVKS1NnZqfvuu08///nP1dXVpWXLlukHP/gB008BKWy4z/6hQ4f0qU99Sjt37lR7e7tqa2v10Y9+VF/96ldVXFw8zr0FJi5CDQAAAAAAAAAAkBKoqQEAAAAAAAAAAFICoQYAAAAAAAAAAEgJhBoAAAAAAAAAACAlEGoAAAAAAAAAAICUQKgBAAAAAAAAAABSAqEGAAAAAAAAAABICYQaAAAAAAAAAAAgJRBqAAAAAAAAAACAlECoAQAAAAAAAAAAUgKhBgAAAAAAAAAASAmEGgAAAAAAAAAAICUQagAAAAAAAAAAgJTw/wOh5EgTNyM3BQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot accumulated phase advance\n", "\n", "mux_sum = torch.cat([torch.tensor([0.0], dtype=torch.float64), mux.cumsum(-1)])\n", "muy_sum = torch.cat([torch.tensor([0.0], dtype=torch.float64), muy.cumsum(-1)])\n", "\n", "layout = Layout(ring)\n", "_, _, lengths, *_ = layout.slicing_table()\n", "rectangles = layout.profile_1d(scale=5.0, shift=-2.5, text=False, exclude=['BPM', 'Drift'])\n", "\n", "plt.figure(figsize=(16, 4))\n", "plt.errorbar(S.cpu().numpy(), MUX.cpu().numpy(), fmt=' ', color='red', alpha=0.75, marker='x')\n", "plt.errorbar(torch.cat([ring.locations(), ring.length.unsqueeze(-1)]).cpu().numpy(), mux_sum.cpu().numpy(), fmt='-', color='red', alpha=0.75)\n", "plt.errorbar(S.cpu().numpy(), MUY.cpu().numpy(), fmt=' ', color='blue', alpha=0.75, marker='x')\n", "plt.errorbar(torch.cat([ring.locations(), ring.length.unsqueeze(-1)]).cpu().numpy(), muy_sum.cpu().numpy(), fmt='-', color='blue', alpha=0.75)\n", "for rectangle in rectangles:\n", " plt.gca().add_patch(Rectangle(**rectangle))\n", "plt.ylim(-5.0, 35.0)\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 23, "id": "8312ed20-5975-4207-b31c-27424c5e7290", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([1024, 136, 2])\n", "torch.Size([136, 2, 1])\n", "torch.Size([136, 2, 28])\n" ] } ], "source": [ "# Parametric advance\n", "\n", "def fn(dp, kn, ks):\n", " return advance(ring, [dp, kn, ks], ('dp', None, None, None), ('kn', ['Quadrupole'], None, None), ('ks', ['Quadrupole'], None, None), matched=True)\n", "\n", "# Vectorizing map\n", "\n", "dp = torch.tensor([0.0], dtype=dtype, device=device)\n", "\n", "kn = torch.zeros(nq, dtype=dtype, device=device)\n", "ks = torch.zeros(nq, dtype=dtype, device=device)\n", "\n", "print(torch.vmap(fn, in_dims=(None, 0, None))(dp, torch.stack(2**10*[kn]), ks).shape)\n", "\n", "# Derivatives\n", "\n", "print(torch.func.jacrev(fn, 0)(dp, kn, ks).shape)\n", "print(torch.func.jacrev(fn, 1)(dp, kn, ks).shape)" ] }, { "cell_type": "code", "execution_count": 24, "id": "c5b6bea5-40ce-4056-a17b-40f7d89ad880", "metadata": {}, "outputs": [], "source": [ "# Dispersion\n", "\n", "from model.command.orbit import dispersion\n", "\n", "guess = torch.tensor(4*[0.0], dtype=dtype, device=device)\n", "dqx, dpx, dqy, dpy = dispersion(ring, guess, [], advance=True, full=False)" ] }, { "cell_type": "code", "execution_count": 25, "id": "0285387c-4c23-4159-8f6f-fde577d09e39", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "True\n", "True\n", "True\n", "True\n" ] } ], "source": [ "# Compare dispersion at BPMs\n", "\n", "dqx_bpm, dpx_bpm, dqy_bpm, dpy_bpm = torch.stack([torch.stack([*cs]) for (_, kind, *_), *cs in zip(ring.layout(), dqx, dpx, dqy, dpy) if kind == 'BPM']).T\n", "\n", "print(torch.allclose(DQX, dqx_bpm, rtol=1.0E-12, atol=1.0E-12))\n", "print(torch.allclose(DPX, dpx_bpm, rtol=1.0E-12, atol=1.0E-12))\n", "print(torch.allclose(DQY, dqy_bpm, rtol=1.0E-12, atol=1.0E-12))\n", "print(torch.allclose(DPY, dpy_bpm, rtol=1.0E-12, atol=1.0E-12))" ] }, { "cell_type": "code", "execution_count": 26, "id": "2b9d2bd3-1127-4c74-9007-749828023202", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot dispersion\n", "\n", "layout = Layout(ring)\n", "_, _, lengths, *_ = layout.slicing_table()\n", "rectangles = layout.profile_1d(scale=0.25, shift=-0.25, text=False, exclude=['BPM', 'Drift'])\n", "\n", "plt.figure(figsize=(16, 4))\n", "plt.errorbar(S.cpu().numpy(), DQX.cpu().numpy(), fmt=' ', color='red', alpha=0.75, marker='x')\n", "plt.errorbar(ring.locations().cpu().numpy(), dqx.cpu().numpy(), fmt='-', color='red', alpha=0.75)\n", "for rectangle in rectangles:\n", " plt.gca().add_patch(Rectangle(**rectangle))\n", "plt.ylim(-0.5, 1.0)\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 27, "id": "feaf47e3-ef54-41dd-8037-e7db032a6e22", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([1024, 4])\n", "tensor([[-1.1162e-03, -8.2786e-04, -2.4801e-03, 1.9629e-01, 2.7563e-05,\n", " 9.5180e-06, -2.3718e-05, -4.7673e-05, -1.0284e-01, 2.2051e-03,\n", " 6.9025e-04, 1.3755e-03, 5.3769e-03, 5.7391e-03, 1.5789e-03,\n", " 3.3797e-04, 1.3670e-03, 8.2397e-02, -6.1463e-05, -3.5245e-05,\n", " -1.4306e-05, -1.4063e-05, 3.4270e-01, -2.6831e-03, -9.3952e-04,\n", " -6.7697e-04, -3.2418e-03, -4.2953e-03],\n", " [ 1.6338e-03, 1.6955e-03, 4.8680e-03, -5.0176e-01, -9.1579e-06,\n", " 8.7653e-06, 6.6251e-05, 1.2097e-04, 2.7302e-02, -3.4149e-03,\n", " -9.8856e-04, -2.7727e-03, -1.0457e-02, -1.0501e-02, -2.7973e-03,\n", " -9.4603e-04, -3.3137e-03, 1.1249e-02, 9.2654e-05, 5.0532e-05,\n", " 8.0420e-06, -3.5286e-06, -5.1448e-01, 4.8677e-03, 1.6412e-03,\n", " 1.7617e-03, 7.6393e-03, 9.0321e-03],\n", " [ 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00],\n", " [ 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00]], dtype=torch.float64)\n", "tensor([[ 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00],\n", " [ 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00, 0.0000e+00, 0.0000e+00],\n", " [ 6.0868e-03, -1.9121e-03, -1.6954e-03, 2.1783e-01, 1.3196e-04,\n", " 1.1426e-04, 4.9850e-05, 1.7995e-05, -3.0953e-01, -2.5745e-03,\n", " -1.3526e-03, 1.0628e-03, 1.8173e-04, -7.3803e-03, -6.3713e-03,\n", " 2.3662e-03, 2.6927e-03, -7.3148e-02, -9.2005e-05, -9.1568e-05,\n", " -6.9841e-05, -5.2553e-05, 1.9908e-01, 3.1329e-03, 2.0529e-03,\n", " -3.7047e-03, -3.4655e-03, 5.5212e-03],\n", " [ 3.3306e-03, -9.0348e-04, -6.1116e-04, 1.6731e-01, 7.2547e-05,\n", " 5.7852e-05, 1.3325e-05, -6.7422e-06, -2.0683e-01, -1.2303e-03,\n", " -5.0343e-04, -2.6321e-04, -9.7110e-04, -4.6478e-03, -3.8785e-03,\n", " 1.3020e-03, 1.3295e-03, -9.1948e-02, -5.6294e-05, -5.2568e-05,\n", " -3.2302e-05, -1.9640e-05, 1.5820e-01, 1.7351e-03, 1.0243e-03,\n", " -1.4231e-03, -1.0576e-03, 3.9832e-03]], dtype=torch.float64)\n" ] } ], "source": [ "# Parametric dispersion\n", "\n", "def fn(kn, ks):\n", " return dispersion(ring, guess, [kn, ks], ('kn', ['Quadrupole'], None, None), ('ks', ['Quadrupole'], None, None), advance=False)\n", "\n", "# Vectorizing map\n", "\n", "kn = torch.zeros(nq, dtype=dtype, device=device)\n", "ks = torch.zeros(nq, dtype=dtype, device=device)\n", "\n", "print(torch.vmap(fn, in_dims=(0, None))(torch.stack(2**10*[kn]), ks).shape)\n", "\n", "# Derivatives\n", "\n", "print(torch.func.jacrev(fn, 0)(kn, ks))\n", "print(torch.func.jacrev(fn, 1)(kn, ks))" ] }, { "cell_type": "code", "execution_count": 28, "id": "89d75a6d-2497-4e16-8793-19ff9b03326c", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "BPM(name=\"BPM05\", direction=\"inverse\", dp=0.0)\n", "Drift(name=\"DR001\", length=0.116715, dp=0.0, exact=False, ns=1, order=0)\n", "Quadrupole(name=\"Q3D3\", length=0.0491425, kn=-8.426928737999999, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3D3_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3D3\", length=0.0491425, kn=-8.426928737999999, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3D3_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3D3\", length=0.0491425, kn=-8.426928737999999, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3D3_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3D3\", length=0.0491425, kn=-8.426928737999999, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Drift(name=\"DR002\", length=0.9684299999999999, dp=0.0, exact=False, ns=1, order=0)\n", "Quadrupole(name=\"Q3D2\", length=0.0491425, kn=-2.695188250999999, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3D2_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3D2\", length=0.0491425, kn=-2.695188250999999, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3D2_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3D2\", length=0.0491425, kn=-2.695188250999999, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3D2_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3D2\", length=0.0491425, kn=-2.695188250999999, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Drift(name=\"DR003\", length=0.221715, dp=0.0, exact=False, ns=1, order=0)\n", "Quadrupole(name=\"Q3F2\", length=0.045, kn=13.544085930000001, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3F2_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3F2\", length=0.045, kn=13.544085930000001, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3F2_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3F2\", length=0.045, kn=13.544085930000001, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Corrector(name=\"Q3F2_CXY\", cx=0.0, cy=0.0, factor=0.3333333333333333, dp=0.0)\n", "Quadrupole(name=\"Q3F2\", length=0.045, kn=13.544085930000001, ks=0.0, dp=0.0, exact=False, ns=1, order=0)\n", "Drift(name=\"DR004\", length=0.065, dp=0.0, exact=False, ns=1, order=0)\n", "BPM(name=\"BPM07\", direction=\"forward\", dp=0.0)\n" ] } ], "source": [ "# Modify lattice for ORM computation\n", "\n", "from model.library.corrector import Corrector\n", "\n", "# Clone lattice\n", "\n", "copy = ring.clone()\n", "\n", "# Split BPMs and change lattice start\n", "\n", "copy.split((None, ['BPM'], None, None))\n", "copy.roll(1)\n", "\n", "# Insert correctors into quadrupoles and dipoles\n", "\n", "ncq = 2**2\n", "ncd = 2**4\n", "\n", "for name in [name for name, kind, *_ in copy.layout() if kind == 'Quadrupole']:\n", " corrector = Corrector(f'{name}_CXY', factor=1/(ncq - 1))\n", " copy.split((ncq, None, [name], None), paste=[corrector]) \n", " \n", "for name in [name for name, kind, *_ in copy.layout() if kind == 'Dipole']:\n", " corrector = Corrector(f'{name}_CXY', factor=1/(ncd - 1))\n", " copy.split((ncd, None, [name], None), paste=[corrector])\n", "\n", "# Splice lattice\n", "\n", "copy.splice()\n", "\n", "# Print sequence between first two BPMs\n", "\n", "line, *_ = copy\n", "print(line)" ] }, { "cell_type": "code", "execution_count": 29, "id": "d0231995-5ff1-4fe1-94bc-1d9707ded701", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([32, 72])\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Compute and plot ORM\n", "\n", "from model.command.orbit import ORM\n", "\n", "orm = ORM(copy, guess, [])\n", "print(orm.shape)\n", "\n", "data = orm.clone()\n", "data[data==0.0] = torch.nan\n", "\n", "plt.figure(figsize=(10, 10))\n", "img = plt.imshow(data.cpu().numpy(), cmap='magma', interpolation='nearest')\n", "cax = plt.gcf().add_axes([plt.gca().get_position().x1 + 0.01, plt.gca().get_position().y0, 0.02, plt.gca().get_position().height])\n", "plt.colorbar(img, cax=cax)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 30, "id": "b33e1d7d-89b5-408e-80d5-1a78b3385ee2", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([32, 72, 1])\n", "torch.Size([32, 72, 28])\n" ] } ], "source": [ "# Parametric ORM\n", "\n", "def fn(dp, kn, ks):\n", " return ORM(copy, guess, [dp, kn, ks], ('dp', None, None, None), ('kn', ['Quadrupole'], None, None), ('ks', ['Quadrupole'], None, None))\n", "\n", "dp = torch.tensor([0.0], dtype=dtype, device=device)\n", "kn = torch.zeros(nq, dtype=dtype, device=device)\n", "ks = torch.zeros(nq, dtype=dtype, device=device)\n", "\n", "print(torch.func.jacrev(fn, 0)(dp, kn, ks).shape)\n", "print(torch.func.jacrev(fn, 1)(dp, kn, ks).shape)" ] } ], "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 }