The NewTrack class has some functionality that the GTrack class does not have (or at least may not have available in an easy-to-use way):
double charge(): returns the charge of the track.
double pT(): returns the pT of the track.
void momentum(...): returns the total momentum
and uncertainty on the total momentum.
int nstates(): returns # of states associated with the track.
void get_pca(...): returns the track PCA relative to some 3D point.
Takes into account the magnetic field within the
solenoid volume, and lack of magnetic field outside it.
double get_chi(...): returns the chi^2 of predicted track position
relative to some 3D point.
Takes into account the magnetic field within the
solenoid volume, and lack of magnetic field outside it.
int nprop2cyl(...): returns 3D point of track intersection with a cylinder
of radius R and half width zhalf.
Takes into account the magnetic field within the
solenoid volume, and lack of magnetic field outside it.
void find_MCpart(...): finds the MCparticle in the event that most closely
matches the track parameters of the NewTrack
void find_McTrack(..): finds the McTrack in the event that most closely
matches the track parameters of the NewTrack
compare2gtrack(...): does a chi^2 comparison of the track parameters of
and input GTrack to those of the NewTrack
void find_vertex(..): finds the 3D position of the intersection of two
tracks. Either does this by simply looking
for r/phi intersection, then getting chi^2
from z match of the tracks at that point, or it
can do a constrained fit for the vertex...whichever
the user wants.