source: MML/trunk/machine/SOLEIL/StorageRing/Lattices/solamor2linb_Lmag_PB.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: 12.0 KB
Line 
1function solamor2linb
2%solamor2 - soleil lattice w/o ID
3% Lattice definition file
4% Lattice for SOLEIL: perfect lattice no magnetic errors
5% Compiled by Laurent Nadolski and Amor Nadji
6% 09/01/02, ALS
7% Controlroom : set linearpass for quad (closed orbit)
8%               No cavity; No Radiation PassMethod
9
10global FAMLIST THERING GLOBVAL
11
12GLOBVAL.E0 = 2.75e9; % Ring energy
13GLOBVAL.LatticeFile = mfilename;
14FAMLIST = cell(0);
15
16disp(['** Loading SOLEIL magnet lattice ', mfilename]);
17
18L0 = 354.0967211999983;      % design length [m]
19C0 = 2.99792458e8;           % speed of light [m/s]
20HarmNumber = 416;
21
22%% Cavity
23%              NAME   L     U[V]       f[Hz]          h        method
24CAV = rfcavity('RF' , 0 , 4.0e+6 , HarmNumber*C0/L0, ...
25    HarmNumber ,'CavityPass');
26
27%% Marker and apertures
28SECT1  =  marker('SECT1', 'IdentityPass');
29SECT2  =  marker('SECT2', 'IdentityPass');
30SECT3  =  marker('SECT3', 'IdentityPass');
31SECT4  =  marker('SECT4', 'IdentityPass');
32DEBUT  =  marker('DEBUT', 'IdentityPass');
33FIN    =  marker('FIN', 'IdentityPass');
34
35INJ = aperture('INJ',[-0.035 0.035 -0.0125 0.0125],'AperturePass');
36
37%% Injection section
38PtINJ = marker('PtINJ', 'IdentityPass');
39K3 = marker('K3', 'IdentityPass');
40K4 = marker('K4', 'IdentityPass');
41   
42%% BPM
43BPM    =  marker('BPM', 'IdentityPass');
44
45%% DRIFT SPACES
46dc=0.035/2;
47dl=0.030/2;
48SD13= drift('SD13', 3.48255-dc, 'DriftPass');
49SD1 = drift('SD1',  6.00000-dc, 'DriftPass');
50SD1a = drift('SD1a',  1.4125, 'DriftPass');
51SD1b = drift('SD1b',  0.7575, 'DriftPass');
52SD1c = drift('SD1c',  3.002, 'DriftPass');
53SD1d = drift('SD1d',  0.828, 'DriftPass');
54SD2 = drift('SD2',  0.39000-dc, 'DriftPass');
55SD3 = drift('SD3',  0.20000-dl, 'DriftPass');
56SD4 = drift('SD4',  0.39000-dl, 'DriftPass');
57SD14= drift('SD14', 0.59000-dl-dc, 'DriftPass');
58SD5 = drift('SD5',  0.20000-dc, 'DriftPass');
59SD6 = drift('SD6',  0.79000, 'DriftPass');
60SD7 = drift('SD7',  0.44000-dc, 'DriftPass');
61SD8 = drift('SD8',  0.20000-dc, 'DriftPass');
62SD9 = drift('SD9',  0.47634-dc, 'DriftPass');
63SD10= drift('SD10', 0.47000-dc, 'DriftPass');
64SD12= drift('SD12', 0.47000-dc, 'DriftPass');
65SDAC= drift('SDAC', 1.90468, 'DriftPass');
66
67%% QUADRUPOLES (compensation de l'effet des défauts de focalisation des
68%% dipoles P. Brunelle 02/05/06)
69Q1   =  quadrupole('Q1' , 0.32+2*dc,  -1.193917 , 'QuadLinearPass');
70Q2   =  quadrupole('Q2' , 0.46+2*dl,   1.712124 , 'QuadLinearPass');
71Q3   =  quadrupole('Q3' , 0.32+2*dc,  -0.7195554 , 'QuadLinearPass');
72Q4   =  quadrupole('Q4' , 0.32+2*dc,  -1.404293 , 'QuadLinearPass');
73Q5   =  quadrupole('Q5' , 0.32+2*dc,   1.895744 , 'QuadLinearPass');
74Q6   =  quadrupole('Q6' , 0.32+2*dc,  -1.117271 , 'QuadLinearPass');
75Q7   =  quadrupole('Q7' , 0.46+2*dl,   2.223070 , 'QuadLinearPass');
76Q8   =  quadrupole('Q8' , 0.32+2*dc,  -1.724227 , 'QuadLinearPass');
77Q9   =  quadrupole('Q9' , 0.32+2*dc,  -1.689030 , 'QuadLinearPass');
78Q10  =  quadrupole('Q10', 0.32+2*dc,   1.963458 , 'QuadLinearPass');
79
80
81%% SEXTUPOLES chromaticités nulles dans TracyII
82%avec défauts de focalisation des dipôles
83%P. Brunelle 02/05/06
84F = 1e8;
85Finv = 1/F;
86
87S1  =  sextupole('S1' , Finv,  1.71919*F, 'StrMPoleSymplectic4Pass');
88S2  =  sextupole('S2' , Finv, -4.10456*F, 'StrMPoleSymplectic4Pass');
89S3  =  sextupole('S3' , Finv, -2.16938*F, 'StrMPoleSymplectic4Pass');
90S4  =  sextupole('S4' , Finv,  3.60465*F, 'StrMPoleSymplectic4Pass');
91S5  =  sextupole('S5' , Finv, -3.69821*F, 'StrMPoleSymplectic4Pass');
92S6  =  sextupole('S6' , Finv,  3.24667*F, 'StrMPoleSymplectic4Pass');
93S7  =  sextupole('S7' , Finv, -5.00352*F, 'StrMPoleSymplectic4Pass');
94S8  =  sextupole('S8' , Finv,  4.19372*F, 'StrMPoleSymplectic4Pass');
95S9  =  sextupole('S9' , Finv, -3.152295*F, 'StrMPoleSymplectic4Pass');
96S10 =  sextupole('S10', Finv,  1.936432*F, 'StrMPoleSymplectic4Pass');
97
98%% QT (P. Brunelle 27/04/06)
99QT    =  marker('QT', 'IdentityPass');
100
101%% Slow feedback correctors
102% HCOR =  corrector('HCOR',0.0,[0 0],'CorrectorPass');
103% VCOR =  corrector('VCOR',0.0,[0 0],'CorrectorPass');
104% COR = [HCOR VCOR];
105COR =  corrector('COR',0.0,[0 0],'CorrectorPass');
106
107%% Fast feedback correctors
108% FHCOR =  corrector('FHCOR',0.0,[0 0],'CorrectorPass');
109% FVCOR =  corrector('FVCOR',0.0,[0 0],'CorrectorPass');
110% FCOR = [FHCOR,FVCOR];
111FCOR =  corrector('FCOR',0.0,[0 0],'CorrectorPass');
112
113
114SX1   = [S1  COR  QT];
115SX2   = [S2  COR  QT];
116SX3   = [S3  COR  QT];
117SX4   = [S4  COR  QT];
118SX5   = [S5  COR  QT];
119SX6   = [S6  COR  QT];
120SX7   = [S7  COR  QT];
121SX8   = [S8  COR  QT];
122SX9   = [S9  COR  QT];
123SX10  = [S10 COR  QT];
124
125%% DIPOLES
126 %BEND  =  rbend('BEND'  , 1.05243,  ...
127  % 0.19635, 0.098175, 0.098175, 0.0,'BendLinearPass');
128
129%% DIPOLES
130% {** 1.3815 factor to fit with BETA ??? strange **}
131%theta = 2*pi/32;
132%fullgap = 0.105*0.724*2/6*1.3815*0.;
133% BEND  =  rbend2('BEND', L, theta, theta/2, theta/2, 0.0, ...
134%                 fullgap,'BendLinearFringeTiltPass');
135theta = 2*pi/32;
136theta2 = 2*pi/32/2;
137thetae = 2*pi/32/2-0.6e-3*1;
138thetas = 2*pi/32/2+0.9e-3*1;
139K = 0.00204*1;
140fullgap = 0.037*0.724*2*1;
141BEND  =  rbend2('BEND', 1.05243, theta, thetae, thetas, K,fullgap,'BendLinearPass');
142
143
144%% Lattice
145% Superperiods
146
147SUP1  = [...
148    SD1a   PtINJ   SD1b    K3    SD1c   K4     SD1d         ...
149    BPM    FCOR    Q1     SD2    SX1   SD3     Q2  ...
150    BPM     SD14   Q3      SD5    SX2    SD6   BEND    SD7     Q4  ...
151    SD8     SX3    BPM     SD9    Q5     SD12  SX4     BPM  ...
152    SD10    Q5     SD9     BPM    SX3    SD8   Q4      SD7     BEND    SD7  ...
153    Q6      SD5    SX5     SD4    BPM    Q7    SD3     SX6          ...
154    SD2     Q8     FCOR    BPM    SD13   SD13  BPM     FCOR    ...
155    Q8      SD2    SX8     SD3    Q7     BPM   SD4     SX7          ...
156    SD5     Q6     SD7     BEND   SD7    Q9    SD8     SX9     BPM  ...
157    SD9     Q10    SD8     SX10   FCOR   BPM   SDAC    SDAC ...
158    BPM     FCOR   SX10    SD8    Q10    SD9   BPM     SX9  ...
159    SD8     Q9     SD7     BEND   SD7    Q6    SD5     SX7       ...
160    SD4     BPM    Q7      SD3    SX8    SD2   Q8      FCOR    BPM     ...
161    SD13    SD13   BPM     FCOR   Q8     SD2   SX8      ...
162    SD3     Q7     BPM     SD4    SX7    SD5   Q6      SD7     BEND...
163    SD7     Q9     SD8     SX9    BPM    SD9   Q10     SD8     SX10 ...
164    FCOR    BPM    SDAC    SDAC   BPM    FCOR    SX10    ...
165    SD8     Q10    SD9     BPM    SX9    SD8   Q9      SD7  ...
166    BEND    SD7    Q6      SD5    SX7    SD4   BPM     Q7      SD3  ...
167    SX8     SD2    Q8      FCOR   BPM    SD13  SD13    BPM ...
168    FCOR     Q8     SD2     SX6    SD3    Q7    BPM     SD4  ...
169    SX5     SD5    Q6      SD7    BEND   SD7   Q4      SD8     SX3  ...
170    BPM     SD9    Q5      SD10   BPM    SX4   SD12    Q5  ...
171    SD9     BPM    SX3     SD8    Q4     SD7   BEND    SD6     SX2         ...
172    SD5     Q3     SD14    BPM    Q2     SD3   SX1     SD2     Q1  ...
173    FCOR    BPM     SD1  ];
174
175SUP2  = [  ...
176    SD1     BPM    FCOR    Q1     SD2    SX1   SD3     Q2  ...
177    BPM     SD14   Q3      SD5    SX2    SD6   BEND    SD7     Q4  ...
178    SD8     SX3    BPM     SD9    Q5     SD12  SX4     BPM  ...
179    SD10    Q5     SD9     BPM    SX3    SD8   Q4      SD7     BEND    SD7  ...
180    Q6      SD5    SX5     SD4    BPM    Q7    SD3     SX6          ...
181    SD2     Q8     FCOR    BPM    SD13   SD13  BPM     FCOR    ...
182    Q8      SD2    SX8     SD3    Q7     BPM   SD4     SX7          ...
183    SD5     Q6     SD7     BEND   SD7    Q9    SD8     SX9     BPM  ...
184    SD9     Q10    SD8     SX10   FCOR   BPM   SDAC    SDAC ...
185    BPM     FCOR   SX10    SD8    Q10    SD9   BPM     SX9  ...
186    SD8     Q9     SD7     BEND   SD7    Q6    SD5     SX7       ...
187    SD4     BPM    Q7      SD3    SX8    SD2   Q8      FCOR    BPM     ...
188    SD13    SD13   BPM     FCOR   Q8     SD2   SX8      ...
189    SD3     Q7     BPM     SD4    SX7    SD5   Q6      SD7     BEND...
190    SD7     Q9     SD8     SX9    BPM    SD9   Q10     SD8     SX10 ...
191    FCOR    BPM    SDAC    SDAC   BPM    FCOR    SX10    ...
192    SD8     Q10    SD9     BPM    SX9    SD8   Q9      SD7  ...
193    BEND    SD7    Q6      SD5    SX7    SD4   BPM     Q7      SD3  ...
194    SX8     SD2    Q8      FCOR   BPM    SD13  SD13    BPM ...
195    FCOR     Q8     SD2     SX6    SD3    Q7    BPM     SD4  ...
196    SX5     SD5    Q6      SD7    BEND   SD7   Q4      SD8     SX3  ...
197    BPM     SD9    Q5      SD10   BPM    SX4   SD12    Q5  ...
198    SD9     BPM    SX3     SD8    Q4     SD7   BEND    SD6     SX2         ...
199    SD5     Q3     SD14    BPM    Q2     SD3   SX1     SD2     Q1  ...
200    FCOR    BPM     SD1  ];
201
202SUP3  = [  ...
203    SD1     BPM    FCOR    Q1     SD2    SX1   SD3     Q2  ...
204    BPM     SD14   Q3      SD5    SX2    SD6   BEND    SD7     Q4  ...
205    SD8     SX3    BPM     SD9    Q5     SD12  SX4     BPM  ...
206    SD10    Q5     SD9     BPM    SX3    SD8   Q4      SD7     BEND    SD7  ...
207    Q6      SD5    SX5     SD4    BPM    Q7    SD3     SX6          ...
208    SD2     Q8     FCOR    BPM    SD13   SD13  BPM     FCOR    ...
209    Q8      SD2    SX8     SD3    Q7     BPM   SD4     SX7          ...
210    SD5     Q6     SD7     BEND   SD7    Q9    SD8     SX9     BPM  ...
211    SD9     Q10    SD8     SX10   FCOR   BPM   SDAC    SDAC ...
212    BPM     FCOR   SX10    SD8    Q10    SD9   BPM     SX9  ...
213    SD8     Q9     SD7     BEND   SD7    Q6    SD5     SX7       ...
214    SD4     BPM    Q7      SD3    SX8    SD2   Q8      FCOR    BPM     ...
215    SD13    SD13   BPM     FCOR   Q8     SD2   SX8      ...
216    SD3     Q7     BPM     SD4    SX7    SD5   Q6      SD7     BEND...
217    SD7     Q9     SD8     SX9    BPM    SD9   Q10     SD8     SX10 ...
218    FCOR    BPM    SDAC    SDAC   BPM    FCOR    SX10    ...
219    SD8     Q10    SD9     BPM    SX9    SD8   Q9      SD7  ...
220    BEND    SD7    Q6      SD5    SX7    SD4   BPM     Q7      SD3  ...
221    SX8     SD2    Q8      FCOR   BPM    SD13  SD13    BPM ...
222    FCOR     Q8     SD2     SX6    SD3    Q7    BPM     SD4  ...
223    SX5     SD5    Q6      SD7    BEND   SD7   Q4      SD8     SX3  ...
224    BPM     SD9    Q5      SD10   BPM    SX4   SD12    Q5  ...
225    SD9     BPM    SX3     SD8    Q4     SD7   BEND    SD6     SX2         ...
226    SD5     Q3     SD14    BPM    Q2     SD3   SX1     SD2     Q1  ...
227    FCOR    BPM     SD1  ];
228
229SUP4  = [  ...
230    SD1     BPM    FCOR    Q1     SD2    SX1   SD3     Q2  ...
231    BPM     SD14   Q3      SD5    SX2    SD6   BEND    SD7     Q4  ...
232    SD8     SX3    BPM     SD9    Q5     SD12  SX4     BPM  ...
233    SD10    Q5     SD9     BPM    SX3    SD8   Q4      SD7     BEND    SD7  ...
234    Q6      SD5    SX5     SD4    BPM    Q7    SD3     SX6          ...
235    SD2     Q8     FCOR    BPM    SD13   SD13  BPM     FCOR    ...
236    Q8      SD2    SX8     SD3    Q7     BPM   SD4     SX7          ...
237    SD5     Q6     SD7     BEND   SD7    Q9    SD8     SX9     BPM  ...
238    SD9     Q10    SD8     SX10   FCOR   BPM   SDAC    SDAC ...
239    BPM     FCOR   SX10    SD8    Q10    SD9   BPM     SX9  ...
240    SD8     Q9     SD7     BEND   SD7    Q6    SD5     SX7       ...
241    SD4     BPM    Q7      SD3    SX8    SD2   Q8      FCOR    BPM     ...
242    SD13    SD13   BPM     FCOR   Q8     SD2   SX8      ...
243    SD3     Q7     BPM     SD4    SX7    SD5   Q6      SD7     BEND...
244    SD7     Q9     SD8     SX9    BPM    SD9   Q10     SD8     SX10 ...
245    FCOR    BPM    SDAC    SDAC   BPM    FCOR    SX10    ...
246    SD8     Q10    SD9     BPM    SX9    SD8   Q9      SD7  ...
247    BEND    SD7    Q6      SD5    SX7    SD4   BPM     Q7      SD3  ...
248    SX8     SD2    Q8      FCOR   BPM    SD13  SD13    BPM ...
249    FCOR     Q8     SD2     SX6    SD3    Q7    BPM     SD4  ...
250    SX5     SD5    Q6      SD7    BEND   SD7   Q4      SD8     SX3  ...
251    BPM     SD9    Q5      SD10   BPM    SX4   SD12    Q5  ...
252    SD9     BPM    SX3     SD8    Q4     SD7   BEND    SD6     SX2         ...
253    SD5     Q3     SD14    BPM    Q2     SD3   SX1     SD2     Q1  ...
254    FCOR    BPM     SD1  ];
255
256
257ELIST = [DEBUT INJ SECT1 SUP1 SECT2 SUP2 SECT3 SUP3 SECT4 SUP4 CAV FIN];
258%ELIST = [DEBUT INJ SECT1 SUP1 SECT2 SUP2 SECT3 SUP3 SECT4 SUP4 FIN];
259
260buildlat(ELIST);
261
262% Set all magnets to same energy
263THERING = setcellstruct(THERING,'Energy',1:length(THERING),GLOBVAL.E0);
264
265evalin('caller','global THERING FAMLIST GLOBVAL');
266
267atsummary;
268
269if nargout
270    varargout{1} = THERING;
271end
Note: See TracBrowser for help on using the repository browser.