cnuphys.lund
Interface ISwimmer

All Known Implementing Classes:
Swimmer

public interface ISwimmer


Method Summary
 boolean stopSwim(double t, double[] y)
          Given the current state of the integration, should we stop? This allows the integration to stop, for example, if some distance from the origin has been exceeded or if the independent variable passes some threshold.
 SwimTrajectory swim(LundId lundId, double xo, double yo, double zo, double momentum, double theta, double phi, double rmax, double pathmax)
          Swims a Lund particle
 

Method Detail

swim

SwimTrajectory swim(LundId lundId,
                    double xo,
                    double yo,
                    double zo,
                    double momentum,
                    double theta,
                    double phi,
                    double rmax,
                    double pathmax)
Swims a Lund particle

Parameters:
lundId - the particle to swim
xo - the x vertex position in cm
yo - the y vertex position in cm
zo - the z vertex position in cm
momentum - initial momentum in GeV/c
theta - initial polar angle in degrees
phi - initial azimuthal angle in degrees
rmax - max radial coordinate (then integration stops) in meters
pathmax - max pathlength (then integration stops) in meters
Returns:
the trajectory of the particle

stopSwim

boolean stopSwim(double t,
                 double[] y)
Given the current state of the integration, should we stop? This allows the integration to stop, for example, if some distance from the origin has been exceeded or if the independent variable passes some threshold. It won't be precise, because the check may not happen on every step, but it should be close.

Parameters:
t - the current value of the independent variable (typically time)
y - the current state vector (typically [x, y, z, vx, vy, vz])
Returns:
true if we should stop now.