Lattice 11.1.1 - corrected a position of a quadrupole in SARCL01. Also corrected some parsing errors with pandas
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled

This commit is contained in:
2026-04-17 13:47:14 +02:00
parent 261d536d94
commit 05e4c0ec51
2 changed files with 20 additions and 6 deletions
+8 -3
View File
@@ -41,15 +41,20 @@ class ComponentList:
data = pandas.read_excel(filecomp, sheet_name='New-Components')
self.comp.clear()
filter=data['TYPE'].isnull()
data['NAMES'].fillna('', inplace=True)
data['3DX_PART'].fillna('', inplace=True)
data.fillna({'Names':''}, inplace=True)
data.fillna({'3DX_PART':''}, inplace=True)
for i,val in enumerate(filter):
if not val:
key=data.iloc[i,1]
if key in self.comp.keys():
print('Duplicate definition of component type:',key)
dvaliloc = data.iloc[i, 5]
if isinstance(dvaliloc,float):
dvaliloc='%e' % float(dvaliloc)
else:
dvaliloc = str(data.iloc[i, 5])
self.comp[key]={'CAT':data.iloc[i,0],'CNAME':data.iloc[i,2],'3DX_PART':data.iloc[i,3],
'DESC':data.iloc[i,4],'NAMES':data.iloc[i,5].split(',')}
'DESC':data.iloc[i,4],'NAMES':dvaliloc.split(',')}
def find3DXType(self,part):
+12 -3
View File
@@ -337,9 +337,12 @@ import math
# 3) Add an additional QFM corrector
# 4) Add the Diagnostic test chambers in SARMA01 in phase planned.
# Layout 11.1.1
# Layout 11.1.0
# Move P3 arm to phase current
# Layout 11.1.1
# corrected position and type of first quad in SARCL01 (email S.Pfinninger 15.4.26)
class SwissFEL:
def __init__(self,alt=0):
self.alt=alt
@@ -1514,8 +1517,14 @@ class SwissFEL:
dx=8.435-1.3
CL01=LineContainer('CL01', 13.54)
CL01.append(TM.generate('DBPM-C16',10),0.03,'relative')
CL01.append(TM.generate('QFM-veryshort',20),0.049,'relative')
CL01.append(TM.generate('SFQFM',40),0.855+0.156,'relative')
if self.alt < 2:
CL01.append(TM.generate('QFD', 20), 0.049, 'relative')
CL01.append(TM.generate('COL-TR-16', 30), 0.019, 'relative')
CL01.append(TM.generate('SFQFM', 40), 0.855, 'relative')
else:
CL01.append(TM.generate('QFM-veryshort', 20), 0.049, 'relative')
CL01.append(TM.generate('SFQFM', 40), 0.855 + 0.156-0.05, 'relative')
# CL01.append(TM.generate('SFQFM',40),0.855+0.156,'relative')
CL01.append(TM.generate('QFM',50),0,'relative')
CL01.append(TM.generate('DBPM-C16',60),1.95,'relative')
CL01.append(TM.generate('SFQFM',70),0.0,'relative')