This commit is contained in:
2025-08-14 08:00:58 +02:00
2 changed files with 42 additions and 25 deletions

View File

@@ -1596,10 +1596,15 @@ class SwissFEL:
if self.alt == 2:
SY01 = LineContainer('SY01', 0)
SY01.append(Alignment({'dy': 0.01, 'Tag': 'ALIG', 'index': 1}))
SY01.append(TM.generate('QFM-veryshort', 10), 4, 'relative')
SY01.append(TM.generate('QFM-veryshort', 20), 4, 'relative')
SY01.append(TM.generate('QFM-veryshort', 30), 2.5, 'relative')
SY01.append(TM.generate('QFM-veryshort', 40), 2.5, 'relative')
SY01.append(TM.generate('QFM-veryshort', 10), 4, 'relative') # before BPM, after, Sex, Qsk, cor
SY01.append(TM.generate('QFM-veryshort', 20), 4, 'relative') # before BPM, after cor
SY01.append(TM.generate('QFM-veryshort', 30), 2.5, 'relative') # before BPM, after Sex,Qsk,cor
SY01.append(TM.generate('QFM-veryshort', 40), 2.5, 'relative') # before BPM, magnet is QFD.
# saftety copy
# SY01.append(TM.generate('QFM-veryshort', 10), 4, 'relative') # before BPM, after, Sex, Qsk, cor
# SY01.append(TM.generate('QFM-veryshort', 20), 4, 'relative') # before BPM, after cor
# SY01.append(TM.generate('QFM-veryshort', 30), 2.5, 'relative') # before BPM, after Sex,Qsk,cor
# SY01.append(TM.generate('QFM-veryshort', 40), 2.5, 'relative') # before BPM, magnet is QFD.
SY01.append(TM.generate('AFBC3-noCor', 100, {'angle': -2, 'design_angle': -2, 'e1': 1, 'e2': 0., 'BC': 'Switch Yard 1'}), 0.3,'relative')
SY02 = LineContainer('SY02', 0)
SY02.append(TM.generate('QFM-veryshort', 10), 0.3, 'relative')
@@ -1619,15 +1624,16 @@ class SwissFEL:
SY03.append(TM.generate('QFM-veryshort', 220), 2, 'relative')
SY03.append(TM.generate('QFM-veryshort', 230), 2, 'relative')
BC01 = LineContainer('BC01',0)
BC01 = LineContainer('BC01',0.2)
angAT=0.0087
BC01.append(TM.generate('AFBC3-noCor', 100,{'angle': 0, 'design_angle': 0, 'e1': 1, 'e2': 0., 'BC': 'Switch Yard 3'}), 0.5,'relative')
BC01.append(TM.generate('AFBC3-noCor', 200,{'angle': 0, 'design_angle': 0, 'e1': 0, 'e2': 1., 'BC': 'Switch Yard 3'}), 6,'relative')
BC01.append(TM.generate('AFBC3-noCor', 300,{'angle': 0, 'design_angle': 0, 'e1': 1, 'e2': 0., 'BC': 'Switch Yard 3'}), 0.5,'relative')
BC01.append(TM.generate('AFBC3-noCor', 400,{'angle': 0, 'design_angle': 0, 'e1': 0, 'e2': 1., 'BC': 'Switch Yard 3'}), 6,'relative')
BC01.append(TM.generate('QFM-veryshort', 410), 0.5, 'relative')
BC01.append(TM.generate('QFM-veryshort', 420), 2+0.5, 'relative')
BC01.append(TM.generate('QFM-veryshort', 430), 2+0.58699+4.5895e-3, 'relative')
BC01.append(TM.generate('QFM-veryshort', 410), 0.1, 'relative')
BC01.append(TM.generate('QFM-veryshort', 420), 1.8+0.5-0.6, 'relative')
BC01.append(TM.generate('QFM-veryshort', 430), 1.8 + 0.5-0.6, 'relative')
BC01.append(TM.generate('QFM-veryshort', 440), 1.8+0.58699+4.5895e-3-0.6, 'relative')
else:
ddx=0.7502
@@ -1747,23 +1753,34 @@ class SwissFEL:
# needs a wire scanner here
CB01=LineContainer('CB01',9.8)
CB02=LineContainer('CL02',9.8)
CB01.append(TM.generate('TW Cav C-Band',100),0.035,'relative')
CB01.append(TM.generate('TW Cav C-Band',200),0.049387,'relative')
CB01.append(TM.generate('DBPM-C16',220),0.080613,'relative')
CB01.append(TM.generate('QFD',230),0.049,'relative')
CB01.append(TM.generate('TW Cav C-Band',300),0.096075+0.137+0.019,'relative')
CB01.append(TM.generate('TW Cav C-Band',400),0.049387,'relative')
CB01.append(TM.generate('DBPM-C16',420),0.099538,'relative')
CB01.append(TM.generate('QFD',430),0.049,'relative')
CB02.append(TM.generate('COL-Dechirper-V',100,{'gap':2e-3}),0.5+0.528-0.003,'relative')
CB02.append(TM.generate('COL-Dechirper-H',200,{'gap':2e-3}),0.5-0.528+0.875+0.003,'relative')
CB02.append(TM.generate('DBPM-C16',220),0.080613+0.035+0.049387+0.085+1.015-0.875,'relative')
CB02.append(TM.generate('QFD',230),0.049,'relative')
CB02.append(TM.generate('COL-Dechirper-V',300,{'gap':2e-3}),0.5+0.74208,'relative')
CB02.append(TM.generate('COL-Dechirper-H',400,{'gap':2e-3}),0.5-0.74208+1.09208,'relative')
CB02.append(TM.generate('DBPM-C16',420),0.099538+1.40146-1.09208,'relative')
CB02.append(TM.generate('QFD',430),0.049,'relative')
CB01.append(TM.generate('TW Cav C-Band', 100), 0.035, 'relative')
CB01.append(TM.generate('TW Cav C-Band', 200), 0.049387, 'relative')
CB01.append(TM.generate('DBPM-C16', 220), 0.080613, 'relative')
CB01.append(TM.generate('QFD', 230), 0.049, 'relative')
CB01.append(TM.generate('TW Cav C-Band', 300), 0.096075 + 0.137 + 0.019, 'relative')
CB01.append(TM.generate('TW Cav C-Band', 400), 0.049387, 'relative')
CB01.append(TM.generate('DBPM-C16', 420), 0.099538, 'relative')
CB01.append(TM.generate('QFD', 430), 0.049, 'relative')
if self.alt < 2:
CB02=LineContainer('CL02',9.8)
CB02.append(TM.generate('COL-Dechirper-V',100,{'gap':2e-3}),0.5+0.528-0.003,'relative')
CB02.append(TM.generate('COL-Dechirper-H',200,{'gap':2e-3}),0.5-0.528+0.875+0.003,'relative')
CB02.append(TM.generate('DBPM-C16',220),0.080613+0.035+0.049387+0.085+1.015-0.875,'relative')
CB02.append(TM.generate('QFD',230),0.049,'relative')
CB02.append(TM.generate('COL-Dechirper-V',300,{'gap':2e-3}),0.5+0.74208,'relative')
CB02.append(TM.generate('COL-Dechirper-H',400,{'gap':2e-3}),0.5-0.74208+1.09208,'relative')
CB02.append(TM.generate('DBPM-C16',420),0.099538+1.40146-1.09208,'relative')
CB02.append(TM.generate('QFD',430),0.049,'relative')
else:
CB02 = LineContainer('CB02', 9.8)
CB02.append(TM.generate('TW Cav C-Band', 100), 0.035, 'relative')
CB02.append(TM.generate('TW Cav C-Band', 200), 0.049387, 'relative')
CB02.append(TM.generate('DBPM-C16', 220), 0.080613, 'relative')
CB02.append(TM.generate('QFD', 230), 0.049, 'relative')
CB02.append(TM.generate('TW Cav C-Band', 300), 0.096075 + 0.137 + 0.019, 'relative')
CB02.append(TM.generate('TW Cav C-Band', 400), 0.049387, 'relative')
CB02.append(TM.generate('DBPM-C16', 420), 0.099538, 'relative')
CB02.append(TM.generate('QFD', 430), 0.049, 'relative')
# here the missing part of the Athos comes only in the later phase (planned and final)