accelerator.py 文件源码

python
阅读 25 收藏 0 点赞 0 评论 0

项目:Differential-Algebra-Tracker 作者: OscarES 项目源码 文件源码
def __init__(self, name, K, L, spaceChargeOn, multipart, twiss, beamdata, nbrOfSplits):
        LinearElement.__init__(self, "quad " + name)
        #self.name = name
        self.K = K
        self.L = L
        gamma = gammaFromBeta(beamdata[0])
        self.M = self.createMatrixM(K, L, beamdata[0], gamma) # M should be a 6x6 matrix
        self.T = self.createMatrixT(self.M) # M should be a 9x9 matrix

        # disunite matrices
        self.n = nbrOfSplits
        self.Lsp = self.L/self.n
        self.Msp = self.createMatrixM(self.K, self.Lsp, beamdata[0], gamma)
        self.Tsp = self.createMatrixT(self.Msp)

        # space charge class
        self.spaceChargeOn = spaceChargeOn
        if self.spaceChargeOn == 1:
            #self.sc = SpaceCharge('quad_sc', self.Lsp, multipart, twiss, beamdata) # OLD
            self.sc = SpaceCharge('quad_sc', self.Lsp, beamdata) # NEW
        elif self.spaceChargeOn == 2:
            self.sc = SpaceChargeEllipticalIntegral('quad_sc', self.Lsp, beamdata)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号