Repository navigation
Expand file tree
/
Copy pathChromaticity.html
More file actions
94 lines (89 loc) · 68.4 KB
/
Copy pathChromaticity.html
File metadata and controls
94 lines (89 loc) · 68.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge,IE=9,chrome=1"><meta name="generator" content="MATLAB 2021a"><title>Chromaticity of a FODO lattice (Section 3.4.1)</title><style type="text/css">.rtcContent { padding: 30px; } .S0 { margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(0, 0, 0); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: normal; text-align: left; }
.S1 { margin: 15px 10px 5px 4px; padding: 0px; line-height: 28.8px; min-height: 0px; white-space: pre-wrap; color: rgb(213, 80, 0); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 24px; font-weight: normal; text-align: left; }
.CodeBlock { background-color: #F7F7F7; margin: 10px 0 10px 0;}
.S2 { border-left: 1px solid rgb(233, 233, 233); border-right: 1px solid rgb(233, 233, 233); border-top: 1px solid rgb(233, 233, 233); border-bottom: 0px none rgb(0, 0, 0); border-radius: 4px 4px 0px 0px; padding: 6px 45px 0px 13px; line-height: 17.234px; min-height: 18px; white-space: nowrap; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; }
.S3 { border-left: 1px solid rgb(233, 233, 233); border-right: 1px solid rgb(233, 233, 233); border-top: 0px none rgb(0, 0, 0); border-bottom: 0px none rgb(0, 0, 0); border-radius: 0px; padding: 0px 45px 0px 13px; line-height: 17.234px; min-height: 18px; white-space: nowrap; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; }
.S4 { border-left: 1px solid rgb(233, 233, 233); border-right: 1px solid rgb(233, 233, 233); border-top: 0px none rgb(0, 0, 0); border-bottom: 1px solid rgb(233, 233, 233); border-radius: 0px; padding: 0px 45px 4px 13px; line-height: 17.234px; min-height: 18px; white-space: nowrap; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; }
.S5 { color: rgb(64, 64, 64); padding: 10px 0px 6px 17px; background: rgb(255, 255, 255) none repeat scroll 0% 0% / auto padding-box border-box; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; overflow-x: hidden; line-height: 17.234px; }
.S6 { border-left: 1px solid rgb(233, 233, 233); border-right: 1px solid rgb(233, 233, 233); border-top: 1px solid rgb(233, 233, 233); border-bottom: 0px none rgb(0, 0, 0); border-radius: 0px; padding: 6px 45px 0px 13px; line-height: 17.234px; min-height: 18px; white-space: nowrap; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; }
.S7 { border-left: 1px solid rgb(233, 233, 233); border-right: 1px solid rgb(233, 233, 233); border-top: 0px none rgb(0, 0, 0); border-bottom: 1px solid rgb(233, 233, 233); border-radius: 0px 0px 4px 4px; padding: 0px 45px 4px 13px; line-height: 17.234px; min-height: 18px; white-space: nowrap; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; }
.S8 { margin: 10px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(0, 0, 0); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: normal; text-align: left; }</style></head><body><div class = rtcContent><div class = 'S0'><span>Companion software for "Volker Ziemann, </span><span style=' font-style: italic;'>Hands-on Accelerator physics using MATLAB, CRCPress, 2019</span><span>" (https://www.crcpress.com/9781138589940)</span></div><h1 class = 'S1'><span>Chromaticity of a FODO lattice (Section 3.4.1)</span></h1><div class = 'S0'><span>Volker Ziemann, 211124, CC-BY-SA-4.0</span></div><div class = 'S0'><span>In this example we calculate the horizontal chromaticity of a somewhat contrived (no dipoles) ring made of 20 FODO cells.</span></div><div class = 'S0'><span>We use the 2D software and define a FODO cell as in previous examples </span></div><div class="CodeBlock"><div class="inlineWrapper"><div class = 'S2'><span style="white-space: pre"><span >clear</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span >addpath </span><span style="color: rgb(170, 4, 249);">./2D</span></span></div></div><div class="inlineWrapper outputs"><div class = 'S4'><span style="white-space: pre"><span >F=</span></span><span>2.2</span><span style="white-space: pre"><span > </span><span style="color: rgb(2, 128, 9);">% Slider for the focal length of the quadrupoles</span></span></div><div class = 'S5'><div class='variableElement' style='font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 12px; '>F = 2.2000</div></div></div><div class="inlineWrapper"><div class = 'S6'><span style="white-space: pre"><span >fodo=[ 1, 5, 0.2, 0; </span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > 2, 1, 0.0, -F; </span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > 1, 10, 0.2, 0; </span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > 2, 1, 0.0, F; </span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > 1, 5, 0.2, 0]; </span></span></div></div><div class="inlineWrapper"><div class = 'S7'><span style="white-space: pre"><span >beamline=fodo;</span></span></div></div></div><div class = 'S8'><span>First we can calculate the transfer matrices with </span><span style=' font-family: monospace;'>calcmat()</span><span>, define the matrix Rturn, whch is the transfer matrix fromstart to end of the cell, and determine the phase advance of the cell </span><span style="font-family: STIXGeneral, STIXGeneral-webfont, serif; font-style: italic; font-weight: normal; color: rgb(0, 0, 0);">Q</span><span> in units of </span><span texencoding="2\pi" style="vertical-align:-5px"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACcAAAAkCAYAAAAKNyObAAACxUlEQVRYR+3XS+hVVRQG8N8/kxLDyrIXOFCTCPEZGvbQQB1kpQgZiDpUfIQUmoOkSYhFRaKlRoUDX4UFBfmCiKjoAQ3SJClBTayJ1EBURJOQJSuwwzn3HA8GQndPLuy91re+8+312LfHVbx6rmJuuuTa3k5Xuf+dcnHlC/AYRqAv9uNzvIIzbRVp6leVc7fjAzxcAXQY0/BT00Bt7KrIfYLxWI29uB4j8TRuzkA/4H781SZwE58ycjOxFmPxWwFkAL7FkNyfhfebBGpjU0buI7yDXRWAkYM78uw1PNcmcBOfIrne2I3JHZyjME5ycbpsxZwmgdrYlCl3Df6uAfsT/bEKK2ps+2Egbqix+74Yt82EuC7bSPg+gi8qgs7F0iykOuGOYHDRqA25qNDv8DPuLYkayr+BRXWMLjlfl53gXy5tyL2JxZmXn5UQCLXiCrfjWuxDFM7ytJ2NLXgIX3f6gMslF7lzAJsrlAlSUUwfZ9CVmZMP4pvc25M99Bacv5LkojlHQ57aoPmGakfRC3dlst+JYwicGXXXfjnKxbXElUzAiTpgTE8Fo2fOT/tleDVV31CH0ZTck3gxq/N4HWieR6OOhh0qR++M9SOG424cqsNpQm5SVt8U/F4HmOeRm7/iNGLkncUoxDwubRtluHXkHsBGPJqgZRjxEDhVyME1WIJ3MS+dQvkX8BYW5t6gDrgd/+Dch/fwBH6pUKxPztl4PoVKsR7PXItCGJ2vmtj/NCs5Ws3ruA3P45mq26hSblg+Kl/OPlX0D7+bUoGD+XsrPsTENP4qi+cf3z8Q7SOudRueygKLsVW6ysgNxZe4o2F+jclcinG1KX3OYVzhw2Ki3HMJ5kupXGWYIrkb8ykeCd1kxVcHiViR+PHMCoxnsbMAEEqtz6J6GzGyOq66gqjz/0/Pu+TayttVrqtcWwXa+nVzrq1yFwCzknUlsX6ZhQAAAABJRU5ErkJggg==" width="19.5" height="18" /></span><span> and the periodic Twiss parameters </span><span texencoding="\alpha_0,\beta_0" style="vertical-align:-6px"><img src="data:image/png;base64,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" width="35" height="20" /></span><span>, and </span><span texencoding="\gamma_0" style="vertical-align:-6px"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAoCAYAAADt5povAAACfElEQVRYR+3VS+iOaRgG8N/fwjEZCwsWyiElQw3jEDlNjmVMySFmoSZFrBUihwhlY2OamhCRQsw4n8aMGBtEDgkLM4tZTE0pUpNj97/n+/d6vb73e0uy+O7d9z33c1/Pfd/Xdb0tPnG0fGI8TcCPPvHmSJsjrTyBJmkqj6zswmcz0g1YgiNYnHt1J/yCrniM7/G6rLPaeVGH87GXVmNvh2G4kSkYj1mDV5iAy42CRV4R4FGsRDf8iUXYmYr2xV10xMYEXAXvPcAvMQ47UpV7+Anb0+8Y5Uxcw2i8qIRW0GF3PMXLVOgc9mMXpuEUnuMrPKgK9qGRZuvsTsQJoNsYkMgUXWejA9ZiEP5DTyzHnfyjymQR5IniY7AFx/FtrkgQ6yS6pHW8STk/YyJiLW1RBvhrAjqTRjkY/+YAZ+NgYuwfmbMr+B/fVAG8kEY0BzNwomBv8V8U/SIB1FI2YRUG4n49HWZrxg5iLz9iaQFYmECQ7Ca+zp3PwmGswNZGAYORf2NoGmkesx8eIdg8JXcY+/stSWxZI4AjEHsYhesfkMBYXMIhxNizEdIJh3qHaPVIE0SJDvrX0VuIPx4VpJmbyxuCWziN6WUdjsfvyVGG1wGMxzzEWUzN5YVjBWvDNH4oAwxDDu0V6S5bN0jzJJFmZA7wO4Qvr8P6eoC1l0XOtuQYdZp0LAk8ZFGzxMgP5wmw2GWwuDWKdngA89L5Quyph4YF2JfM/GomN1bSI8mq7e8iwL/QO+mrF56VAIa1nU8f4UkpNyQSnYfhX8zeLwIMAkzGaoRbNBKd0/cxWP0P+mBzIs0794sA26cOQ9AfPcrMuwlYeQLNkVYeWdmFtyl3dSm74+H5AAAAAElFTkSuQmCC" width="14" height="20" /></span><span>. And from those we cosntruct the beam matrix </span><span texencoding="\sigma_0" style="vertical-align:-6px"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB8AAAAoCAYAAAAG0SEsAAACjElEQVRYR+3XW8iNaRQH8J8pTEaKkWgkuRXSXDjkQkpccOPCpIiMpoQZ5uB8FiKnETNiTJlSDlfuRJILU0xETZmLkdyMTBNJmJxbWvtr9/Z+e39b2/fd7HW1e571rv+z/mv91/PsbrrQunUhthZ4l7Dfor1Fe6cy0Gq4TqW7AtYo7b3wGfqVnPYFrjeSRUfAe2MhvsDnNYJfxKRmgk/Docy2XtyN2FTPqXq/VuZf4Wd8hGfYjhNYgiGYgdeNgBV92wOfjLMJ/ADT8Xt+3AN/4xK+xPP3PUAZeDRVBB+UmY3FHwWAffgGR7GgmeA/YGcGjHpHsxUt1n7CS/TJslR8BmeJ3uATPMViPOoI7TcxEo8xDP+VgH+HXbke0vsnfw/ANRzD2lwLv/GYkjHbwhVp74uocdiplFcZq79hDv7FQESWYQcwH59WsRHZR8yt2Fyr24fjz3T4FntLkEP3d9Af27AmfXriHm6U6P1yKmQoXlViFjMP2u7n5mwcLwFfmTW9jVF4kj6hkHPYje8L3+1PiUbzXmkPPNYjqzhh1HVPIcgYnM/mmYg4QMVCdr8kE8FItcXwWY+ZOF0LPDR9Bn8hwKLxwibk+kmsKunedVnT6OyDBfBlmUgwEsy8s/aGzDhsyMa5lX7/43CJ5iuxVmdTLUoZVuN/jR8RJdtRD7yk1HWXYtgcQRwiRnG1BeVB/VyEUmpmXhepxCFutAs5oFYU9kM1SxF9EmO56eDdUylXMbUAHtftiBzZce83HTwCRk/MysdGBeRjPMSviH5os448JhopQVxG8ZqJub8lP4zJNg+jcyJ+MPAIHPdBNFyoI94CcQUvx91iFs3OvBGWWv/PG2Krac6tmjeNykYCvQXEeXQpnrwRgAAAAABJRU5ErkJggg==" width="15.5" height="20" /></span><span> which we later use to propagate the Twiss parameters through the ring.</span></div><div class="CodeBlock"><div class="inlineWrapper"><div class = 'S2'><span style="white-space: pre"><span >[Racc,spos,nmat,nlines]=calcmat(beamline);</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span >Rturn=Racc(:,:,end);</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span >[Q,alpha0,beta0,gamma0]=R2beta(Rturn);</span></span></div></div><div class="inlineWrapper"><div class = 'S7'><span style="white-space: pre"><span >sigma0=[beta0, -alpha0; -alpha0,gamma0];</span></span></div></div></div><div class = 'S8'><span>Next, we construct the beamline made of 20 FODO cells and calculate all transfer matrices with </span><span style=' font-family: monospace;'>calcmat()</span><span>.</span></div><div class="CodeBlock"><div class="inlineWrapper"><div class = 'S2'><span style="white-space: pre"><span >beamline=repmat(fodo,20,1); </span><span style="color: rgb(2, 128, 9);">% 20 FODO cells</span></span></div></div><div class="inlineWrapper"><div class = 'S7'><span style="white-space: pre"><span >[Racc,spos,nmat,nlines]=calcmat(beamline);</span></span></div></div></div><div class = 'S8'><span>Having prepared the beam matrix </span><span texencoding="\sigma_0" style="vertical-align:-6px"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB8AAAAoCAYAAAAG0SEsAAACjElEQVRYR+3XW8iNaRQH8J8pTEaKkWgkuRXSXDjkQkpccOPCpIiMpoQZ5uB8FiKnETNiTJlSDlfuRJILU0xETZmLkdyMTBNJmJxbWvtr9/Z+e39b2/fd7HW1e571rv+z/mv91/PsbrrQunUhthZ4l7Dfor1Fe6cy0Gq4TqW7AtYo7b3wGfqVnPYFrjeSRUfAe2MhvsDnNYJfxKRmgk/Docy2XtyN2FTPqXq/VuZf4Wd8hGfYjhNYgiGYgdeNgBV92wOfjLMJ/ADT8Xt+3AN/4xK+xPP3PUAZeDRVBB+UmY3FHwWAffgGR7GgmeA/YGcGjHpHsxUt1n7CS/TJslR8BmeJ3uATPMViPOoI7TcxEo8xDP+VgH+HXbke0vsnfw/ANRzD2lwLv/GYkjHbwhVp74uocdiplFcZq79hDv7FQESWYQcwH59WsRHZR8yt2Fyr24fjz3T4FntLkEP3d9Af27AmfXriHm6U6P1yKmQoXlViFjMP2u7n5mwcLwFfmTW9jVF4kj6hkHPYje8L3+1PiUbzXmkPPNYjqzhh1HVPIcgYnM/mmYg4QMVCdr8kE8FItcXwWY+ZOF0LPDR9Bn8hwKLxwibk+kmsKunedVnT6OyDBfBlmUgwEsy8s/aGzDhsyMa5lX7/43CJ5iuxVmdTLUoZVuN/jR8RJdtRD7yk1HWXYtgcQRwiRnG1BeVB/VyEUmpmXhepxCFutAs5oFYU9kM1SxF9EmO56eDdUylXMbUAHtftiBzZce83HTwCRk/MysdGBeRjPMSviH5os448JhopQVxG8ZqJub8lP4zJNg+jcyJ+MPAIHPdBNFyoI94CcQUvx91iFs3OvBGWWv/PG2Krac6tmjeNykYCvQXEeXQpnrwRgAAAAABJRU5ErkJggg==" width="15.5" height="20" /></span><span> with the Twiss parameters and all transfer matrices, we use Equation 3.43 to propagate the Twiss parameters through the ring. At each position, labeled by the loop index </span><span style=' font-family: monospace;'>k</span><span>, we store the value of the beta function in the previously allocated array </span><span style=' font-family: monospace;'>beta</span><span>. Once the loop completes, we plot the beta function and annotate the axes. </span></div><div class="CodeBlock"><div class="inlineWrapper"><div class = 'S2'><span style="white-space: pre"><span >beta=zeros(nmat,1); </span><span style="color: rgb(2, 128, 9);">% allocate space to store beta functions</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span style="color: rgb(14, 0, 255);">for </span><span >k=1:nmat</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > sigma=Racc(:,:,k)*sigma0*Racc(:,:,k)'; </span><span style="color: rgb(2, 128, 9);">% eq. 3.43</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > beta(k)=sigma(1,1);</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span style="color: rgb(14, 0, 255);">end</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span >plot(spos,beta,</span><span style="color: rgb(170, 4, 249);">'k'</span><span >);</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span >xlabel(</span><span style="color: rgb(170, 4, 249);">' s[m]'</span><span >); ylabel(</span><span style="color: rgb(170, 4, 249);">'\beta_x [m]'</span><span >)</span></span></div></div><div class="inlineWrapper"><div class = 'S7'><span style="white-space: pre"><span >axis([0,spos(end),0,1.05*max(beta)])</span></span></div></div></div><div class = 'S8'><span>Finally we calculate the chromaticity </span><span texencoding="Q'_x" style="vertical-align:-10px"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAwCAYAAAB9sggoAAADq0lEQVRYR+3Yaah1cxQG8N9rHkvGzPOcIWUoc0ToNZQpEaHMY/mEyBTKLETGKIQPEooiU8o8Z46MKfGBjNHDum/b6Zyz9zn3dt9b7qpTu876r/+z1/SsteeYoTJnhuIyC2zUyMx67H/vsV2wP3bFalgCX+Ip3IDXRvVQr/6oObYbLsVmuAO3430shZ1xJVYonbPx17gAuwJbBJfhNHyN/fByn0vXwHvlwfNwQY/OwtihPDsUcxdgC+F+HIAfsDU+GmL1CpyJP7EhPm7oHouLsVKbJ9uALYh7cEgZ2huPtRg9qF4kapcgIZ2QR/EKzp0ssITj/DJyHw5tM4ht8WLpPYK59bwkPsTG+LHNzjCPbVLVlfz6BRvhszaD2AvxTCT6a9Vzqjg2UjytMgzYM9ixLKT6jm619q9C9G4t3e+xXD1fVKH9uYudQcA2xxsNA9vgpS4GcXVVb9RTofF8JBX5e0cbA6eLq3B6GXkXm3Y1iNexRenfjSNGODtPdZDHPm3kRkCm/LtImuu3zHvhI3FXl4O9Ov2AxeVJ9gVKeZ9GMrfdcUZ1/+iFotbBb22H+v3fD9i6PQ10TXze0fg7jZwKyOTbWNIP2HrVb2IwXLdox6TdE48Xiu+wNn4aC1UjF5rnm6H8FYt3IOOEPUkfck/l7YGnxwWVc4OS/wOsX4ZXKeIeds/JuK4UjsFtkwE1DNgpuLaMH4gHh1y0E56sPtXLjWPjG+SxxZD+lTzJ0JeJItNCr4TUQ/IJd17mlrGR9BwcRkmr1iSRvElSH1/clzNhhlNxFJ4oUCHoKZO2sWfp6txplKGlVFtGoa9q2LsZb08ZmoahNmBRDZBMBMm1NNvwX5eROcNgWGAsaQO2Iu7FdjiswtalN2VY3B3HjYVqSLuIvQx8D9QWNGE/ngoLxGuZPp7FW/imFpKtCky2puwFf0w1sLxpNp6EIpy3PDZo8Oeg+9JcM/OfM6CKO+PsF8plcEI1yWaOLIv0rKxpGSDDqdENO3xSRJ+dMs+TlrYca7tgpOEPByO76b41gofG0gvT//Kb2C/my2eopEV204T8zgKZZp6UeXXCE5P1WJtHB/3/PMIuadzN9W6e/vwCdjnOwur4oh/6+QUsVX9T7QZvzhRgqe5rcDhOxI0zBViWmwvxQiV7GCWz33+GgOkKZT4TJNm3LzZ5rjyV9pH1buXGkvyPA6cL2PU1BCR0D1XotkS+bTyMk3oHg+kCNnJbmQU2qstmPTbrsVE9MKr+3+79pjFvywpLAAAAAElFTkSuQmCC" width="19" height="24" /></span><span> from Equation 3.87. To do so we need to loop over all segments in the beamline and add </span><span texencoding="-\beta/4\pi f" style="vertical-align:-5px"><img src="data:image/png;base64,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" width="51.5" height="19" /></span><span> in each quadrupole. Once the loop completes, we report the tune of the ring, which is 20 times the tune of a cell, and the chromaticity in the title bar of the plot.</span></div><div class="CodeBlock"><div class="inlineWrapper"><div class = 'S2'><span style="white-space: pre"><span >Chomaticity=0; </span><span style="color: rgb(2, 128, 9);">% initialize to zero</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span >ic=1; </span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span style="color: rgb(14, 0, 255);">for </span><span >line=1:nlines </span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > </span><span style="color: rgb(14, 0, 255);">for </span><span >seg=1:beamline(line,2)</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > ic=ic+1;</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > </span><span style="color: rgb(14, 0, 255);">if </span><span >beamline(line,1)==2 </span><span style="color: rgb(2, 128, 9);">% quadrupole found</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > Chomaticity=Chomaticity-beta(ic)/(4*pi*beamline(line,4)); </span><span style="color: rgb(2, 128, 9);">% eq. 3.87</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > </span><span style="color: rgb(14, 0, 255);">end</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span > </span><span style="color: rgb(14, 0, 255);">end</span></span></div></div><div class="inlineWrapper"><div class = 'S3'><span style="white-space: pre"><span style="color: rgb(14, 0, 255);">end</span></span></div></div><div class="inlineWrapper outputs"><div class = 'S4'><span style="white-space: pre"><span >title([</span><span style="color: rgb(170, 4, 249);">'Q = '</span><span >,num2str(20*Q,</span><span style="color: rgb(170, 4, 249);">'%6.3f'</span><span >),</span><span style="color: rgb(170, 4, 249);">', Q''_x = ' </span><span >num2str(Chomaticity,4)])</span></span></div><div class = 'S5'><div class="inlineElement eoOutputWrapper embeddedOutputsFigure" uid="50BF4AB5" data-scroll-top="null" data-scroll-left="null" data-testid="output_1" style="width: 1327px;"><div class="figureElement"><div class="figureContainingNode" style="width: 560px; max-width: 100%; display: inline-block;"><div class="GraphicsView" data-dojo-attach-point="graphicsViewNode,backgroundColorNode" id="uniqName_333_153" widgetid="uniqName_333_153" style="width: 100%; height: auto;"><div class="ImageView" id="uniqName_333_155" widgetid="uniqName_333_155" style="width: 100%; height: auto;">
<canvas class="ImageView" data-dojo-attach-point="canvasViewNode" draggable="false" ondragstart="return false;" style="width: 100%; height: auto; display: none;"></canvas>
<img class="ImageView figureImage" data-dojo-attach-point="imageViewNode" draggable="false" ondragstart="return false;" style="width: 100%; height: auto; display: inline;" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAjAAAAGkCAYAAAAv7h+nAAAgAElEQVR4AezBD6yedX3//2duChQ4VBs4iXXq9RqjfaMimNXpzJACAXQVsCEOSDZsmmxkw9aILE4J/qkbicQ/wSmRDZBjJyAgUaqndkiwVRTKQFEC4Q3oXtdYAd0RZovSHkrP73fH70lOGtyk57rO7qv35/HoTRVFURRFUXRMj6IoiqIoio7pURRFURRF0TE9iqIoiqIoOqZHURRFURRFx/QoiqIoiqLomB5FURRFURQd06MoikZMTk5y2WWXceKJJ/LSl76U0dFR3vnOd/KNb3yDpu3evZtPf/rTrFixgjPOOINLLrmEXbt28T+54YYbOPPMMznjjDO45JJL2LVrFzPdcMMNnHnmmZxxxhlccskl7Nq1i9/me9/7HqeddhqXXnopTZqcnOSyyy7jxBNP5KUvfSmjo6O8853v5Bvf+AbTtmzZwplnnsmf//mf839p9+7dfPrTn2bFihWcccYZXHLJJezatYvfZteuXVx22WWceeaZnHHGGbz3ve/lscce44V873vf47TTTuPSSy9l2o4dO7jkkks444wzOPPMM7n66qspimHWoyiKWdu2bRvLli3jggsuYNOmTezYsYOnn36am2++mdNPP53Vq1fTpHPPPZcLL7yQDRs2sHHjRi6++GLOOeccfpsrrriCc845h/Xr17Nx40YuvvhiVq5cybQrrriCc845h/Xr17Nx40YuvvhiVq5cyQt55plneNe73sX4+Dj33XcfTdm2bRvLli3jggsuYNOmTezYsYOnn36am2++mdNPP53Vq1fT98QTT/DVr36Vr3/96/xfOvfcc7nwwgvZsGEDGzdu5OKLL+acc87ht1mxYgUXXHAB69ev59Zbb+Uzn/kMb3jDG3jiiSeY6ZlnnuFd73oX4+Pj3HfffUx7+9vfzsUXX8ytt97K+vXr+cu//Eve+973UhTDqkdRFLP2gQ98gLvuuouXvexlfOc732HHjh1MTk5y+eWX03f55Zdzww030IS6rrnuuutYvHgxExMTbN26lYMOOoibb76Zhx9+mBeydu1a+rZs2cLPfvYzDj/8cK677joefvhh+tauXUvfli1b+NnPfsbhhx/Oddddx8MPP8yeLrjgAn7605/StA984APcddddvOxlL+M73/kOO3bsYHJykssvv5y+yy+/nBtuuIGRkRH6XvWqV/F/pa5rrrvuOhYvXszExARbt27loIMO4uabb+bhhx9mT/fddx/j4+O87GUv44knnuDXv/41J5xwAj//+c+56qqrmOmCCy7gpz/9KTNt2LCB22+/naVLl7Jt2zZ+/OMfc9BBB/GZz3yGhx9+mKIYRj2KopiVHTt2cNVVV9F35ZVX8pa3vIW+Xq/H+eefz4UXXkjfFVdcwZ6+9rWvMTo6yujoKKOjo4yOjjI6Osro6Cijo6M888wz7KmqKh555BFuvPFGFixYwGGHHUav16Nv3rx57Om+++7jySef5NBDD2Xp0qUsXLiQk08+mb4777yT++67jyeffJJDDz2UpUuXsnDhQk4++WT67rzzTmbauHEjV111Fa9+9atp0o4dO7jqqqvou/LKK3nLW95CX6/X4/zzz+fCCy+k74orruCEE05gv/3243Wvex0v1te+9jVGR0cZHR1ldHSU0dFRRkdHGR0dZXR0lGeeeYbfRVVVPPLII9x4440sWLCAww47jF6vR9+8efPY08KFC/n4xz/ORz7yEUZHR+n1ehx//PH0/ed//ifTNm7cyFVXXcWrX/1qZrrzzjvpe+Mb38gBBxzAa17zGt72trfRd+utt1IUw6hHURSzcvvtt/Pcc89x4IEHctppp7Gnk046ib4777yTPe3cuZOJiQkmJiaYmJhgYmKCiYkJJiYmmJiY4Lc58sgjef3rX8+1117LsmXL+NWvfsWaNWs44ogj2JNt+pYuXcq0kZER+r7//e9jm76lS5cybWRkhL7vf//7THv66adZtWoVEcGHPvQhmnT77bfz3HPPceCBB3Laaaexp5NOOom+O++8k3nz5vHrX/+af/mXf+HF2rlzJxMTE0xMTDAxMcHExAQTExNMTEwwMTHBi3HkkUfy+te/nmuvvZZly5bxq1/9ijVr1nDEEUewp6qq+Lu/+zv++q//mr5du3bx1a9+lb63vvWt9D399NOsWrWKiOBDH/oQMy1cuJC+559/nj396Ec/oiiGUY+iKGZlcnKSvoMPPpgXcuihh9K3c+dOdu/ezUxnn302U1NTTE1NMTU1xdTUFFNTU0xNTTE1NcXIyAj/k5tvvpk77riDww8/nKOOOooXsnPnTvoOOeQQpu2///707d69m507d9J3yCGHMG3//fenb/fu3Uw7//zzefLJJ7nmmms46KCDaNLk5CR9Bx98MC/k0EMPpW/nzp3s3r2bAw44gHnz5vFinX322UxNTTE1NcXU1BRTU1NMTU0xNTXF1NQUIyMjvFg333wzd9xxB4cffjhHHXUUv4tzzjmH+++/n6VLl3LmmWfSd/755/Pkk09yzTXXcNBBBzHTqaeeSt/XvvY1tmzZwvr169mwYQN9k5OTFMUw6lEUxazMmzePvh07dvBCnn32Wfr2228/er0eM23ZsoWVK1eycuVKVq5cycqVK1m5ciUrV65k5cqV7Nixg//JV77yFX75y19yxBFH8O53v5trr72WPfV6Pfb03HPPMa3X67Gn5557jpluuukmvvzlL3PRRRfx5je/mabNmzePvh07dvBCnn32Wfr2228/er0ee2vLli2sXLmSlStXsnLlSlauXMnKlStZuXIlK1euZMeOHezpF7/4BQsWLGDBggUsWLCA3//932emr3zlK/zyl7/kiCOO4N3vfjfXXnstv83k5CSnnXYaN998M6961av4+te/Tt9NN93El7/8ZS666CLe/OY3s6ejjz6aT33qU/z85z/nj//4j3nHO96BJPp6vR5FMYx6FEUxK0uXLqXv2Wef5cEHH6Tv0Ucf5bLLLmNycpIf/vCH9B111FHsyTbr1q1j3bp1rFu3jnXr1rFu3TrWrVvHunXr2LVrF7/N7t276fV6LFiwgPPPP5++DRs2sKdDDjmEvgceeIBpk5OT9B155JEccsgh9D3wwANMm5ycpO/II4+k7/rrr6fvE5/4BPPnz+ess86i76abbmL+/PnM1tKlS+l79tlnefDBB+l79NFHueyyy5icnOSHP/whfUcddRSzYZt169axbt061q1bx7p161i3bh3r1q1j3bp17Nq1ixeyfft2tm/fzvbt23nmmWeYtnv3bnq9HgsWLOD888+nb8OGDbyQXbt2sWLFCsbHx3n1q1/NXXfdxaJFi+i7/vrr6fvEJz7B/PnzOeuss+i76aabmD9/Pn3ve9/7yExuvPFG7r//ft70pjfRd8QRR1AUw6hHURSzsmjRIo477jj61qxZw44dO9iyZQvvf//7Ofroo7n00kvpO/fcc9nT8ccfz/j4OOPj44yPjzM+Ps74+Djj4+OMj48zf/589rR+/Xrmz5/PW9/6Vqbdf//99B188MH0TU5OMjk5Sd/xxx/Pfvvtx2OPPca2bdvoe+ihh+g79thjOf7449lvv/147LHH2LZtG30PPfQQfcceeyx9Cxcu5OUvfzmjo6McdthhjIyM0HfAAQdw2GGH0Tc5Ocnk5CR7Y9GiRRx33HH0rVmzhh07drBlyxbe//73c/TRR3PppZfSd+655zIbxx9/POPj44yPjzM+Ps74+Djj4+OMj48zPj7O/Pnz2dNhhx3G9u3b2b59O9u3b+ff//3fWb9+PfPnz+etb30r0+6//376Dj74YPomJyeZnJxk2rvf/W6++c1vsnjxYjZv3syiRYuYtnDhQl7+8pczOjrKYYcdxsjICH0HHHAAhx12GI8++ih/9Vd/xc0338yf/dmfcfTRR3PvvffSd9xxx1EUw6hHURSzdvXVV7Nw4UJuv/12Fi9ezMaNGznmmGN45JFHePrppzn88MO54IIL2NOiRYtYvnw5y5cvZ/ny5Sxfvpzly5ezfPlyli9fzrx589jTSSedxEte8hJuu+02VqxYwapVq/jUpz7Ffvvtx5o1a+g7/PDDOfDAA3nmmWcYGRlhxYoVPP/887z97W/nrLPO4u6770YSp556KiMjI6xYsYLnn3+et7/97Zx11lncfffdSOLUU0+l7+qrr2br1q1s3bqVrVu38oUvfIG+d7zjHWzdupW+BQsWcOCBBzI5OcneuPrqq1m4cCG33347ixcvZuPGjRxzzDE88sgjPP300xx++OFccMEFzMaiRYtYvnw5y5cvZ/ny5Sxfvpzly5ezfPlyli9fzrx583ghIyMjjIyMMDIywsjICCeddBIveclLuO2221ixYgWrVq3iU5/6FPvttx9r1qyh7/DDD+fAAw/kmWee4cc//jH//M//TJ9t/uAP/oAFCxawYMEC3vOe93D11VezdetWtm7dytatW/nCF75A3zve8Q62bt3Ky1/+cm644QYuuugiVq1axSmnnMIDDzzA0qVLOfHEEymKYdSjKIpZW7JkCXfddRenn346TzzxBF/60pe49957OeSQQ1i8eDETExMcffTR3HvvvczWyMgIGzZsICK45ZZbGBsb4xWveAXr16/nmGOO4YV8/vOf5+STT+aOO+7gpptu4ogjjuCWW26h1+vR9/nPf56TTz6ZO+64g5tuuokjjjiCW265hV6vx1xZsmQJd911F6effjpPPPEEX/rSl7j33ns55JBDWLx4MRMTExx99NHce++9/F8bGRlhw4YNRAS33HILY2NjvOIVr2D9+vUcc8wx7Om6665j2nPPPcf27dvZvn0727dv59lnn+V/c/DBB3Pdddfxkpe8hLGxMW677Tb+9E//lG9+85sUxbDqURRFI5YsWcL69euZnJwkM3n88cfZtm0bDz74IB/+8IfZuXMnr33ta2nC0qVLeeihh3j88cfJTB577DGWL1/OtG3btjE1NcXIyAh9o6OjfOtb3+Kpp54iM/nJT37CMcccw7TR0VG+9a1v8dRTT5GZ/OQnP+GYY47ht1mxYgVTU1Ncf/31TJuYmGD//ffngAMOYG8tWbKE9evXMzk5SWby+OOPs23bNh588EE+/OEPs3PnTl772tcy03333cdtt93G008/Td+DDz7Ibbfdxn/913/RpqVLl/LQQw/x+OOPk5k89thjLF++nGnbtm1jamqKkZERPv7xjzM1NcXU1BRTU1NMTU0xNTXF1NQUV155JXtasWIFU1NTXH/99Uw77bTTeOqpp3jggQd49tln2bBhA6OjoxTFsOpRFEWjer0eS5YsYdGiRfR6PebNm8fatWup65r58+fTpEWLFrFkyRJ+VwsXLmTJkiX8NgsXLmTJkiXsjVNOOYUPfvCDNKHX67FkyRIWLVpEr9dj3rx5rF27lrqumT9/PjP9x3/8B6eccgrve9/7eOKJJzjuuOP427/9WxYuXMhcWLRoEUuWLGEu9Ho9XvOa1zB//nyKYtj1KIqiaMCVV17J2rVrmWtnnHEGf/M3f8PY2BinnHIKk5OT3HjjjcybN4+iKPZdPYqiKBpw9NFH83/l05/+NIsXL+aBBx7gYx/7GEuWLKEoin1bj6Ioio579NFHsU3fTTfdRFEU+74eRVEUHTY5Ock555zDwoUL+ehHP8pdd93F2rVrKYpi39ajKIqiwy666CIeeOAB/umf/omPfOQjHHfccfz93/89//Zv/0ZRFPuuHkVRFB32yU9+kqmpKVasWEHfd7/7XXbt2sUf/dEfURTFvqtHURRFURRFx/QoiqIoiqLomB5FURRFURQd06MoiqIoiqJjehRFURRFUXRMj+J/de655xIRRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRBARRAQRQUQQEUQEEUFEEBFEBBFBRHDuueeyL+pR/K/uvvtuMpPMJDPJTDKTzCQzyUwyk8wkM8lMMpPMJDPJTDKTzCQzyUwyk8wkM8lMMpPMJDPJTDKTzCQzyUwyk8wkM8lMMpPMJDPJTDKTzCQzyUwyk8wkM8lMMpPMJDPJTDKTvswkM8lMMpPMJDPJTDKTzCQzyUwyk8wkM8lMMpPMJDPJTDKTzCQzyUwyk8wkM8lMMpPMJDPJTDKTzCQzyUwyk8wkM8lMMpPMJDPJTDKTzCQzyUwyk8wkM8lMMpPMpC8zyUwyk8wkM8lMMpPMJDPJTDKTzCQzyUwy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Gxu87W1v4/Wvfz1PPfUUpZRSSpmGgUPm0Ucf5YMf/CAf/vCHWV9f5yMf+Qhf+tKXuHTpEqWUUkqZhoFD5pZbbuE973kPt9xyCwvf+Z3fyb//+79TSimllGkYOGRe+tKX8sM//MMsjOPI3//93/Pa176WUkoppUzDwCH2uc99juPHj/Mbv/EbfO/3fi9fS0QQEUQEZ8+epZRSSjmIzp49S0QQEUQEN6uBQ+rTn/40P/dzP8ftt9/OyZMn+f/JTDKTzOTUqVOUUkopB9GpU6fITDKTzORmNXAIfeITn+BXfuVXOH36NL/8y79MKaWUUqZl4JC5evUqb3rTm/iTP/kTfuzHfoynn36ap59+mp2dHUoppZQyDQOHzF/8xV/w3//93/z6r/86t912G7fddhu33XYbf/RHf0QppZRSpmHgkLnrrrvITDKTzCQzyUzuueceSimllDINA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNQSimllDIxA6WUUkopEzNwyD388MOUUkopZVoGDrF3v/vdvOUtb6GUUkop0zJwCD355JPcfffdvO9976OUUkop0zNwCL3rXe/iRS96EX/8x39MKaWUUqZn4BC65557uPPOO/nGb/xGnq2IICKICM6ePUsppZRyEJ09e5aIICKICG5WA4fQMAw8V5lJZpKZnDp1ilJKKeUgOnXqFJlJZpKZ3KwGSimllFImZqCUUkopZWIGSimllFImZqCUUkopZWIGDrEjR47w8MMPU0oppZRpGSillFJKmZiBUkoppZSJGSillFJKmZiBUkoppZSJGSillFJKmZiBUkoppZSJGSillFJKmZiBUkoppZSJGSillFJKmZiBUkoppZSJGSillFJKmZiBUkoppZSJGSillFJKmZiBUkop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">
</div></div></div></div></div></div></div></div><div class = 'S8'><span>And now you can play with the slider to change the focal length F of the quadrupoles so see how stronger focussing quadrupoles increase both the tune and the chromaticity.</span></div>
<br>
<!--
##### SOURCE BEGIN #####
%%
% Companion software for "Volker Ziemann, _Hands-on Accelerator physics using
% MATLAB, CRCPress, 2019_" (https://www.crcpress.com/9781138589940)
%% Chromaticity of a FODO lattice (Section 3.4.1)
% Volker Ziemann, 211124, CC-BY-SA-4.0
%
% In this example we calculate the horizontal chromaticity of a somewhat contrived
% (no dipoles) ring made of 20 FODO cells.
%
% We use the 2D software and define a FODO cell as in previous examples
clear
addpath ./2D
F=2.2 % Slider for the focal length of the quadrupoles
fodo=[ 1, 5, 0.2, 0;
2, 1, 0.0, -F;
1, 10, 0.2, 0;
2, 1, 0.0, F;
1, 5, 0.2, 0];
beamline=fodo;
%%
% First we can calculate the transfer matrices with |calcmat()|, define the
% matrix Rturn, whch is the transfer matrix fromstart to end of the cell, and
% determine the phase advance of the cell $Q$ in units of $2\pi$ and the periodic
% Twiss parameters $\alpha_0,\beta_0$, and $\gamma_0$. And from those we cosntruct
% the beam matrix $\sigma_0$ which we later use to propagate the Twiss parameters
% through the ring.
[Racc,spos,nmat,nlines]=calcmat(beamline);
Rturn=Racc(:,:,end);
[Q,alpha0,beta0,gamma0]=R2beta(Rturn);
sigma0=[beta0, -alpha0; -alpha0,gamma0];
%%
% Next, we construct the beamline made of 20 FODO cells and calculate all transfer
% matrices with |calcmat()|.
beamline=repmat(fodo,20,1); % 20 FODO cells
[Racc,spos,nmat,nlines]=calcmat(beamline);
%%
% Having prepared the beam matrix $\sigma_0$ with the Twiss parameters and all
% transfer matrices, we use Equation 3.43 to propagate the Twiss parameters through
% the ring. At each position, labeled by the loop index |k|, we store the value
% of the beta function in the previously allocated array |beta|. Once the loop
% completes, we plot the beta function and annotate the axes.
beta=zeros(nmat,1); % allocate space to store beta functions
for k=1:nmat
sigma=Racc(:,:,k)*sigma0*Racc(:,:,k)'; % eq. 3.43
beta(k)=sigma(1,1);
end
plot(spos,beta,'k');
xlabel(' s[m]'); ylabel('\beta_x [m]')
axis([0,spos(end),0,1.05*max(beta)])
%%
% Finally we calculate the chromaticity $Q'_x$ from Equation 3.87. To do so
% we need to loop over all segments in the beamline and add $-\beta/4\pi f$ in
% each quadrupole. Once the loop completes, we report the tune of the ring, which
% is 20 times the tune of a cell, and the chromaticity in the title bar of the
% plot.
Chomaticity=0; % initialize to zero
ic=1;
for line=1:nlines
for seg=1:beamline(line,2)
ic=ic+1;
if beamline(line,1)==2 % quadrupole found
Chomaticity=Chomaticity-beta(ic)/(4*pi*beamline(line,4)); % eq. 3.87
end
end
end
title(['Q = ',num2str(20*Q,'%6.3f'),', Q''_x = ' num2str(Chomaticity,4)])
%%
% And now you can play with the slider to change the focal length F of the quadrupoles
% so see how stronger focussing quadrupoles increase both the tune and the chromaticity.
##### SOURCE END #####
-->
</div></body></html>