java.lang.Object
simpa.acc.api.track.BeamTracker
simpa.acc.api.track.RingBeamTracker
This class is for tracking a beam in a ring. It is a subclass of BeamTracker
The reason we need two classes is that the tracking in a ring is different
from the tracking in a line. In a ring for each particle we need to save the
phase space coordinates in a separate file. In a transfer line we save all
the phase space coordinates in one file for each observer position.
-
Constructor Summary
ConstructorsConstructorDescriptionRingBeamTracker
(Beam beam, int turns, double maxradius, double stepSize, int nThreads, boolean backward) RingBeamTracker
(Beam beam, int turns, double maxradius, double stepSize, int nThreads, boolean backward, List<Double> positions) -
Method Summary
Modifier and TypeMethodDescriptionvoid
finish()
This method is called when all particles has been tracked.int
Methods inherited from class simpa.acc.api.track.BeamTracker
track
-
Constructor Details
-
RingBeamTracker
public RingBeamTracker(Beam beam, int turns, double maxradius, double stepSize, int nThreads, boolean backward) throws IOException - Throws:
IOException
-
RingBeamTracker
public RingBeamTracker(Beam beam, int turns, double maxradius, double stepSize, int nThreads, boolean backward, List<Double> positions) throws IOException - Throws:
IOException
-
-
Method Details
-
getLossCount
public int getLossCount() -
finish
public void finish()Description copied from class:BeamTracker
This method is called when all particles has been tracked. It should write any observer data to file(s) which was stored during the tracking. This is typically the phase space and trajectory data.- Specified by:
finish
in classBeamTracker
-