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

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

Initial import--MML version from SOLEIL@2013

File size: 19.1 KB
Line 
1function varargout = lat_nano_2000_7000
2%solamor2 - soleil lattice w/o ID
3% Lattice definition file
4% Lattice for SOLEIL: perfect lattice no magnetic errors
5
6% Compiled by Laurent Nadolski and Amor Nadji
7% 09/01/02, ALS
8% mai 2006 : mis à jour vraies cotes BPM, correcteurs, dipole (coins,
9% chamd de fuite et gradient)
10% A. Nadji et P. Brunelle
11% Controlroom : set linearpass for quad (closed orbit)
12%               No cavity; No Radiation PassMethod
13% April 20th 2007, Laurent S. nadolski
14% BPM downstream injection section had wrong location by
15% 30 mm, 2 FCOR in injection straight section was not at their proper
16% location
17% November 24th 2007, Laurent S. Nadolski
18% Bpms 5 on the wrong side of sextupole in cell 4, 8, 12 and 16
19% December 7th, 2007, Laurent S. Nadolski
20% Added KEM V & H, K1 & K2 markers modelled as thin element
21% October 1, 2008
22% Lattice with tunes 18.2020 and 10.3170
23% Octobre 27, 2008
24% Lattice with tunes 18.2020 and 10.3170
25% Lattice with chromaticities 2.0 and 2.0
26% March 4, 2009
27% FHCOR and FVCOR [1 1] steerer moved 2180 mm upstream,
28% closed to entrance of vertical kicker
29% March 2009 - New quadrupole model from MAT with intermediate length
30% June 2009 - magnetcoefficient with index June 9 was changed
31%             for sextupoles calibration
32%             for quadrupole Just all ranges for quad variation with fit are present
33% July 2009 - Add PX2 Chicane
34% December 2009 - Add Nanonscopium
35
36global FAMLIST THERING GLOBVAL
37
38GLOBVAL.E0 = 2.7391e9; % Ring energy
39GLOBVAL.LatticeFile = mfilename;
40FAMLIST = cell(0);
41
42disp(['** Loading SOLEIL magnet lattice ', mfilename]);
43
44L0 = 354.0968203999998;      % design length [m]
45C0 = 2.99792458e8;           % speed of light [m/s]
46HarmNumber = 416;
47
48%% Cavity
49%              NAME   L     U[V]       f[Hz]          h        method
50CAV = rfcavity('RF' , 0 , 4.0e+6 , HarmNumber*C0/L0, ...
51    HarmNumber ,'CavityPass');
52
53%% Marker and apertures
54SECT1  =  marker('SECT1', 'IdentityPass');
55SECT2  =  marker('SECT2', 'IdentityPass');
56SECT3  =  marker('SECT3', 'IdentityPass');
57SECT4  =  marker('SECT4', 'IdentityPass');
58DEBUT  =  marker('DEBUT', 'IdentityPass');
59FIN    =  marker('FIN', 'IdentityPass');
60
61INJ = aperture('INJ',[-0.035 0.035 -0.0125 0.0125],'AperturePass');
62
63%% Injection section
64PtINJ = marker('PtINJ', 'IdentityPass');
65K1 = marker('K1', 'IdentityPass');
66K2 = marker('K2', 'IdentityPass');
67K3 = marker('K3', 'IdentityPass');
68K4 = marker('K4', 'IdentityPass');
69
70%% BPM
71BPM    =  marker('BPM', 'IdentityPass');
72
73%% DRIFT SPACES
74
75SD1a = drift('SD1a',  1.4125, 'DriftPass');
76SD1b = drift('SD1b',  0.7575, 'DriftPass');
77SD2 = drift('SD2',  0.369900, 'DriftPass');
78SD3 = drift('SD3',   0.181900, 'DriftPass');
79SD5 = drift('SD5',  0.179900, 'DriftPass');
80SD6 = drift('SD6',  0.79000, 'DriftPass');
81SD7 = drift('SD7',  0.419900, 'DriftPass');
82SD8 = drift('SD8',  0.1799000, 'DriftPass');
83SD12= drift('SD12', 0.44990, 'DriftPass');
84SD1d = drift('SD1d',  0.5170, 'DriftPass');
85SD14a = drift('SD14a', 0.38500000, 'DriftPass');
86SD9a = drift('SD9a',  0.204200  , 'DriftPass');
87SD10a = drift('SD10a', 0.172300 , 'DriftPass');
88SDAC1 = drift('SDAC1', 1.48428  , 'DriftPass');
89SD13a= drift('SD13a', 3.141452  , 'DriftPass');
90SD1e = drift('SD1e',  5.6589, 'DriftPass');
91SD1c1 = drift('SD1c1',  0.8410, 'DriftPass'); % K3 - FCOR
92SD1c2 = drift('SD1c2',  0.601, 'DriftPass');  % FCOR KEMH
93SD1c3 = drift('SD1c3',  1.560, 'DriftPass');  % KEMH - K4
94SD91 = drift('SD91',  0.251240, 'DriftPass');
95SD41 = drift('SD41',  0.2521, 'DriftPass');
96SD42 = drift('SD42',  0.205, 'DriftPass');
97SD92 = drift('SD92',  0.204300, 'DriftPass');
98SD93 = drift('SD93',  0.251300  , 'DriftPass');
99SD43 = drift('SD43', 0.2051     , 'DriftPass');
100SD141 = drift('SD141', 0.431900, 'DriftPass');
101SDB1 = drift('SDB1', 0.29100, 'DriftPass');
102SDB2 = drift('SDB2', 0.16680000, 'DriftPass');
103SDB3 = drift('SDB3', 0.252,  'DriftPass');
104SDB4 = drift('SDB4', 0.2776 ,'DriftPass');
105SDB5 = drift('SDB5', 0.205  ,'DriftPass');
106SDB6 = drift('SDB6', 0.119800 ,'DriftPass');
107SDB7 = drift('SDB7', 0.166900 , 'DriftPass');
108SDB8 = drift('SDB8', 0.252 , 'DriftPass');
109SDB9 = drift('SDB9', 0.119800 ,'DriftPass');
110SDB10= drift('SDB10',0.166900 , 'DriftPass');
111SDB11= drift('SDB11',0.2519, 'DriftPass');
112SDB12= drift('SDB12',0.2049, 'DriftPass');
113SDB13= drift('SDB13',0.119800, 'DriftPass');
114SDB14= drift('SDB14',0.1668000, 'DriftPass');
115SDB15= drift('SDB15',0.252 , 'DriftPass');
116SDB17= drift('SDB17',0.205 , 'DriftPass');
117SDB18= drift('SDB18', 0.119900, 'DriftPass');
118SDC1 = drift('SDC1' , 0.241900,  'DriftPass');
119SDC2 = drift('SDC2' , 0.079000,  'DriftPass');
120SDC3 = drift('SDC3' , 0.078450, 'DriftPass');
121SDC4 = drift('SDC4' , 0.335800,  'DriftPass');
122SDC5 = drift('SDC5' , 0.084600,  'DriftPass');
123SDC6 = drift('SDC6' , 0.079000,   'DriftPass');
124SDC7 = drift('SDC7' , 0.342000,  'DriftPass');
125SDC8 = drift('SDC8' , 0.241900,  'DriftPass');
126SDC9 = drift('SDC9' , 0.079000, 'DriftPass');
127SDC10= drift('SDC10',0.07845, 'DriftPass');
128SDC11= drift('SDC11',0.2419000  , 'DriftPass');
129SDC12= drift('SDC12',0.3358 , 'DriftPass');
130SDC13= drift('SDC13',0.0846 , 'DriftPass');
131SDC14= drift('SDC14',0.0788 , 'DriftPass');
132SDC15= drift('SDC15',0.3422 , 'DriftPass');
133SDC16= drift('SDC16',0.241900  , 'DriftPass');
134SDC17= drift('SDC17',0.079  , 'DriftPass');
135SDC18= drift('SDC18',0.07845, 'DriftPass');
136SDC19= drift('SDC19',0.24190  , 'DriftPass');
137SDC20= drift('SDC20',0.241900  , 'DriftPass');
138SDC21= drift('SDC21',0.079  , 'DriftPass');
139SDC22= drift('SDC22',0.29090  , 'DriftPass');
140SDC24= drift('SDC24',1.379  , 'DriftPass');
141%SDC23a= drift('SDC23a',0.632  , 'DriftPass'); % BPM - K1
142SDC23b= drift('SDC23b',1.983  , 'DriftPass'); % K1 - KEMV
143SDC23c= drift('SDC23c',1.019  , 'DriftPass'); % KEMV - K2
144SDC23d= drift('SDC23d',0.676  , 'DriftPass'); % K2 - FCOR
145SDC23e= drift('SDC23a',0.147  , 'DriftPass'); % BPM - FCOR [1 1]
146SDC23f= drift('SDC23a',0.485  , 'DriftPass'); % FCOR [1 1] next SD
147SDPX2a= drift('SDC23a',0.363902, 'DriftPass'); % FCOR [1 1] next SD
148SDPX2b= drift('SDC23a',2.85755, 'DriftPass'); % FCOR [1 1] next SD
149SDPX2c= drift('SDC23a', 0.203902, 'DriftPass'); % FCOR [1 1] next SD
150% nanoscopium
151SDNSC1 = drift('SDNSC', 4.5888, 'DriftPass');
152SDNSC2 = drift('SDNSC', 0.4618, 'DriftPass');
153
154% HU640 straight section
155SDHU640a = drift('SDHU640a',  1.7394, 'DriftPass');
156SDHU640b = drift('SDHU640b',  0.64, 'DriftPass');
157SDHU640c = drift('SDHU640c',  3.2795, 'DriftPass');
158SDHU640d = drift('SDHU640d',  3.1195, 'DriftPass');
159SDHU640e = drift('SDHU640e',  0.64, 'DriftPass');
160SDHU640f = drift('SDHU640f',  1.8994, 'DriftPass');
161
162%% QUADRUPOLES (compensation de l'effet des défauts de focalisation des
163LQC = 0.180100E+00*2;
164LQL = 0.248100E+00*2;
165Q1   =  quadrupole('Q1' , LQC,  -0.9511244E+00 , 'QuadLinearPass');
166Q2   =  quadrupole('Q2' , LQL,   0.1596755E+01 , 'QuadLinearPass');
167Q3   =  quadrupole('Q3' , LQC,  -0.8461094E+00 , 'QuadLinearPass');
168Q4   =  quadrupole('Q4' , LQC,  -0.1164016E+01 , 'QuadLinearPass');
169Q5   =  quadrupole('Q5' , LQC,   0.1678988E+01 , 'QuadLinearPass');
170Q6   =  quadrupole('Q6' , LQC,  -0.1152619E+01 , 'QuadLinearPass');
171Q7   =  quadrupole('Q7' , LQL,   0.2081727E+01 , 'QuadLinearPass');
172Q8   =  quadrupole('Q8' , LQC,  -0.1464629E+01 , 'QuadLinearPass');
173Q9   =  quadrupole('Q9' , LQC,  -0.1436643E+01 , 'QuadLinearPass');
174Q10  =  quadrupole('Q10', LQC,   0.1757550E+01 , 'QuadLinearPass');
175Q11  =  quadrupole('Q11', LQC,  -0.1830775E+01 , 'QuadLinearPass');
176Q12  =  quadrupole('Q12', LQL,   0.1801931E+01 , 'QuadLinearPass');
177
178
179
180
181%% SEXTUPOLES chromaticités nulles dans TracyII
182%avec defauts de focalisation des dipoles
183%P. Brunelle 02/05/06
184F = 1e8;
185Finv = 1/F;
186
187S1  =  sextupole('S1' , Finv,  0.3438380E+00*F*5, 'StrMPoleSymplectic4Pass');
188S2  =  sextupole('S2' , Finv, -0.7993242E+00*F*5, 'StrMPoleSymplectic4Pass');
189S3  =  sextupole('S3' , Finv, -0.5408313E+00*F*5, 'StrMPoleSymplectic4Pass');
190S4  =  sextupole('S4' , Finv,  0.7209300E+00*F*5, 'StrMPoleSymplectic4Pass');
191S5  =  sextupole('S5' , Finv, -0.7052902E+00*F*5, 'StrMPoleSymplectic4Pass');
192S6  =  sextupole('S6' , Finv,  0.6493340E+00*F*5, 'StrMPoleSymplectic4Pass');
193S7  =  sextupole('S7' , Finv, -0.1000704E+01*F*5, 'StrMPoleSymplectic4Pass');
194S8  =  sextupole('S8' , Finv,  0.8387440E+00*F*5, 'StrMPoleSymplectic4Pass');
195S9  =  sextupole('S9' , Finv, -0.5224938E+00*F*5, 'StrMPoleSymplectic4Pass');
196S10 =  sextupole('S10', Finv,  0.3890300E+00*F*5, 'StrMPoleSymplectic4Pass');
197
198%% Skew quadrupoles
199QT    =  skewquad('SkewQuad', 1e-8, 0.0, 'StrMPoleSymplectic4Pass');
200QTPX2    =  skewquad('QTPX2', 1e-10, 0.0, 'StrMPoleSymplectic4Pass');
201
202%% Slow feedback correctors
203COR  =  corrector('COR',0.0,[0 0],'CorrectorPass');
204
205%% PX2C H-correctors
206PX2 =  corrector('PX2C',0.0,[0 0],'CorrectorPass');
207PX2C= [QTPX2 PX2];
208
209%% Machine study kickers
210KEMH =  corrector('KEMH',0.0,[0 0],'CorrectorPass');
211KEMV =  corrector('KEMV',0.0,[0 0],'CorrectorPass');
212
213%% HU640
214HCMHU640 =  corrector('HCMHU640',0.0,[0 0],'CorrectorPass');
215VCMHU640 =  corrector('VCMHU640',0.0,[0 0],'CorrectorPass');
216
217HU640upstream   = [SDHU640a VCMHU640 SDHU640b HCMHU640 SDHU640c];
218HU640downstream = [SDHU640d HCMHU640 SDHU640e VCMHU640 SDHU640f];
219
220%% Fast feedback correctors
221FCOR =  corrector('FCOR',0.0,[0 0],'CorrectorPass');
222
223SX1   = [S1  COR  QT];
224SX2   = [S2  COR  QT];
225SX3   = [S3  COR  QT];
226SX4   = [S4  COR  QT];
227SX5   = [S5  COR  QT];
228SX6   = [S6  COR  QT];
229SX7   = [S7  COR  QT];
230SX8   = [S8  COR  QT];
231SX9   = [S9  COR  QT];
232SX10  = [S10 COR  QT];
233
234%% DIPOLES
235%BEND  =  rbend('BEND'  , 1.05243,  ...
236% 0.19635, 0.098175, 0.098175, 0.0,'BendLinearPass');
237
238%% DIPOLES
239% {** 1.3815 factor to fit with BETA ??? strange **}
240%theta = 2*pi/32;
241%fullgap = 0.105*0.724*2/6*1.3815*0.;
242% BEND  =  rbend2('BEND', L, theta, theta/2, theta/2, 0.0, ...
243%                 fullgap,'BendLinearFringeTiltPass');
244theta = 2*pi/32;
245%theta2 = theta/2;
246thetae = theta/2 - 0.6e-3*1;
247thetas = theta/2 + 0.9e-3*1;
248K = 0.00204*1;
249fullgap = 0.037*0.724*2*1;
250BEND  =  rbend2('BEND', 1.05243, theta, thetae, thetas, K,fullgap,'BendLinearPass');
251
252
253%% Lattice
254% Superperiods
255
256SUP1  = [...
257    SD1a   PtINJ   SD1b   K3  SD1c1 FCOR  SD1c2  KEMH SD1c3   K4     SD1d ...
258    BPM  SDB1   Q1     SD2    SX1   SD3     Q2 ...
259    SDB2  BPM    SD14a   Q3      SD5    SX2    SD6 ...
260    BEND    SD7     Q4  SD8     SX3    ...
261    SDB3  BPM     SD9a   Q5     SD12  SX4 ...
262    SDB4  BPM     SD10a    Q5     SD91     ...
263    BPM  SDB5  SX3    SD8   Q4      SD7     BEND ...
264    SD7     Q6      SD5    SX5     SD41    ...
265    BPM  SDB6  Q7    SD3     SX6      SD2     Q8 ...
266    SDC1 FCOR SDC2   BPM    SD13a  SD13a BPM ...
267    SDC3    FCOR   SDC1 ...
268    Q8      SD2    SX8     SD3    Q7  SDB7 ...
269    BPM   SD42     SX7      SD5     Q6     SD7 ...
270    BEND   SD7    Q9    SD8     SX9  SDB8 ...
271    BPM     SD9a    Q10    SD8     SX10  SDC4  ...
272    FCOR SDC5  BPM   SDAC1    SDAC1 ...
273    BPM   SDC6  FCOR  SDC7 SX10    SD8    Q10    SD91 ...
274    BPM   SD42  SX9      SD8     Q9     SD7    ...
275    BEND   SD7    Q6    SD5     SX7    SD41   ...
276    BPM  SDB9  Q7      SD3    SX8    SD2   Q8 SDC8 ...
277    FCOR  SDC9  BPM     SD13a    SD13a  ...
278    BPM  SDC10   FCOR  SDC11  Q8     SD2   SX8   SD3   Q7 ...
279    SDB10  BPM   SD42    SX7    SD5   Q6      SD7  ...
280    BEND    SD7     Q9     SD8     SX9  SDB11    ...
281    BPM    SD92   Q10     SD8     SX10 SDC12 ...
282    FCOR  SDC13  BPM    SDAC1    SDAC1   ...
283    BPM  SDC14  FCOR   SDC15   SX10   SD8     Q10    SD93 ...
284    BPM  SDB12  SX9    SD8   Q9      SD7 ...
285    BEND    SD7    Q6      SD5    SX7    SD41 ...
286    BPM  SDB13   Q7      SD3    SX8     SD2    Q8  SDC16 ...
287    FCOR SDC17  BPM    SD13a SD13a   ...
288    BPM   SDC18  FCOR  SDC19   Q8     SD2     SX6    SD3    Q7 ...
289    SDB14  BPM    SD43    SX5     SD5    Q6      SD7    ...
290    BEND   SD7   Q4      SD8     SX3  SDB15 ...
291    BPM     SD9a   Q5      SD12   ...
292    SX4  SDB4  BPM     SD10a Q5     SD93 ...
293    BPM  SDB17  SX3     SD8    Q4     SD7   ...
294    BEND    SD6     SX2      SD5     Q3     SD141 ...
295    BPM  SDB18  Q2     SD3   SX1     SD2     Q1 ...
296    SDC20 FCOR  SDC21   BPM     HU640upstream  ];
297
298SUP2  = [  ...
299    HU640downstream  BPM SDC2 FCOR SDC1   ...
300    Q1     SD2    SX1   SD3     Q2 ...
301    SDB7  BPM    SD14a   Q3      SD5    SX2    SD6 ...
302    BEND    SD7     Q4  SD8     SX3    ...
303    SDB3  BPM     SD9a   Q5     SD12  SX4 ...
304    SDB4  BPM     SD10a    Q5     SD93     ...
305    BPM  SDB5  SX3    SD8   Q4      SD7     BEND ...
306    SD7     Q6      SD5    SX5     SD41    ...
307    BPM  SDB6  Q7    SD3     SX6      SD2     Q8 ...
308    SDC1 FCOR SDC2   BPM    SD13a  SD13a  BPM ...
309    SDC2    FCOR   SDC1 ...
310    Q8      SD2    SX8     SD3    Q7  SDB7 ...
311    BPM   SDB5     SX7      SD5     Q6     SD7 ...
312    BEND   SD7    Q9    SD8     SX9  SDB3 ...
313    BPM     SD9a    Q10    SD8     SX10  SDC4  ...
314    FCOR SDC5  BPM   SDAC1    SDAC1 ...
315    BPM   SDC14  FCOR  SDC15 SX10    SD8    Q10    SD93 ...
316    BPM   SDB12  SX9      SD8     Q9     SD7    ...
317    BEND   SD7    Q6    SD5     SX7    SD41   ...
318    BPM  SDB6  Q7      SD3    SX8    SD2   Q8 SDC1 ...
319    FCOR  SDC2  BPM     SD13a  SD13a  ...
320    BPM  SDC2   FCOR  SDC1  Q8     SD2   SX8   SD3   Q7 ...
321    SDB7  BPM   SDB5    SX7    SD5   Q6      SD7  ...
322    BEND    SD7     Q9     SD8     SX9   SDB3    ...
323    BPM    SD9a   Q10     SD8     SX10  SDC4 ...
324    FCOR  SDC5  BPM    SDAC1    SDAC1   ...
325    BPM  SDC14  FCOR   SDC15   SX10   SD8     Q10    SD93 ...
326    BPM  SDB12  SX9    SD8   Q9      SD7 ...
327    BEND    SD7    Q6      SD5    SX7    SD41 ...
328    BPM  SDB6   Q7      SD3    SX8     SD2    Q8  SDC1 ...
329    FCOR SDC2  BPM    SD13a   SD13a   ...
330    BPM   SDC2  FCOR  SDC1   Q8     SD2     SX6    SD3    Q7 ...
331    SDB7  BPM    SD42    SX5     SD5    Q6      SD7    ...
332    BEND   SD7   Q4      SD8     SX3  SDB3 ...
333    BPM     SD9a   Q5      SD12   ...
334    SX4   SDB4  BPM     SD10a   Q5     SD93 ...
335    BPM  SD42  SX3     SD8    Q4     SD7   ...
336    BEND    SD6     SX2      SD5     Q3     SD141 ...
337    BPM  SDB18  Q2     SD3   SX1     SD2     Q1 ...
338    SDC1 FCOR  SDC2   BPM     SD1e  ];
339
340SUP3  = [  ...
341    SD1e  BPM SDC2 FCOR SDC1   ...
342    Q1     SD2    SX1   SD3     Q2 ...
343    SDB7  BPM    SD14a   Q3      SD5    SX2    SD6 ...
344    BEND    SD7     Q4  SD8     SX3    ...
345    SDB3  BPM     SD9a   Q5     SD12  SX4 ...
346    SDB4  BPM     SD10a    Q5     SD93     ...
347    BPM  SDB5  SX3    SD8   Q4      SD7     BEND ...
348    SD7     Q6      SD5    SX5     SD41    ...
349    BPM  SDB6  Q7    SD3     SX6      SD2     Q8 ...
350    SDC1 FCOR SDC2   BPM    SD13a  SD13a  BPM ...
351    SDC2    FCOR   SDC1 ...
352    Q8      SD2    SX8     SD3    Q7  SDB7 ...
353    BPM   SDB5     SX7      SD5     Q6     SD7 ...
354    BEND   SD7    Q9    SD8     SX9  SDB3 ...
355    BPM     SD9a    Q10    SD8     SX10  SDC4  ...
356    FCOR SDC5  BPM   SDAC1    SDAC1 ...
357    BPM   SDC14  FCOR  SDC15 SX10    SD8    Q10    SD93 ...
358    BPM   SDB12  SX9      SD8     Q9     SD7    ...
359    BEND   SD7    Q6    SD5     SX7    SD41   ...
360    BPM  SDB6  Q7      SD3    SX8    SD2   Q8 SDC1 ...
361    FCOR  SDC2  BPM     SDPX2a PX2C SDPX2b PX2C SDPX2b PX2C SDPX2c  ...
362    BPM  SDC2   FCOR  SDC1  Q8     SD2   SX8   SD3   Q7 ...
363    SDB7  BPM   SDB5    SX7    SD5   Q6      SD7  ...
364    BEND    SD7     Q9     SD8     SX9   SDB3    ...
365    BPM    SD9a   Q10     SD8     SX10  SDC4 ...
366    FCOR  SDC5  BPM    SDAC1    SDAC1   ...
367    BPM  SDC14  FCOR   SDC15   SX10   SD8     Q10    SD93 ...
368    BPM  SDB12  SX9    SD8   Q9      SD7 ...
369    BEND    SD7    Q6      SD5    SX7    SD41 ...
370    BPM  SDB6   Q7      SD3    SX8     SD2    Q8  SDC1 ...
371    FCOR SDC2  BPM    SD13a   SD13a   ...
372    BPM   SDC2  FCOR  SDC1   Q8     SD2     SX6    SD3    Q7 ...
373    SDB7  BPM    SD42    SX5     SD5    Q6      SD7    ...
374    BEND   SD7   Q4      SD8     SX3  SDB3 ...
375    BPM     SD9a   Q5      SD12   ...
376    SX4   SDB4  BPM     SD10a    Q5     SD93 ...
377    BPM  SD42  SX3     SD8    Q4     SD7   ...
378    BEND    SD6     SX2      SD5     Q3     SD141 ...
379    BPM  SDB18  Q2     SD3   SX1     SD2     Q1 ...
380    SDC1 FCOR  SDC2   BPM     SDNSC1 Q11 SDNSC2 Q12];
381%    SDC1 FCOR  SDC2   BPM     SD1e  ];
382
383%SUP4  = [  ...
384%    SD1e  BPM SDC2 FCOR SDC1   ...
385SUP4  = [  ...
386    SDNSC2 Q11 SDNSC1 BPM SDC2 FCOR SDC1   ...
387    Q1     SD2    SX1   SD3     Q2 ...
388    SDB7  BPM    SD14a   Q3      SD5    SX2    SD6 ...
389    BEND    SD7     Q4  SD8     SX3    ...
390    SDB3  BPM     SD9a   Q5     SD12  SX4 ...
391    SDB4  BPM     SD10a    Q5     SD93     ...
392    BPM  SDB5  SX3    SD8   Q4      SD7     BEND ...
393    SD7     Q6      SD5    SX5     SD41    ...
394    BPM  SDB6  Q7    SD3     SX6      SD2     Q8 ...
395    SDC1 FCOR SDC2   BPM    SD13a  SD13a  BPM ...
396    SDC2    FCOR   SDC1 ...
397    Q8      SD2    SX8     SD3    Q7  SDB7 ...
398    BPM   SDB5     SX7      SD5     Q6     SD7 ...
399    BEND   SD7    Q9    SD8     SX9  SDB3 ...
400    BPM     SD9a    Q10    SD8     SX10  SDC4  ...
401    FCOR SDC5  BPM   SDAC1    SDAC1 ...
402    BPM   SDC14  FCOR  SDC15 SX10    SD8    Q10    SD93 ...
403    BPM   SDB12  SX9      SD8     Q9     SD7    ...
404    BEND   SD7    Q6    SD5     SX7    SD41   ...
405    BPM  SDB6  Q7      SD3    SX8    SD2   Q8 SDC1 ...
406    FCOR  SDC2  BPM     SD13a  SD13a  ...
407    BPM  SDC2   FCOR  SDC1  Q8     SD2   SX8   SD3   Q7 ...
408    SDB7  BPM   SDB5    SX7    SD5   Q6      SD7  ...
409    BEND    SD7     Q9     SD8     SX9   SDB3    ...
410    BPM    SD9a   Q10     SD8     SX10  SDC4 ...
411    FCOR  SDC5  BPM    SDAC1    SDAC1   ...
412    BPM  SDC14  FCOR   SDC15   SX10   SD8     Q10    SD93 ...
413    BPM  SDB12  SX9    SD8   Q9      SD7 ...
414    BEND    SD7    Q6      SD5    SX7    SD41 ...
415    BPM  SDB6   Q7      SD3    SX8     SD2    Q8  SDC1 ...
416    FCOR SDC2  BPM    SD13a   SD13a   ...
417    BPM   SDC2  FCOR  SDC1   Q8     SD2     SX6    SD3    Q7 ...
418    SDB7  BPM    SD42    SX5     SD5    Q6      SD7    ...
419    BEND   SD7   Q4      SD8     SX3  SDB3 ...
420    BPM     SD9a   Q5      SD12   ...
421    SX4   SDB4  BPM     SD10a    Q5     SD93 ...
422    BPM  SD42  SX3     SD8    Q4     SD7   ...
423    BEND    SD6     SX2      SD5     Q3     SD141 ...
424    BPM  SDB18  Q2     SD3   SX1     SD2     Q1 ...
425    SDC22   BPM  SDC23e  FCOR SDC23f K1 SDC23b ...
426    KEMV SDC23c K2 SDC23d SDC24];
427
428
429ELIST = [DEBUT INJ SECT1 SUP1 SECT2 SUP2 SECT3 SUP3 SECT4 SUP4 CAV FIN];
430%ELIST = [DEBUT INJ SECT1 SUP1 SECT2 SUP2 SECT3 SUP3 SECT4 SUP4 FIN];
431
432buildlat(ELIST);
433
434% Set all magnets to same energy
435THERING = setcellstruct(THERING,'Energy',1:length(THERING),GLOBVAL.E0);
436
437ATIndexList = atindex;
438% set PX2 chicane
439THERING{ATIndexList.PX2C(1)}.KickAngle(1) =  -2.25e-3; % rad
440THERING{ATIndexList.PX2C(2)}.KickAngle(1) = 2*2.25e-3; % rad
441THERING{ATIndexList.PX2C(3)}.KickAngle(1) =  -2.25e-3; % rad
442
443evalin('caller','global THERING FAMLIST GLOBVAL');
444
445% set nanoscopium triplets upstream and downstream of SDL13
446THERING = setNanoscopium(THERING,ATIndexList);
447
448atsummary;
449
450if nargout
451    varargout{1} = THERING;
452end
453
454function THERING= setNanoscopium(THERING,ATIndexList)
455
456QP1N = -0.1061270E+01 ;
457QP2N =  0.1761332E+01 ;
458QP3N = -0.1221521E+01 ;
459THERING = setquad(THERING, ATIndexList.Q1(6), QP1N);
460THERING = setquad(THERING, ATIndexList.Q1(7), QP1N);
461THERING = setquad(THERING, ATIndexList.Q2(6), QP2N);
462THERING = setquad(THERING, ATIndexList.Q2(7), QP2N);
463THERING = setquad(THERING, ATIndexList.Q3(6), QP3N);
464THERING = setquad(THERING, ATIndexList.Q3(7), QP3N);
465
466function THERING = setquad(THERING, Idx, K)
467
468THERING{Idx}.K = K;
469THERING{Idx}.PolynomB(2) = K;
470fprintf('%s %03d %+f %+f\n', THERING{Idx}.FamName, Idx, THERING{Idx}.K, THERING{Idx}.PolynomB(2));
471
Note: See TracBrowser for help on using the repository browser.