source: MML/trunk/machine/SOLEIL/StorageRing/Lattices/lat_nano_176_234_122BPM_thickSextu2.m @ 4

Last change on this file since 4 was 4, checked in by zhangj, 11 years ago

Initial import--MML version from SOLEIL@2013

File size: 21.1 KB
Line 
1function varargout = lat_nano_176_234_122BPM_thickSextu
2% betax = 5 m dans les sections droites longues
3% solamor2 - soleil lattice w/o ID
4% Lattice definition file
5% Lattice for SOLEIL: perfect lattice no magnetic errors
6
7% Compiled by Laurent Nadolski and Amor Nadji
8% 09/01/02, ALS
9% mai 2006 : mis a jour vraies cotes BPM, correcteurs, dipole (coins,
10% chamd de fuite et gradient)
11% A. Nadji et P. Brunelle
12% Controlroom : set linearpass for quad (closed orbit)
13%               No cavity; No Radiation PassMethod
14% April 20th 2007, Laurent S. nadolski
15% BPM downstream injection section had wrong location by
16% 30 mm, 2 FCOR in injection straight section was not at their proper
17% location
18% November 24th 2007, Laurent S. Nadolski
19% Bpms 5 on the wrong side of sextupole in cell 4, 8, 12 and 16
20% December 7th, 2007, Laurent S. Nadolski
21% Added KEM V & H, K1 & K2 markers modelled as thin element
22% October 1, 2008
23% Lattice with tunes 18.2020 and 10.3170
24% Octobre 27, 2008
25% Lattice with tunes 18.2020 and 10.3170
26% Lattice with chromaticities 2.0 and 2.0
27% March 4, 2009
28% FHCOR and FVCOR [1 1] steerer moved 2180 mm upstream,
29% closed to entrance of vertical kicker
30% March 2009 - New quadrupole model from MAT with intermediate length
31% June 2009 - magnetcoefficient with index June 9 was changed
32%             for sextupoles calibration
33%             for quadrupole Just all ranges for quad variation with fit are present
34% July 2009 - Add PX2 Chicane
35% Novembre 2010 - S11 added, QT0 removed
36% 18 April 2011 - Tunes update 0.2017,  0.3169 moved 0.1990  0.3169
37% 29 Mai 2011 - Add Scrapers + straight sections
38% July 2011 - Add PX2 as rbend, Nanoscopium, new circumference 354.09702 m
39% (200 um larger)
40
41global FAMLIST THERING GLOBVAL
42
43GLOBVAL.E0 = 2.7391e9; % Ring energy
44GLOBVAL.LatticeFile = mfilename;
45FAMLIST = cell(0);
46
47disp(['** Loading SOLEIL magnet lattice ', mfilename]);
48
49L0 = 3.540970192202998e+02;% design length [m]
50C0 = 2.99792458e8;         % speed of light [m/s]
51HarmNumber = 416;
52
53%% RF Cavity
54%              NAME   L     U[V]       f[Hz]          h        method
55CAV = rfcavity('RF' , 0.0 , 4.0e+6 , HarmNumber*C0/L0, HarmNumber ,'CavityPass');
56
57%% Marker and apertures
58SECT1  =  marker('SECT1', 'IdentityPass');
59SECT2  =  marker('SECT2', 'IdentityPass');
60SECT3  =  marker('SECT3', 'IdentityPass');
61SECT4  =  marker('SECT4', 'IdentityPass');
62DEBUT  =  marker('DEBUT', 'IdentityPass');
63FIN    =  marker('FIN', 'IdentityPass');
64
65%% SCRAPER
66HSCRAP =  marker('HSCRAP', 'IdentityPass');
67VSCRAP =  marker('VSCRAP', 'IdentityPass');
68
69%INJ = aperture('INJ',[-0.035 0.035 -0.0125 0.0125]*100,'AperturePass');
70
71%% Elements in Injection section
72PtINJ = marker('PtINJ', 'IdentityPass');
73K1 = corrector('K1',0.0,[0 0],'IdentityPass');
74K2 = corrector('K2',0.0,[0 0],'IdentityPass');
75K3 = corrector('K3',0.0,[0 0],'IdentityPass');
76K4 = corrector('K4',0.0,[0 0],'IdentityPass');
77
78%% BPM
79BPM    =  marker('BPM', 'IdentityPass');
80
81%% QUADRUPOLES (compensation de l'effet des defauts de focalisation des
82LQC = 0.180100E+00*2 ;
83LQL = 0.248100E+00*2 ;
84
85QPassMethod = 'QuadLinearPass';
86
87Q1   =  quadrupole('Q1' , LQC, -0.1163982E+01, QPassMethod);
88Q2   =  quadrupole('Q2' , LQL,  0.1684902E+01, QPassMethod);
89Q3   =  quadrupole('Q3' , LQC, -0.6879196E+00, QPassMethod);
90Q4   =  quadrupole('Q4' , LQC, -0.1210454E+01, QPassMethod);
91Q5   =  quadrupole('Q5' , LQC,  0.1699787E+01, QPassMethod);
92Q6   =  quadrupole('Q6' , LQC, -0.1172340E+01, QPassMethod);
93Q7   =  quadrupole('Q7' , LQL,  0.2016438E+01, QPassMethod);
94Q8   =  quadrupole('Q8' , LQC, -0.1324658E+01, QPassMethod);
95Q9   =  quadrupole('Q9' , LQC, -0.1375764E+01, QPassMethod);
96Q10  =  quadrupole('Q10', LQC,  0.1734734E+01, QPassMethod);
97Q11  =  quadrupole('Q11', LQC, -0.1693858E+01, QPassMethod);
98Q12  =  quadrupole('Q12', LQL,  0.1694249E+01, QPassMethod);
99
100%% SEXTUPOLES CHROMATICITES NULLES dans TracyII
101%avec defauts de focalisation des dipoles
102%P. Brunelle 02/05/06
103Lsextu = .016/2;
104Finv = 1/Lsextu;
105SPassMethod = 'StrMPoleSymplectic4Pass';
106
107S1  =  sextupole('S1' , Lsextu,  0.300*5*Finv, SPassMethod);
108S2  =  sextupole('S2' , Lsextu, -0.715*5*Finv, SPassMethod);
109S3  =  sextupole('S3' , Lsextu, -0.338*5*Finv, SPassMethod);
110S4  =  sextupole('S4' , Lsextu,  0.697*5*Finv, SPassMethod);
111S5  =  sextupole('S5' , Lsextu, -0.672*5*Finv, SPassMethod);
112S6  =  sextupole('S6' , Lsextu,  0.667*5*Finv, SPassMethod);
113S7  =  sextupole('S7' , Lsextu, -0.992*5*Finv, SPassMethod);
114S8  =  sextupole('S8' , Lsextu,  0.778*5*Finv, SPassMethod);
115S9  =  sextupole('S9' , Lsextu, -0.791*5*Finv, SPassMethod);
116S10 =  sextupole('S10', Lsextu,  0.468*5*Finv, SPassMethod);
117S11 =  sextupole('S11', Lsextu,  0.300*5*Finv, SPassMethod);
118S12 =  sextupole('S12', Lsextu,  1.000E-10*Finv*0, SPassMethod); % to be drawn by drawlattice
119
120
121%% Slow correctors in sextupole magnets
122SX1   = [S1 S1];
123SX2   = [S2 S2];
124SX3   = [S3 S3];
125SX4   = [S4 S4];
126SX5   = [S5 S5];
127SX6   = [S6 S6];
128SX7   = [S7 S7];
129SX8   = [S8 S8];
130SX9   = [S9 S9];
131SX10  = [S10 S10];
132SX11  = [S11 S11];
133SX12  = [S12 S12];
134
135%% DIPOLES
136% {** 1.3815 factor to fit with BETA ??? strange **}
137%theta = 2*pi/32;
138%fullgap = 0.105*0.724*2/6*1.3815*0.;
139% BEND  =  rbend2('BEND', L, theta, theta/2, theta/2, 0.0, ...
140%                 fullgap,'BendLinearFringeTiltPass');
141theta = 2*pi/32;
142%theta2 = theta/2;
143thetae = theta/2 - 0.6e-3;
144thetas = theta/2 + 0.9e-3;
145K = 0.00204;
146fullgap = 0.037*0.724*2;
147%BEND  =  rbend2('BEND', 1.05243, theta, thetae, thetas, K,fullgap,'BendLinearPass');
148BEND  =  rbend2('BEND', 1.05243, theta, thetae, thetas, K,fullgap,'BndMPoleSymplectic4Pass');
149
150%% IDS
151% file='/Users/nadolski/Documents/Travail/codes/tracy/maille/soleil/w50/kick_w50_g55_p60.txt';  % made with RADIA
152% nslice=10;
153% [SWSV50 SWSV50Length] = idtable('SWSV50', nslice,file, (GLOBVAL.E0)/1e9,'IdTablePass');
154%
155% SDWSV50 = drift('SDWSV50',  3.141452-SWSV50Length/2, 'DriftPass');
156
157
158%% DRIFT SPACES
159SD1a = drift('SD1a',  1.4125, 'DriftPass');
160SD1b = drift('SD1b',  0.7575, 'DriftPass');
161SD2 = drift('SD2',  0.369900-Lsextu, 'DriftPass');
162SD3 = drift('SD3',   0.181900-Lsextu, 'DriftPass');
163SD5 = drift('SD5',  0.179900-Lsextu, 'DriftPass');
164SD6 = drift('SD6',  0.79000-Lsextu, 'DriftPass');
165SD7 = drift('SD7',  0.419900, 'DriftPass');
166SD8 = drift('SD8',  0.179900-Lsextu, 'DriftPass');
167SD12= drift('SD12', 0.44990-Lsextu, 'DriftPass');
168SD12u= drift('SD12', 0.2, 'DriftPass'); % upstream V V-scraper % TO BE UPDATED
169SD12d= drift('SD12', 0.44990-0.2-Lsextu, 'DriftPass'); % downstream H-scraper
170SD1d = drift('SD1d',  0.5170, 'DriftPass');
171SD14a = drift('SD14a', 0.38500000, 'DriftPass');
172SD9a = drift('SD9a',  0.204200  , 'DriftPass');
173SD10a = drift('SD10a', 0.172300 , 'DriftPass');
174SDAC1 = drift('SDAC1', 1.48428  , 'DriftPass');
175SD13a= drift('SD13a', 3.141452  , 'DriftPass');
176SD1e = drift('SD1e',  5.6589, 'DriftPass');
177SD1c1 = drift('SD1c1',  0.8410, 'DriftPass'); % K3 - FCOR
178SD1c2 = drift('SD1c2',  0.601, 'DriftPass');  % FCOR KEMH
179SD1c3u= drift('SD1c3u', 0.683, 'DriftPass');  % KEMH - VSCRAPER
180SD1c3d= drift('SD1c3u', 1.560-0.683, 'DriftPass');  % VSCRAPER - K4
181SD91 = drift('SD91',  0.251240, 'DriftPass');
182SD41 = drift('SD41',  0.2521-Lsextu, 'DriftPass');
183SD42 = drift('SD42',  0.205-Lsextu, 'DriftPass');
184SD92 = drift('SD92',  0.204300, 'DriftPass');
185SD93 = drift('SD93',  0.251300  , 'DriftPass');
186SD43 = drift('SD43', 0.2051-Lsextu      , 'DriftPass');
187SD141 = drift('SD141', 0.431900, 'DriftPass');
188SDB1 = drift('SDB1', 0.29100, 'DriftPass');
189SDB2 = drift('SDB2', 0.16680000, 'DriftPass');
190SDB3 = drift('SDB3', 0.252-Lsextu,  'DriftPass');
191SDB4 = drift('SDB4', 0.2776-Lsextu ,'DriftPass');
192SDB5 = drift('SDB5', 0.205-Lsextu  ,'DriftPass');
193SDB6 = drift('SDB6', 0.119800 ,'DriftPass');
194SDB7 = drift('SDB7', 0.166900 , 'DriftPass');
195SDB8 = drift('SDB8', 0.252-Lsextu , 'DriftPass');
196SDB9 = drift('SDB9', 0.119800 ,'DriftPass');
197SDB10= drift('SDB10',0.166900 , 'DriftPass');
198SDB11= drift('SDB11',0.2519-Lsextu, 'DriftPass');
199SDB12= drift('SDB12',0.2049-Lsextu, 'DriftPass');
200SDB13= drift('SDB13',0.119800, 'DriftPass');
201SDB14= drift('SDB14',0.1668000, 'DriftPass');
202SDB15= drift('SDB15',0.252-Lsextu , 'DriftPass');
203SDB17= drift('SDB17',0.205-Lsextu , 'DriftPass');
204SDB18= drift('SDB18',0.1199000 , 'DriftPass');
205SDC1 = drift('SDC1' , 0.241900 ,  'DriftPass');
206SDC2 = drift('SDC2' , 0.079 ,  'DriftPass');
207SDC3 = drift('SDC3' , 0.07845, 'DriftPass');
208SDC4 = drift('SDC4' , 0.3358-Lsextu,  'DriftPass');
209SDC5 = drift('SDC5' , 0.0846,  'DriftPass');
210SDC6 = drift('SDC6' , 0.079,   'DriftPass');
211SDC7 = drift('SDC7' , 0.342-Lsextu ,  'DriftPass');
212SDC8 = drift('SDC8' , 0.241900 ,  'DriftPass');
213SDC9 = drift('SDC9' , 0.079  , 'DriftPass');
214DRFT10= drift('DRFT10',0.07845, 'DriftPass');
215DRFT11= drift('DRFT11',0.2419000  , 'DriftPass');
216DRFT12= drift('DRFT12',0.3358-Lsextu , 'DriftPass');
217DRFT13= drift('DRFT13',0.0846 , 'DriftPass');
218DRFT14= drift('DRFT14',0.0788 , 'DriftPass');
219DRFT15= drift('DRFT15',0.3422-Lsextu , 'DriftPass');
220DRFT16= drift('DRFT16',0.241900  , 'DriftPass');
221DRFT17= drift('DRFT17',0.079  , 'DriftPass');
222DRFT18= drift('DRFT18',0.07845, 'DriftPass');
223DRFT19= drift('DRFT19',0.24190  , 'DriftPass');
224SDC20= drift('SDC20',0.241900  , 'DriftPass');
225SDC21= drift('SDC21',0.079  , 'DriftPass');
226SDC22= drift('SDC22',0.29090  , 'DriftPass');
227SDC24= drift('SDC24',1.379  , 'DriftPass');
228%SDC23a= drift('SDC23a',0.632  , 'DriftPass'); % BPM - K1
229SDC23b= drift('SDC23b',1.983  , 'DriftPass'); % K1 - KEMV
230SDC23c= drift('SDC23c',1.019  , 'DriftPass'); % KEMV - K2
231SDC23d= drift('SDC23d',0.676  , 'DriftPass'); % K2 - FCOR
232SDC23e= drift('SDC23a',0.147  , 'DriftPass'); % BPM - FCOR [1 1]
233SDC23f= drift('SDC23a',0.485  , 'DriftPass'); % FCOR [1 1] next SD
234
235% HU640 straight section
236SDHU640a = drift('SDHU640a',  1.7394, 'DriftPass');
237SDHU640b = drift('SDHU640b',  0.6400, 'DriftPass');
238SDHU640c = drift('SDHU640c',  3.2795, 'DriftPass');
239SDHU640d = drift('SDHU640d',  3.1195, 'DriftPass');
240SDHU640e = drift('SDHU640e',  0.6400, 'DriftPass');
241SDHU640f = drift('SDHU640f',  1.8994, 'DriftPass');
242
243
244
245%% STRAIGHT SECTIONS (between BPMs)
246% 4 long straight sections (12 m, available part 10.50 m)
247
248%SDL01 (injection) is split in upstream and downstrem parts
249SDL01d = [SD1a   PtINJ   SD1b   K3  SD1c1 FCOR  SD1c2  KEMH SD1c3u VSCRAP SD1c3d   K4     SD1d];
250SDL01u = [SDC23e  FCOR SDC23f K1 SDC23b KEMV SDC23c K2 SDC23d SDC24];
251% SDL05 HU640 straight section
252HU640upstream   = [SDHU640a VCMHU640 SDHU640b HCMHU640 SDHU640c];
253HU640downstream = [SDHU640d HCMHU640 SDHU640e VCMHU640 SDHU640f];
254SDL05  = [HU640upstream HU640downstream]; % DESIRS HU640
255SDL09  = [SD1e SD1e];
256% TOMOGRAPHY U18 CRYO + NANOSCOPIUM U20
257SDL13u  = [SDNANO1 CHINANO CHINANOD1 SDNANO2 FFWDCOR SDNANO3 FFWDCOR SDNANO4 CHINANOD2 CHINANO SDNANO5 ...
258           BPM SDNANO6 FCOR SDNANO6a Q11 SDNANO7 SX12 SDNANO8];
259SDL13d  = [SDNANO8 SX12 SDNANO7 Q11 SDNANO9 FCOR SDNANO6 BPM  ...
260           SDNANO10 CHINANO CHINANOD3 SDNANO11 FFWDCOR SDNANO3 FFWDCOR SDNANO2 CHINANOD4 CHINANO SDNANO1];
261SDL13 = [SDL13u Q12 SDL13d];
262%SDL13  = [SD1e SD1e]; % NANOSCOPIUM U20 + TOMOGRAPHY U18 CRYO
263
264% 12 medium straigt sections (7 m, available part for IDs 5.46 m)
265SDM02 = [SD13a CAV SD13a]; % CRYOMODULE #2
266SDM03 = [SD13a SD13a]; % CRYOMUDULE #1 not put in the model for simplicity
267SDM04 = [SD13a SD13a]; % PLEIADES HU256 + HU80
268SDM06 = [SD13a SD13a]; % PUMA future Wiggler
269%SDM06 = [SDWSV50 SWSV50 SDWSV50]; % PUMA future Wiggler
270SDM07 = [SD13a SD13a]; % DEIMOS HU52+EMPHU65
271SDM08 = [SD13a SD13a]; % TEMPO HU80+HU44
272SDM10 = [SD13a SD13a]; % HERMES HU64+HU42
273SDM11 = [SDPX2a PX2C CHIPX2D1 SDPX2b PX2C CHIPX2D2 SDPX2b CHIPX2D3 PX2C SDPX2c]; % PX2 U24
274SDM12 = [SD13a SD13a]; % ANTARES HU256 + HU60
275SDM14 = [SD13a SD13a]; % SEXTANTS (ex microFocus) HU44 + HU80
276SDM15 = [SD13a SD13a]; % CASSIOPEE HU256 + HU80
277SDM16 = [SD13a SD13a]; % LUCIA HU52
278
279% 8 short straigt sections (3.6 m, available part for IDs 2.8 m)
280SDC02 = [SDAC1 SDAC1];% LIGNE ALPHA
281SDC03 = [SDAC1 SDAC1];% PSICHE WSV50
282SDC06 = [SDAC1 SDAC1];% CRISTAL U20
283SDC07 = [SDAC1 SDAC1];% GALAXIES U20
284SDC10 = [SDAC1 SDAC1];% PX1 U20
285SDC11 = [SDAC1 SDAC1];% SWING U20
286SDC14 = [SDAC1 SDAC1];% SIXS U20
287SDC15 = [SDAC1 SDAC1];% SIRIUS HU34
288
289
290%% Lattice
291% Superperiods
292
293% SUPERPERIOD #1
294SUP1  = [...
295    BPM  SDB1   Q1     SD2    SX1   SD3     Q2 ...
296    SDB2  BPM    SD14a   Q3      SD5    SX2    SD6 ...
297    BEND    SD7     Q4  SD8     SX3    ...
298    SDB3  BPM     SD9a   Q5     SD12u HSCRAP SD12d  SX4 ...
299    SDB4  BPM     SD10a    Q5     SD91     ...
300    BPM  SDB5  SX3    SD8   Q4      SD7     BEND ...
301    SD7     Q6      SD5    SX5     SD41    ...
302    BPM  SDB6  Q7    SD3     SX6      SD2     Q8 ...
303    SDC1 FCOR SDC2   BPM    SDM02 BPM ...
304    SDC3    FCOR   SDC1 ...
305    Q8      SD2    SX8     SD3    Q7  SDB7 ...
306    BPM   SD42     SX7      SD5     Q6     SD7 ...
307    BEND   SD7    Q9    SD8     SX9  SDB8 ...
308    BPM     SD9a    Q10    SD8     SX10  SDC4  ...
309    FCOR SDC5  BPM   SDC02 ...
310    BPM   SDC6  FCOR  SDC7 SX10    SD8    Q10    SD91 ...
311    BPM   SD42  SX9      SD8     Q9     SD7    ...
312    BEND   SD7    Q6    SD5     SX7    SD41   ...
313    BPM  SDB9  Q7      SD3    SX8    SD2   Q8 SDC8 ...
314    FCOR  SDC9  BPM     SDM03  ...
315    BPM  DRFT10   FCOR  DRFT11  Q8     SD2   SX8   SD3   Q7 ...
316    SDB10  BPM   SD42    SX7    SD5   Q6      SD7  ...
317    BEND    SD7     Q9     SD8     SX9  SDB11    ...
318    BPM    SD92   Q10     SD8     SX10 DRFT12 ...
319    FCOR  DRFT13  BPM    SDC03   ...
320    BPM  DRFT14  FCOR   DRFT15   SX10   SD8     Q10    SD93 ...
321    BPM  SDB12  SX9    SD8   Q9      SD7 ...
322    BEND    SD7    Q6      SD5    SX7    SD41 ...
323    BPM  SDB13   Q7      SD3    SX8     SD2    Q8  DRFT16 ...
324    FCOR DRFT17  BPM    SDM04   ...
325    BPM   DRFT18  FCOR  DRFT19   Q8     SD2     SX6    SD3    Q7 ...
326    SDB14  BPM    SD43    SX5     SD5    Q6      SD7    ...
327    BEND   SD7   Q4      SD8     SX3  SDB15 ...
328    BPM     SD9a   Q5      SD12   ...
329    SX4  SDB4  BPM     SD10a Q5     SD93 ...
330    BPM  SDB17  SX3     SD8    Q4     SD7   ...
331    BEND    SD6     SX2      SD5     Q3     SD141 ...
332    BPM  SDB18  Q2     SD3   SX1     SD2     Q1 ...
333    SDC20 FCOR  SDC21 BPM];
334
335% SUPERPERIOD #2
336SUP2  = [  ...
337    BPM SDC2 FCOR SDC1   ...
338    Q1     SD2    SX1   SD3     Q2 ...
339    SDB7  BPM    SD14a   Q3      SD5    SX2    SD6 ...
340    BEND    SD7     Q4  SD8     SX3    ...
341    SDB3  BPM     SD9a   Q5     SD12  SX4 ...
342    SDB4  BPM     SD10a    Q5     SD93     ...
343    BPM  SDB5  SX3    SD8   Q4      SD7     BEND ...
344    SD7     Q6      SD5    SX5     SD41    ...
345    BPM  SDB6  Q7    SD3     SX6      SD2     Q8 ...
346    SDC1 FCOR SDC2   BPM    SDM06  BPM ...
347    SDC2    FCOR   SDC1 ...
348    Q8      SD2    SX8     SD3    Q7  SDB7 ...
349    BPM   SDB5     SX7      SD5     Q6     SD7 ...
350    BEND   SD7    Q9    SD8     SX9  SDB3 ...
351    BPM     SD9a    Q10    SD8     SX10  SDC4  ...
352    FCOR SDC5  BPM   SDC06 ...
353    BPM   DRFT14  FCOR  DRFT15 SX10    SD8    Q10    SD93 ...
354    BPM   SDB12  SX9      SD8     Q9     SD7    ...
355    BEND   SD7    Q6    SD5     SX7    SD41   ...
356    BPM  SDB6  Q7      SD3    SX8    SD2   Q8 SDC1 ...
357    FCOR  SDC2  BPM     SDM07  ...
358    BPM  SDC2   FCOR  SDC1  Q8     SD2   SX8   SD3   Q7 ...
359    SDB7  BPM   SDB5    SX7    SD5   Q6      SD7  ...
360    BEND    SD7     Q9     SD8     SX9   SDB3    ...
361    BPM    SD9a   Q10     SD8     SX10  SDC4 ...
362    FCOR  SDC5  BPM    SDC07   ...
363    BPM  DRFT14  FCOR   DRFT15   SX10   SD8     Q10    SD93 ...
364    BPM  SDB12  SX9    SD8   Q9      SD7 ...
365    BEND    SD7    Q6      SD5    SX7    SD41 ...
366    BPM  SDB6   Q7      SD3    SX8     SD2    Q8  SDC1 ...
367    FCOR SDC2  BPM    SDM08   ...
368    BPM   SDC2  FCOR  SDC1   Q8     SD2     SX6    SD3    Q7 ...
369    SDB7  BPM    SD42    SX5     SD5    Q6      SD7    ...
370    BEND   SD7   Q4      SD8     SX3  SDB3 ...
371    BPM     SD9a   Q5      SD12   ...
372    SX4   SDB4  BPM     SD10a   Q5     SD93 ...
373    BPM  SD42  SX3     SD8    Q4     SD7   ...
374    BEND    SD6     SX2      SD5     Q3     SD141 ...
375    BPM  SDB18  Q2     SD3   SX1     SD2     Q1 ...
376    SDC1 FCOR  SDC2   BPM];
377
378% SUPERPERIOD #3
379SUP3  = [  ...
380    BPM SDC2 FCOR SDC1   ...
381    Q1     SD2    SX1   SD3     Q2 ...
382    SDB7  BPM    SD14a   Q3      SD5    SX2    SD6 ...
383    BEND    SD7     Q4  SD8     SX3    ...
384    SDB3  BPM     SD9a   Q5     SD12  SX4 ...
385    SDB4  BPM     SD10a    Q5     SD93     ...
386    BPM  SDB5  SX3    SD8   Q4      SD7     BEND ...
387    SD7     Q6      SD5    SX5     SD41    ...
388    BPM  SDB6  Q7    SD3     SX6      SD2     Q8 ...
389    SDC1 FCOR SDC2   BPM    SDM10  BPM ...
390    SDC2    FCOR   SDC1 ...
391    Q8      SD2    SX8     SD3    Q7  SDB7 ...
392    BPM   SDB5     SX7      SD5     Q6     SD7 ...
393    BEND   SD7    Q9    SD8     SX9  SDB3 ...
394    BPM     SD9a    Q10    SD8     SX10  SDC4  ...
395    FCOR SDC5  BPM   SDC10 ...
396    BPM   DRFT14  FCOR  DRFT15 SX10    SD8    Q10    SD93 ...
397    BPM   SDB12  SX9      SD8     Q9     SD7    ...
398    BEND   SD7    Q6    SD5     SX7    SD41   ...
399    BPM  SDB6  Q7      SD3    SX8    SD2   Q8 SDC1 ...
400    FCOR  SDC2  BPM     SDM11  ...
401    BPM  SDC2   FCOR  SDC1  Q8     SD2   SX8   SD3   Q7 ...
402    SDB7  BPM   SDB5    SX7    SD5   Q6      SD7  ...
403    BEND    SD7     Q9     SD8     SX9   SDB3    ...
404    BPM    SD9a   Q10     SD8     SX10  SDC4 ...
405    FCOR  SDC5  BPM    SDC11   ...
406    BPM  DRFT14  FCOR   DRFT15   SX10   SD8     Q10    SD93 ...
407    BPM  SDB12  SX9    SD8   Q9      SD7 ...
408    BEND    SD7    Q6      SD5    SX7    SD41 ...
409    BPM  SDB6   Q7      SD3    SX8     SD2    Q8  SDC1 ...
410    FCOR SDC2  BPM    SDM12   ...
411    BPM   SDC2  FCOR  SDC1   Q8     SD2     SX6    SD3    Q7 ...
412    SDB7  BPM    SD42    SX5     SD5    Q6      SD7    ...
413    BEND   SD7   Q4      SD8     SX3  SDB3 ...
414    BPM     SD9a   Q5      SD12   ...
415    SX4   SDB4  BPM     SD10a    Q5     SD93 ...
416    BPM  SD42  SX3     SD8    Q4     SD7   ...
417    BEND    SD6     SX2      SD5     Q3     SD141 ...
418    BPM  SDB18  Q2     SD3   SX11     SD2     Q1 ...
419    SDC1 FCOR  SDC2   BPM];
420
421% SUPERPERIOD #4
422SUP4  = [  ...
423    BPM SDC2 FCOR SDC1   ...
424    Q1     SD2    SX11   SD3     Q2 ...
425    SDB7  BPM    SD14a   Q3      SD5    SX2    SD6 ...
426    BEND    SD7     Q4  SD8     SX3    ...
427    SDB3  BPM     SD9a   Q5     SD12  SX4 ...
428    SDB4  BPM     SD10a    Q5     SD93     ...
429    BPM  SDB5  SX3    SD8   Q4      SD7     BEND ...
430    SD7     Q6      SD5    SX5     SD41    ...
431    BPM  SDB6  Q7    SD3     SX6      SD2     Q8 ...
432    SDC1 FCOR SDC2   BPM    SDM14  BPM ...
433    SDC2    FCOR   SDC1 ...
434    Q8      SD2    SX8     SD3    Q7  SDB7 ...
435    BPM   SDB5     SX7      SD5     Q6     SD7 ...
436    BEND   SD7    Q9    SD8     SX9  SDB3 ...
437    BPM     SD9a    Q10    SD8     SX10  SDC4  ...
438    FCOR SDC5  BPM   SDC14 ...
439    BPM   DRFT14  FCOR  DRFT15 SX10    SD8    Q10    SD93 ...
440    BPM   SDB12  SX9      SD8     Q9     SD7    ...
441    BEND   SD7    Q6    SD5     SX7    SD41   ...
442    BPM  SDB6  Q7      SD3    SX8    SD2   Q8 SDC1 ...
443    FCOR  SDC2  BPM     SDM15  ...
444    BPM  SDC2   FCOR  SDC1  Q8     SD2   SX8   SD3   Q7 ...
445    SDB7  BPM   SDB5    SX7    SD5   Q6      SD7  ...
446    BEND    SD7     Q9     SD8     SX9   SDB3    ...
447    BPM    SD9a   Q10     SD8     SX10  SDC4 ...
448    FCOR  SDC5  BPM    SDC15   ...
449    BPM  DRFT14  FCOR   DRFT15   SX10   SD8     Q10    SD93 ...
450    BPM  SDB12  SX9    SD8   Q9      SD7 ...
451    BEND    SD7    Q6      SD5    SX7    SD41 ...
452    BPM  SDB6   Q7      SD3    SX8     SD2    Q8  SDC1 ...
453    FCOR SDC2  BPM    SDM16   ...
454    BPM   SDC2  FCOR  SDC1   Q8     SD2     SX6    SD3    Q7 ...
455    SDB7  BPM    SD42    SX5     SD5    Q6      SD7    ...
456    BEND   SD7   Q4      SD8     SX3  SDB3 ...
457    BPM     SD9a   Q5      SD12   ...
458    SX4   SDB4  BPM     SD10a    Q5     SD93 ...
459    BPM  SD42  SX3     SD8    Q4     SD7   ...
460    BEND    SD6     SX2      SD5     Q3     SD141 ...
461    BPM  SDB18  Q2     SD3   SX1     SD2     Q1 ...
462    SDC22 BPM];
463
464%THE STORAGE RING
465ELIST = [...
466    DEBUT ...
467    SECT1 SDL01d SUP1 ...
468    SECT2 SDL05 SUP2 ...
469    SECT3 SDL09 SUP3 ...
470    SECT4 SDL13 SUP4 SDL01u  ...
471    FIN];
472
473PER = [SDL05 SUP2];
474ELIST = [repmat(PER,1,4), CAV];
475
476buildlat(ELIST);
477
478% Set all magnets to same energy
479THERING = setcellstruct(THERING,'Energy',1:length(THERING),GLOBVAL.E0);
480
481%ATIndexList = atindex;
482
483% set nanoscopium triplets upstream and downstream of SDL13
484%THERING = setNanoscopium(THERING,ATIndexList);
485
486% set PX2 tuner chicane
487%THERING{ATIndexList.PX2C(1)}.KickAngle(1) =  -2.25e-3; % rad
488%THERING{ATIndexList.PX2C(2)}.KickAngle(1) = 2*2.25e-3; % rad
489%THERING{ATIndexList.PX2C(3)}.KickAngle(1) =  -2.25e-3; % rad
490
491%% set NANOSCOPIUM tuner magnets
492% THERING{ATIndexList.NANOC(1)}.KickAngle(1) =  -5.00e-6*0; % rad
493% THERING{ATIndexList.NANOC(2)}.KickAngle(1) =   2.25e-6*0; % rad
494% THERING{ATIndexList.NANOC(3)}.KickAngle(1) =  -1.25e-6*0; % rad
495% THERING{ATIndexList.NANOC(4)}.KickAngle(1) =  -2.25e-6*0; % rad
496
497evalin('caller','global THERING FAMLIST GLOBVAL');
498atsummary;
499
500
501if nargout
502    varargout{1} = THERING;
503end
504
505function THERING= setNanoscopium(THERING,ATIndexList)
506
507QP1N = -0.1272138E+01;
508QP2N =  0.1860390E+01;
509QP3N = -0.1142906E+01;
510THERING = setquad(THERING, ATIndexList.Q1(6), QP1N);
511THERING = setquad(THERING, ATIndexList.Q1(7), QP1N);
512THERING = setquad(THERING, ATIndexList.Q2(6), QP2N);
513THERING = setquad(THERING, ATIndexList.Q2(7), QP2N);
514THERING = setquad(THERING, ATIndexList.Q3(6), QP3N);
515THERING = setquad(THERING, ATIndexList.Q3(7), QP3N);
516
517function THERING = setquad(THERING, Idx, K)
518
519THERING{Idx}.K = K;
520THERING{Idx}.PolynomB(2) = K;
521fprintf('%s %03d %+f %+f\n', THERING{Idx}.FamName, Idx, THERING{Idx}.K, THERING{Idx}.PolynomB(2));
Note: See TracBrowser for help on using the repository browser.