Ejemplo n.º 1
0
    def single_manual(self, intercept, px, py, pz):
        pos = (0.0, intercept * 1.0e-3, 0.0) # unit [m] for helix object
        charge = -1.0 # unit [e]

        momentum = (px,py,pz) # unit [MeV/c]
        bfield = 2.5e-3 # 25 Gauss

        return HX.helix(pos,momentum,charge,bfield)
Ejemplo n.º 2
0
    def single_random_momentum_with_z(self, intercept=0.0, side=0):
        pos = (0.0, intercept * 1.0e-3, 0.0)  # unit [m] for helix object
        charge = -1.0  # unit [e]
        if side == 0:  # right tracker
            px = random.uniform(-1.4, -0.5)  # random momentum x, right
        else:
            px = random.uniform(0.5, 1.4)  # random momentum x, right

        py = random.uniform(-0.1, 0.1)  # random momentum y
        pz = random.uniform(-0.1, 0.1)  # try 3D

        momentum = (px, py, pz)  # unit [MeV/c]
        bfield = 2.5e-3  # 25 Gauss

        return HX.helix(pos, momentum, charge, bfield)