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