diff --git a/py/orbit/matrix_lattice/MATRIX_Lattice.py b/py/orbit/matrix_lattice/MATRIX_Lattice.py index 22380391..afbadd2b 100644 --- a/py/orbit/matrix_lattice/MATRIX_Lattice.py +++ b/py/orbit/matrix_lattice/MATRIX_Lattice.py @@ -248,6 +248,8 @@ def trackTwissData(self, alpha, beta, direction="x"): alpha_0 = track_v.get(0) beta_0 = track_v.get(1) delta_phi = math.atan(mt.get(ind0, ind1) / (beta_0 * mt.get(ind0, ind0) - alpha_0 * mt.get(ind0, ind1))) + if delta_phi < 0: + delta_phi += math.pi phi = phi + delta_phi track_v = track_m.mult(track_v) position = position + matrixNode.getLength()