0001 function spear2
0002
0003
0004
0005
0006
0007
0008 global FAMLIST THERING GLOBVAL
0009
0010 GLOBVAL.E0 = 3e9;
0011 GLOBVAL.LatticeFile = 'spear2';
0012 FAMLIST = cell(0);
0013
0014 disp(' ');
0015 disp('** Loading SPEAR lattice in spear2.m **');
0016
0017
0018 AP = aperture('AP', [-0.05, 0.05, -0.05, 0.05],'AperturePass');
0019
0020 DR01 = drift('DR01' ,1.344800,'DriftPass');
0021 DR02 = drift('DR02' ,0.860000,'DriftPass');
0022 DR03 = drift('DR03' ,6.413180,'DriftPass');
0023 DR04 = drift('DR04' ,0.611890,'DriftPass');
0024 DR04A = drift('DR04A',0.617123,'DriftPass');
0025 DR05 = drift('DR05' ,2.823700,'DriftPass');
0026 DR06A = drift('DR06A',0.151205,'DriftPass');
0027 DR06B = drift('DR06B',0.229935,'DriftPass');
0028 DR07A = drift('DR07A',0.229948,'DriftPass');
0029 DR07B = drift('DR07B',0.151205,'DriftPass');
0030 DR08A = drift('DR08A',0.151205,'DriftPass');
0031 DR08B = drift('DR08B',0.227335,'DriftPass');
0032 DR09 = drift('DR09' ,2.981660,'DriftPass');
0033
0034
0035
0036
0037 Q3 = quadrupole('Q3' , 1.00000, 0.0000000,'QuadLinearPass');
0038 Q2 = quadrupole('Q2' , 1.34274, 0.0790090,'QuadLinearPass');
0039 Q1 = quadrupole('Q1' , 0.51834,-0.2595850,'QuadLinearPass');
0040 QFA = quadrupole('QFA' , 0.51834, 0.7931150,'QuadLinearPass');
0041 QDA = quadrupole('QDA' , 0.51834,-0.6546270,'QuadLinearPass');
0042 QFB = quadrupole('QFB' , 0.51834, 0.5169680,'QuadLinearPass');
0043 QF = quadrupole('QF' , 0.51834, 0.4498960277 ,'QuadLinearPass');
0044 QD = quadrupole('QD' , 0.51834,-0.669244391,'QuadLinearPass');
0045
0046
0047 SF = sextupole('SF' , 0.23335, 1.6768688886,'StrMPoleSymplectic4Pass');
0048 SDA = sextupole('SDA' , 0.23335,-1.29030148931,'StrMPoleSymplectic4Pass');
0049 SDB = sextupole('SDB' , 0.23335,-1.29030148931,'StrMPoleSymplectic4Pass');
0050
0051
0052 BBANGLE = pi/17;
0053
0054 BB = rbend('BB' ,2.35785400, ...
0055 BBANGLE, BBANGLE/2, BBANGLE/2, 0,'BendLinearPass');
0056
0057 B = rbend('B' ,1.17766900, ...
0058 BBANGLE/2, BBANGLE/4, BBANGLE/4, 0,'BendLinearPass');
0059
0060
0061
0062 SWSE =[ DR01 Q3 DR02 Q2 DR03 ...
0063 Q1 DR04 BB DR04A ...
0064 BB DR05 QFA DR06A ...
0065 SF DR06B B DR07A SDA DR07B QDA DR08A ...
0066 SDA DR08B BB DR08B SF DR08A QFB DR09 ...
0067 QF DR04 BB DR08B SDB DR08A ...
0068 QD DR08A SDB DR08B BB DR08B ...
0069 SF DR08A QF DR09 QF ...
0070 DR04 BB DR08B SDA DR08A QD ...
0071 DR08A SDA DR08B BB DR04 QF ...
0072 DR09 QF DR08A SF DR08B BB ...
0073 DR08B SDB DR08A QD DR08A SDB DR08B BB ...
0074 DR08B SF DR08A QF DR09 QF ...
0075 DR04 BB DR08B SDA DR08A QD ...
0076 DR08A SDA DR08B BB DR04 ...
0077 QF DR09 QF DR08A SF DR08B BB ...
0078 DR08B SDB DR08A QD DR08A SDB ...
0079 DR08B BB DR04 QF DR09 QFB DR08A ...
0080 SF DR08B BB DR08B SDA DR08A QDA ...
0081 DR07B SDA DR07A B DR06B ...
0082 SF DR06A QFA DR05 BB DR04A BB DR04 Q1 DR03...
0083 Q2 DR02 Q3 DR01 ];
0084
0085 NENW = [ DR01 Q3 DR02 Q2 DR03...
0086 Q1 DR04 BB DR04A ...
0087 BB DR05 QFA DR06A ...
0088 SF DR06B B DR07A SDA DR07B QDA DR08A ...
0089 SDA DR08B BB DR08B SF DR08A QFB DR09 ...
0090 QF DR04 BB DR08B SDB DR08A QD ...
0091 DR08A SDB DR08B BB DR08B ...
0092 SF DR08A QF DR09 QF ...
0093 DR04 BB DR08B SDA DR08A QD ...
0094 DR08A SDA DR08B BB DR04 QF ...
0095 DR09 QF DR08A SF DR08B BB ...
0096 DR08B SDB DR08A QD ...
0097 DR08A SDB DR08B BB ...
0098 DR08B SF DR08A QF DR09 QF ...
0099 DR04 BB DR08B SDA DR08A ...
0100 QD DR08A SDA DR08B BB DR04 ...
0101 QF DR09 QF DR08A SF DR08B BB ...
0102 DR08B SDB DR08A QD DR08A SDB ...
0103 DR08B BB DR04 QF DR09 QFB DR08A ...
0104 SF DR08B BB DR08B SDA DR08A QDA ...
0105 DR07B SDA DR07A B DR06B ...
0106 SF DR06A QFA DR05 BB DR04A BB DR04 Q1 DR03 ...
0107 Q2 DR02 Q3 DR01 ];
0108
0109
0110
0111 ELIST = [SWSE NENW AP];
0112
0113 ELIST = reverse(ELIST);
0114
0115 buildlat(ELIST);
0116
0117 evalin('caller','global THERING FAMLIST GLOBVAL');
0118 disp('** Done **');
0119
0120
0121
0122
0123
0124
0125
0126