1 removed + 19 modified, total 20 files
hps-java/src/main/java/org/lcsim/hps/monitoring/svt
diff -u -r1.16 -r1.17
--- TrackingReconstructionPlots.java 14 Oct 2013 22:03:09 -0000 1.16
+++ TrackingReconstructionPlots.java 14 Oct 2013 22:58:03 -0000 1.17
@@ -728,7 +728,7 @@
HelixConverter converter = new HelixConverter(0);
StraightLineTrack slt = converter.Convert(ht);
- Hep3Vector posAtEcal = SvtTrackExtrapolator.getTrackPositionAtEcal(trk);
+ Hep3Vector posAtEcal = TrackUtils.getTrackPositionAtEcal(trk);
aida.histogram1D("X (mm) @ Z=-60cm").fill(slt.getYZAtX(BeamlineConstants.HARP_POSITION)[0]); //this is y in the tracker frame
aida.histogram1D("Y (mm) @ Z=-60cm").fill(slt.getYZAtX(BeamlineConstants.HARP_POSITION)[1]); //this is z in the tracker frame
@@ -868,7 +868,7 @@
// if (clust != null) {
if (clust != null) {
- posAtEcal = SvtTrackExtrapolator.extrapolateTrack(trk,clust.getPosition()[2]);//.positionAtEcal();
+ posAtEcal = TrackUtils.extrapolateTrack(trk,clust.getPosition()[2]);//.positionAtEcal();
aida.histogram2D("Energy Vs Momentum").fill(clust.getEnergy(), trk.getPX() * 1000.0);
aida.histogram1D("Energy Over Momentum").fill(clust.getEnergy() / (trk.getPX() * 1000.0));
hps-java/src/main/java/org/lcsim/hps/recon/particle
diff -u -r1.7 -r1.8
--- ReconParticleDriver.java 14 Oct 2013 22:03:09 -0000 1.7
+++ ReconParticleDriver.java 14 Oct 2013 22:58:03 -0000 1.8
@@ -4,11 +4,13 @@
import java.util.ArrayList;
import java.util.List;
+
//--- hep ---//
import hep.physics.vec.BasicHep3Vector;
import hep.physics.vec.Hep3Vector;
import hep.physics.vec.VecOp;
+
//--- lcsim ---//
import org.lcsim.event.EventHeader;
import org.lcsim.event.ReconstructedParticle;
@@ -19,7 +21,7 @@
//--- hps-java ---//
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
+import org.lcsim.hps.recon.tracking.TrackUtils;
/**
* Driver that matches SVT Tracks and Ecal Clusters and creates
@@ -27,7 +29,7 @@
*
* @author Mathew Graham <[log in to unmask]>
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: ReconParticleDriver.java,v 1.7 2013/10/14 22:03:09 phansson Exp $
+ * @version $Id: ReconParticleDriver.java,v 1.8 2013/10/14 22:58:03 phansson Exp $
*/
public abstract class ReconParticleDriver extends Driver {
@@ -191,7 +193,7 @@
// Extrapolate the track to the Ecal cluster shower max
- Hep3Vector trkPosAtShowerMax = SvtTrackExtrapolator.extrapolateTrack(track,clusterPos.z());
+ Hep3Vector trkPosAtShowerMax = TrackUtils.extrapolateTrack(track,clusterPos.z());
// Check if any of the extrapolated values are invalid.
// TODO: There are some track whose extrapolated coordinates
// are NaN. The problem seems to be that the y-coordinate
@@ -238,7 +240,7 @@
this.printDebug("Ecal cluster position: " + ecalClusterPos.toString());
// Get the position of the track at the Ecal cluster shower max
- Hep3Vector trkPosAtShowerMax = SvtTrackExtrapolator.extrapolateTrack(matchedTrack,ecalClusterPos.z());
+ Hep3Vector trkPosAtShowerMax = TrackUtils.extrapolateTrack(matchedTrack,ecalClusterPos.z());
this.printDebug("Track position at shower max: " + trkPosAtShowerMax.toString());
// Get the distance between the track and the cluster position
hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -u -r1.10 -r1.11
--- DataTrackerFakeHitDriver.java 12 Jul 2013 22:53:18 -0000 1.10
+++ DataTrackerFakeHitDriver.java 14 Oct 2013 22:58:03 -0000 1.11
@@ -43,10 +43,8 @@
public class DataTrackerFakeHitDriver extends Driver {
private boolean debug = false;
- TrackUtils trackUtils = new TrackUtils();
TrackerHitUtils trackerhitutils = new TrackerHitUtils();
Hep3Matrix detToTrk;
- SvtTrackExtrapolator extrapolator = new SvtTrackExtrapolator();
Hep3Vector _bfield;
TrackerHitType trackerType = new TrackerHitType(TrackerHitType.CoordinateSystem.GLOBAL, TrackerHitType.MeasurementType.STRIP_1D);
CoordinateSystem coordinate_system = trackerType.getCoordinateSystem();
@@ -229,7 +227,6 @@
}
- extrapolator.setTrack(helix.parameters());
int n_hits_top = 0;
int n_hits_bot = 0;
hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -u -r1.6 -r1.7
--- EcalTrackMatch.java 14 Oct 2013 22:03:09 -0000 1.6
+++ EcalTrackMatch.java 14 Oct 2013 22:58:03 -0000 1.7
@@ -52,7 +52,7 @@
}
public double dist(Track track, int dir) {
- Hep3Vector trk_pos = SvtTrackExtrapolator.getTrackPositionAtEcal(track);
+ Hep3Vector trk_pos = TrackUtils.getTrackPositionAtEcal(track);
double dx;
if (dir == 0) {
dx = cluster.getPosition()[0] - trk_pos.x();
@@ -66,7 +66,7 @@
}
public double dR(Track track) {
- Hep3Vector trk_pos = SvtTrackExtrapolator.getTrackPositionAtEcal(track);
+ Hep3Vector trk_pos = TrackUtils.getTrackPositionAtEcal(track);
double dx = dX(track);
double dy = dY(track);
double dr = Math.sqrt(dx * dx + dy * dy);
hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -u -r1.28 -r1.29
--- TrackUtils.java 14 Oct 2013 22:03:09 -0000 1.28
+++ TrackUtils.java 14 Oct 2013 22:58:03 -0000 1.29
@@ -36,51 +36,22 @@
import org.lcsim.recon.tracking.seedtracker.SeedTrack;
/**
+ * Assorted helper functions for the track and helix objects in lcsim.
+ * Re-use as much of HelixUtils as possible.
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: TrackUtils.java,v 1.28 2013/10/14 22:03:09 phansson Exp $
- * TODO: Switch to JLab coordinates
+ * @version $Id: TrackUtils.java,v 1.29 2013/10/14 22:58:03 phansson Exp $
+ * TODO: Switch to tracking/LCsim coordinates for the extrapolation output!
*/
public class TrackUtils {
- protected boolean _debug = false;
- protected boolean isTrackSet = false;
- protected double[] trackParameters = null;
-
-
/**
- *
- */
- public TrackUtils(){
- isTrackSet = false;
- }
-
- /**
- *
- */
- public void setDebug(boolean debug){
- this._debug = debug;
- }
-
- /**
- *
+ * Private constructor to make class static only
*/
- public void setTrack(double[] pars){
- trackParameters = pars;
- isTrackSet = true;
+ private TrackUtils(){
}
- /**
- *
- */
- public void setTrack(Track track){
- this.setTrack(track.getTrackParameters());
- }
-
-
-
-
public static Hep3Vector extrapolateHelixToXPlane(Track track, double x){
return extrapolateHelixToXPlane(getHTF(track),x);
}
@@ -168,7 +139,58 @@
- /**
+ public static Hep3Vector getTrackPositionAtHarp(Track track){
+ return extrapolateTrack(track, BeamlineConstants.HARP_POSITION);
+ }
+
+ public static Hep3Vector getTrackPositionAtEcal(Track track){
+ return extrapolateTrack(track, BeamlineConstants.ECAL_FACE);
+ }
+
+ public static Hep3Vector extrapolateTrack(Track track, double z){
+
+ Hep3Vector trackPosition = null;
+ double dz = 0;
+ if(z >= BeamlineConstants.DIPOLE_EDGE){
+ trackPosition = extrapolateHelixToXPlane(track, BeamlineConstants.DIPOLE_EDGE);
+ dz = z - BeamlineConstants.DIPOLE_EDGE;
+ } else if(z <= BeamlineConstants.DIPOLE_EDGELOW){
+ trackPosition = extrapolateHelixToXPlane(track, BeamlineConstants.DIPOLE_EDGELOW);
+ dz = z - trackPosition.x();
+ } else {
+ Hep3Vector detVecTracking = extrapolateHelixToXPlane(track,z);
+ //System.out.printf("detVec %s\n", detVecTracking.toString());
+ return new BasicHep3Vector(detVecTracking.y(),detVecTracking.z(),detVecTracking.x());
+ }
+
+ // Get the track azimuthal angle
+ double phi = getPhi(track, trackPosition);
+
+ // Find the distance to the point of interest
+ double r = dz/(getSinTheta(track)*Math.cos(phi));
+ double dx = r*getSinTheta(track)*Math.sin(phi);
+ double dy = r*getCosTheta(track);
+
+ // Find the track position at the point of interest
+ double x = trackPosition.y() + dx;
+ double y = trackPosition.z() + dy;
+
+ return new BasicHep3Vector(x, y, z);
+ }
+
+ public static Hep3Vector extrapolateTrack(HelicalTrackFit helix, double z){
+ SeedTrack trk = new SeedTrack();
+ //bfield = Math.abs((detector.getFieldMap().getField(new BasicHep3Vector(0, 0, 0)).y()));
+ double bfield = 0.;
+ // Here we aren't really using anything related to momentum so B-field is not important
+ trk.setTrackParameters(helix.parameters(), bfield); // Sets first TrackState.
+ trk.setCovarianceMatrix(helix.covariance()); // Modifies first TrackState.
+ trk.setChisq(helix.chisqtot());
+ trk.setNDF(helix.ndf()[0]+helix.ndf()[1]);
+ return TrackUtils.extrapolateTrack(trk,z);
+ }
+
+ /**
* @param helix input helix object
* @param origin of the plane to intercept
* @param normal of the plane to intercept
@@ -229,6 +251,10 @@
double z = z0 + s_at_x * slope;
BasicHep3Vector pos = new BasicHep3Vector(x,y,z);
//System.out.printf("pos %s xc %f phi_at_x %f dphi_at_x %f s_at_x %f\n", pos.toString(),xc,phi_at_x,dphi_at_x,s_at_x);
+ Hep3Vector posXCheck =TrackUtils.extrapolateHelixToXPlane(helix, x);
+ if(VecOp.sub(pos,posXCheck).magnitude()>0.0000001) {
+ throw new RuntimeException(String.format("ERROR the helix propagation equations do not agree? (%f,%f,%f) vs (%f,%f,%f) in HelixUtils",pos.x(),pos.y(),pos.z(),posXCheck.x(),posXCheck.y(),posXCheck.z()));
+ }
return pos;
}
@@ -337,7 +363,6 @@
//System.out.printf("x %f s %f smap %f\n",hth.x(),s,s_wrong);
if(Double.isNaN(s)) {
double xc=track.xc();
- double yc=track.yc();
double RC = track.R();
System.out.printf("calculateTrackHitResidual: s is NaN. p=%.3f RC=%.3f, x=%.3f, xc=%.3f\n",track.p(-0.491),RC,hth.x(),xc);
}
hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -N SvtTrackExtrapolator.java
--- SvtTrackExtrapolator.java 14 Oct 2013 22:03:09 -0000 1.11
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,82 +0,0 @@
-package org.lcsim.hps.recon.tracking;
-
-//--- org.lcsim ---//
-import hep.physics.vec.BasicHep3Vector;
-import hep.physics.vec.Hep3Vector;
-
-import org.lcsim.event.Track;
-import org.lcsim.fit.helicaltrack.HelicalTrackFit;
-import org.lcsim.hps.event.BeamlineConstants;
-import org.lcsim.recon.tracking.seedtracker.SeedTrack;
-
-public class SvtTrackExtrapolator extends TrackUtils {
-
- /**
- *
- */
- public SvtTrackExtrapolator(){
- }
-
- /**
- *
- */
- public SvtTrackExtrapolator(double[] pars){
- setTrack(pars);
- }
-
-
- /**
- *
- */
- public static Hep3Vector getTrackPositionAtEcal(Track track){
- return extrapolateTrack(track, BeamlineConstants.ECAL_FACE);
- }
-
- public static Hep3Vector getTrackPositionAtHarp(Track track){
- return extrapolateTrack(track, BeamlineConstants.HARP_POSITION);
- }
-
-
- public static Hep3Vector extrapolateTrack(HelicalTrackFit helix, double z){
- SeedTrack trk = new SeedTrack();
- //bfield = Math.abs((detector.getFieldMap().getField(new BasicHep3Vector(0, 0, 0)).y()));
- double bfield = 0.;
- // Here we aren't really using anything related to momentum so B-field is not important
- trk.setTrackParameters(helix.parameters(), bfield); // Sets first TrackState.
- trk.setCovarianceMatrix(helix.covariance()); // Modifies first TrackState.
- trk.setChisq(helix.chisqtot());
- trk.setNDF(helix.ndf()[0]+helix.ndf()[1]);
- return extrapolateTrack(trk,z);
- }
-
- public static Hep3Vector extrapolateTrack(Track track, double z){
-
- Hep3Vector trackPosition = null;
- double dz = 0;
- if(z >= BeamlineConstants.DIPOLE_EDGE){
- trackPosition = extrapolateHelixToXPlane(track, BeamlineConstants.DIPOLE_EDGE);
- dz = z - BeamlineConstants.DIPOLE_EDGE;
- } else if(z <= BeamlineConstants.DIPOLE_EDGELOW){
- trackPosition = extrapolateHelixToXPlane(track, BeamlineConstants.DIPOLE_EDGELOW);
- dz = z - trackPosition.x();
- } else {
- Hep3Vector detVecTracking = extrapolateHelixToXPlane(track,z);
- //System.out.printf("detVec %s\n", detVecTracking.toString());
- return new BasicHep3Vector(detVecTracking.y(),detVecTracking.z(),detVecTracking.x());
- }
-
- // Get the track azimuthal angle
- double phi = getPhi(track, trackPosition);
-
- // Find the distance to the point of interest
- double r = dz/(getSinTheta(track)*Math.cos(phi));
- double dx = r*getSinTheta(track)*Math.sin(phi);
- double dy = r*getCosTheta(track);
-
- // Find the track position at the point of interest
- double x = trackPosition.y() + dx;
- double y = trackPosition.z() + dy;
-
- return new BasicHep3Vector(x, y, z);
- }
-}
hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl
diff -u -r1.7 -r1.8
--- TruthResiduals.java 14 Oct 2013 22:03:09 -0000 1.7
+++ TruthResiduals.java 14 Oct 2013 22:58:03 -0000 1.8
@@ -22,7 +22,6 @@
import org.lcsim.event.SimTrackerHit;
import org.lcsim.fit.helicaltrack.HelicalTrackFit;
import org.lcsim.hps.event.HPSTransformations;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
import org.lcsim.hps.recon.tracking.TrackUtils;
import org.lcsim.util.aida.AIDA;
@@ -137,7 +136,7 @@
//HelicalTrackFit htfTruth = TrackUtils.getHTF(mcp, -1*this._B.z());
HelicalTrackFit htfTruth = TrackUtils.getHTF(mcp, -1*this._B.z());
- Hep3Vector trkposExtraPolator = SvtTrackExtrapolator.extrapolateTrack(htfTruth,simHitPosTracking.x());
+ Hep3Vector trkposExtraPolator = TrackUtils.extrapolateTrack(htfTruth,simHitPosTracking.x());
//System.out.printf("trkposextrapol (det) %s\n",trkposExtraPolator.toString());
trkposExtraPolator = this._hpstrans.transformVectorToTracking(trkposExtraPolator);
@@ -176,7 +175,7 @@
double xpos = mcp.getOriginZ();
while(xpos< 100.) {
xpos += dx;
- trkposExtraPolator = this._hpstrans.transformVectorToTracking(SvtTrackExtrapolator.extrapolateTrack(htfTruth,xpos));
+ trkposExtraPolator = this._hpstrans.transformVectorToTracking(TrackUtils.extrapolateTrack(htfTruth,xpos));
double ypos = trkposExtraPolator.y();
trkpos_y_vs_x.fill(xpos,ypos);
}
hps-java/src/main/java/org/lcsim/hps/recon/vertexing
diff -u -r1.6 -r1.7
--- TwoTrackVertexer.java 14 Oct 2013 22:03:09 -0000 1.6
+++ TwoTrackVertexer.java 14 Oct 2013 22:58:03 -0000 1.7
@@ -7,7 +7,6 @@
import hep.physics.matrix.SymmetricMatrix;
import hep.physics.vec.BasicHep3Vector;
import hep.physics.vec.Hep3Vector;
-import hep.physics.vec.SpacePoint;
import hep.physics.vec.VecOp;
import org.lcsim.event.Track;
@@ -16,23 +15,17 @@
import org.lcsim.fit.helicaltrack.HelicalTrackFit;
import org.lcsim.fit.helicaltrack.HelixUtils;
import org.lcsim.hps.event.BeamlineConstants;
-import org.lcsim.hps.event.HPSTransformations;
import org.lcsim.hps.recon.tracking.HPSTrack;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
-import org.lcsim.recon.tracking.seedtracker.SeedCandidate;
+import org.lcsim.hps.recon.tracking.TrackUtils;
import org.lcsim.recon.tracking.seedtracker.SeedTrack;
-import org.lcsim.spacegeom.SpaceVector;
import org.lcsim.util.swim.Helix;
-import org.lcsim.util.swim.Trajectory;
/**
*
* @author phansson
*/
public class TwoTrackVertexer extends TwoLineVertexer {
- private SvtTrackExtrapolator trackExtraPolator = new SvtTrackExtrapolator();
private HelixConverter converter = new HelixConverter(0.);
- private HPSTransformations detToTrk = new HPSTransformations();
private Track trk1=null;
private Track trk2=null;
@@ -48,17 +41,13 @@
if(this.trk1==null || this.trk2==null) return false;
else return true;
}
-
- public SvtTrackExtrapolator extrapolator() {
- return trackExtraPolator;
- }
-
+
public HelixConverter converter() {
return this.converter;
}
private Hep3Vector getPosition(Track trk, double zposition) {
- return SvtTrackExtrapolator.extrapolateTrack(trk, zposition);
+ return TrackUtils.extrapolateTrack(trk, zposition);
}
@Override
hps-java/src/main/java/org/lcsim/hps/users/mgraham
diff -u -r1.6 -r1.7
--- TrackExtrapolationAnalysis.java 14 Oct 2013 22:03:09 -0000 1.6
+++ TrackExtrapolationAnalysis.java 14 Oct 2013 22:58:03 -0000 1.7
@@ -19,7 +19,7 @@
import org.lcsim.hps.monitoring.AIDAFrame;
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
import org.lcsim.hps.recon.tracking.HPSTrack;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
+import org.lcsim.hps.recon.tracking.TrackUtils;
import org.lcsim.hps.recon.vertexing.HelixConverter;
import org.lcsim.hps.recon.vertexing.StraightLineTrack;
import org.lcsim.recon.tracking.seedtracker.SeedCandidate;
@@ -89,12 +89,8 @@
HelixConverter converter = new HelixConverter(0);
StraightLineTrack slt = converter.Convert(ht);
- //ExtendTrack extend = new ExtendTrack();
- SvtTrackExtrapolator extend = new SvtTrackExtrapolator();
- extend.setTrack(stEle);
- //Hep3Vector posAtEcal = extend.positionAtEcal();
- Hep3Vector posAtEcal = SvtTrackExtrapolator.getTrackPositionAtEcal(trk);
- Hep3Vector extendAtConverter = SvtTrackExtrapolator.extrapolateTrack(trk,BeamlineConstants.HARP_POSITION);
+ Hep3Vector posAtEcal = TrackUtils.getTrackPositionAtEcal(trk);
+ Hep3Vector extendAtConverter = TrackUtils.extrapolateTrack(trk,BeamlineConstants.HARP_POSITION);
int isTop = -1;
@@ -151,7 +147,7 @@
double zCluster=clust.getPosition()[2];
// double zCluster=1450.0;
Hep3Vector posAtEcalHPS = hpstrk.getPositionAtZMap(750,zCluster, 5.0)[0];
- Hep3Vector posAtEcalExtend= SvtTrackExtrapolator.extrapolateTrack(trk,zCluster);
+ Hep3Vector posAtEcalExtend= TrackUtils.extrapolateTrack(trk,zCluster);
aida.histogram2D("ECal Extrapolation X : HPS vs Extend").fill( posAtEcalExtend.y(),posAtEcalHPS.x()-posAtEcalExtend.y());
aida.histogram2D("ECal Extrapolation Y : HPS vs Extend").fill( posAtEcalExtend.z(),posAtEcalHPS.y()-posAtEcalExtend.z());
double dX = posAtEcalHPS.x() - clust.getPosition()[0];
hps-java/src/main/java/org/lcsim/hps/users/omoreno
diff -u -r1.2 -r1.3
--- ReconstructedParticleChecker.java 14 Oct 2013 22:03:10 -0000 1.2
+++ ReconstructedParticleChecker.java 14 Oct 2013 22:58:03 -0000 1.3
@@ -4,6 +4,7 @@
import java.util.ArrayList;
import java.util.List;
+
//--- hep ---//
import hep.aida.IHistogram1D;
import hep.aida.IPlotter;
@@ -11,6 +12,7 @@
import hep.physics.vec.Hep3Vector;
import hep.physics.vec.VecOp;
+
//--- lcsim ---//
import org.lcsim.event.EventHeader;
import org.lcsim.event.ReconstructedParticle;
@@ -21,12 +23,12 @@
import org.lcsim.geometry.Detector;
//--- hps-java ---//
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
+import org.lcsim.hps.recon.tracking.TrackUtils;
/**
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: ReconstructedParticleChecker.java,v 1.2 2013/10/14 22:03:10 phansson Exp $
+ * @version $Id: ReconstructedParticleChecker.java,v 1.3 2013/10/14 22:58:03 phansson Exp $
*
*/
public class ReconstructedParticleChecker extends Driver {
@@ -105,7 +107,7 @@
}
Hep3Vector ecalPosition = new BasicHep3Vector(ecalClusters.get(0).getPosition());
- Hep3Vector trackPositionAtEcal = SvtTrackExtrapolator.extrapolateTrack(tracks.get(0),ecalPosition.z());
+ Hep3Vector trackPositionAtEcal = TrackUtils.extrapolateTrack(tracks.get(0),ecalPosition.z());
xPositionResidual.fill(trackPositionAtEcal.x() - ecalPosition.x());
yPositionResidual.fill(trackPositionAtEcal.y() - ecalPosition.y());
zPositionResidual.fill(trackPositionAtEcal.z() - ecalPosition.z());
hps-java/src/main/java/org/lcsim/hps/users/omoreno
diff -u -r1.5 -r1.6
--- SvtHitEfficiency.java 14 Oct 2013 22:03:10 -0000 1.5
+++ SvtHitEfficiency.java 14 Oct 2013 22:58:03 -0000 1.6
@@ -16,6 +16,7 @@
import java.util.List;
import java.util.Map;
+
//--- lcsim ---//
import org.lcsim.util.Driver;
import org.lcsim.util.aida.AIDA;
@@ -31,12 +32,10 @@
import org.lcsim.fit.helicaltrack.HelicalTrackHit;
import org.lcsim.geometry.Detector;
import org.lcsim.detector.tracker.silicon.ChargeCarrier;
-
import org.lcsim.hps.recon.tracking.HPSSVTCalibrationConstants;
//--- hps-java ---//
import org.lcsim.hps.recon.tracking.SvtUtils;
import org.lcsim.hps.recon.tracking.TrackUtils;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
import org.lcsim.hps.recon.tracking.TrackerHitUtils;
import org.lcsim.hps.monitoring.AIDAFrame;
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
@@ -397,8 +396,8 @@
Hep3Vector frontSensorPos = sensors.get(0).getGeometry().getPosition();
Hep3Vector rearSensorPos = sensors.get(1).getGeometry().getPosition();
- this.frontTrackPos = SvtTrackExtrapolator.extrapolateTrack(track,frontSensorPos.z());
- this.rearTrackPos = SvtTrackExtrapolator.extrapolateTrack(track,rearSensorPos.z());
+ this.frontTrackPos = TrackUtils.extrapolateTrack(track,frontSensorPos.z());
+ this.rearTrackPos = TrackUtils.extrapolateTrack(track,rearSensorPos.z());
if(this.sensorContainsTrack(frontTrackPos, sensors.get(0)) && this.sensorContainsTrack(rearTrackPos, sensors.get(1))){
// if(this.sensorContainsTrack(trackPos, sensor))
hps-java/src/main/java/org/lcsim/hps/users/omoreno
diff -u -r1.6 -r1.7
--- SvtPerformance.java 24 May 2013 01:54:16 -0000 1.6
+++ SvtPerformance.java 14 Oct 2013 22:58:03 -0000 1.7
@@ -3,12 +3,9 @@
import hep.aida.IHistogram1D;
import hep.aida.IHistogram2D;
import hep.aida.IPlotter;
-import hep.physics.vec.Hep3Vector;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import java.util.Set;
import org.lcsim.detector.tracker.silicon.SiSensor;
@@ -17,20 +14,14 @@
import org.lcsim.event.Track;
import org.lcsim.event.TrackerHit;
import org.lcsim.fit.helicaltrack.HelicalTrackCross;
-import org.lcsim.fit.helicaltrack.HelicalTrackHit;
import org.lcsim.fit.helicaltrack.HelicalTrackStrip;
import org.lcsim.geometry.Detector;
-import org.lcsim.hps.monitoring.AIDAFrame;
-import org.lcsim.hps.recon.ecal.HPSEcalCluster;
import org.lcsim.hps.recon.tracking.HPSSVTCalibrationConstants;
import org.lcsim.hps.recon.tracking.HPSSVTCalibrationConstants.ChannelConstants;
import org.lcsim.hps.recon.tracking.HPSShapeFitParameters;
import org.lcsim.hps.recon.tracking.HPSShaperAnalyticFitAlgorithm;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
import org.lcsim.hps.recon.tracking.SvtUtils;
import org.lcsim.hps.recon.tracking.TrackUtils;
-import org.lcsim.recon.tracking.digitization.sisim.SiTrackerHitStrip1D;
-import org.lcsim.recon.tracking.seedtracker.SeedTrack;
import org.lcsim.util.Driver;
import org.lcsim.util.aida.AIDA;
@@ -38,14 +29,12 @@
* Svt Performance Plots
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: SvtPerformance.java,v 1.6 2013/05/24 01:54:16 omoreno Exp $
+ * @version $Id: SvtPerformance.java,v 1.7 2013/10/14 22:58:03 phansson Exp $
*/
public class SvtPerformance extends Driver {
private AIDA aida;
private List<IPlotter> plotters = new ArrayList<IPlotter>();
- TrackUtils trkUtil = new TrackUtils();
- SvtTrackExtrapolator extrapolator = new SvtTrackExtrapolator();
HPSShaperAnalyticFitAlgorithm shaperFitter = new HPSShaperAnalyticFitAlgorithm();
String sensorName = null;
hps-java/src/main/java/org/lcsim/hps/users/omoreno
diff -u -r1.4 -r1.5
--- SvtTrackAnalysis.java 14 Oct 2013 22:03:10 -0000 1.4
+++ SvtTrackAnalysis.java 14 Oct 2013 22:58:03 -0000 1.5
@@ -7,6 +7,7 @@
import java.util.Map;
+
//--- org.lcsim ---//
import org.lcsim.event.EventHeader;
import org.lcsim.event.RawTrackerHit;
@@ -18,23 +19,24 @@
import org.lcsim.util.aida.AIDA;
+
//--- hep ---//
import hep.aida.IPlotter;
import hep.physics.vec.Hep3Vector;
+
//--- hps-java ---//
import org.lcsim.hps.monitoring.AIDAFrame;
import org.lcsim.hps.monitoring.Resettable;
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
import org.lcsim.hps.recon.tracking.HPSFittedRawTrackerHit;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
import org.lcsim.hps.recon.tracking.TrackUtils;
/**
*
* @author Omar Moreno
- * @version $Id: SvtTrackAnalysis.java,v 1.4 2013/10/14 22:03:10 phansson Exp $
+ * @version $Id: SvtTrackAnalysis.java,v 1.5 2013/10/14 22:58:03 phansson Exp $
*
*/
@@ -315,9 +317,9 @@
for(SeedTrack track : tracks){
ntracks++;
- Hep3Vector positionEcal = SvtTrackExtrapolator.getTrackPositionAtEcal(track);
+ Hep3Vector positionEcal = TrackUtils.getTrackPositionAtEcal(track);
System.out.println("Position at Ecal: " + positionEcal);
- Hep3Vector positionConverter = SvtTrackExtrapolator.extrapolateTrack(track,-700);
+ Hep3Vector positionConverter = TrackUtils.extrapolateTrack(track,-700);
aida.histogram2D("Track Position at Ecal").fill(positionEcal.y(), positionEcal.z());
aida.histogram2D("Track Position at Harp").fill(positionConverter.y(), positionConverter.z());
hps-java/src/main/java/org/lcsim/hps/users/omoreno
diff -u -r1.10 -r1.11
--- SvtTrackRecoEfficiency.java 6 Feb 2013 21:10:38 -0000 1.10
+++ SvtTrackRecoEfficiency.java 14 Oct 2013 22:58:03 -0000 1.11
@@ -52,7 +52,7 @@
/**
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: SvtTrackRecoEfficiency.java,v 1.10 2013/02/06 21:10:38 omoreno Exp $
+ * @version $Id: SvtTrackRecoEfficiency.java,v 1.11 2013/10/14 22:58:03 phansson Exp $
*/
public class SvtTrackRecoEfficiency extends Driver {
@@ -63,7 +63,6 @@
private Map<Integer, List<SimTrackerHit>> topSimTrackerHitsList = new HashMap<Integer, List<SimTrackerHit>>();
private Map<Integer, List<SimTrackerHit>> bottomSimTrackerHitsList = new HashMap<Integer, List<SimTrackerHit>>();
- TrackUtils trkUtils = new TrackUtils();
FindableTrack findable = null;
TrackAnalysis trkAnalysis = null;
RelationalTable<SimTrackerHit, MCParticle> simHitToMcParticle;
hps-java/src/main/java/org/lcsim/hps/users/omoreno
diff -u -r1.4 -r1.5
--- TestRunTrackReconEfficiency.java 14 Oct 2013 22:03:10 -0000 1.4
+++ TestRunTrackReconEfficiency.java 14 Oct 2013 22:58:04 -0000 1.5
@@ -4,6 +4,7 @@
import java.util.ArrayList;
import java.util.List;
+
//--- hep ---//
import hep.aida.IHistogram1D;
import hep.aida.IPlotter;
@@ -11,6 +12,7 @@
import hep.physics.vec.Hep3Vector;
import hep.physics.vec.VecOp;
+
//--- lcsim ---//
import org.lcsim.util.Driver;
import org.lcsim.util.aida.AIDA;
@@ -20,7 +22,6 @@
import org.lcsim.event.GenericObject;
//--- hps-java ---//
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
import org.lcsim.hps.recon.tracking.TrackUtils;
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
@@ -29,7 +30,7 @@
* method.
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: TestRunTrackReconEfficiency.java,v 1.4 2013/10/14 22:03:10 phansson Exp $
+ * @version $Id: TestRunTrackReconEfficiency.java,v 1.5 2013/10/14 22:58:04 phansson Exp $
*/
public class TestRunTrackReconEfficiency extends Driver {
@@ -340,7 +341,7 @@
Track matchedTrack = null;
for(Track track : tracks){
- Hep3Vector trkPosAtShowerMax = SvtTrackExtrapolator.extrapolateTrack(track,clusterPos.z());
+ Hep3Vector trkPosAtShowerMax = TrackUtils.extrapolateTrack(track,clusterPos.z());
if(Double.isNaN(trkPosAtShowerMax.x()) || Double.isNaN(trkPosAtShowerMax.y())){
this.printDebug("Invalid track position");
return false;
hps-java/src/main/java/org/lcsim/hps/users/phansson
diff -u -r1.1 -r1.2
--- CmpGenToFittedTracksDriver.java 17 Oct 2012 22:52:29 -0000 1.1
+++ CmpGenToFittedTracksDriver.java 14 Oct 2013 22:58:04 -0000 1.2
@@ -34,7 +34,6 @@
private String outputPlotFileName="";
private boolean hideFrame = false;
private boolean _debug = false;
- private TrackUtils _trackUtils = new TrackUtils();
private AIDAFrame plotterFrame;
ICloud1D _h_chi2;
hps-java/src/main/java/org/lcsim/hps/users/phansson
diff -u -r1.13 -r1.14
--- ECalGainDriver.java 14 Oct 2013 22:03:10 -0000 1.13
+++ ECalGainDriver.java 14 Oct 2013 22:58:04 -0000 1.14
@@ -1,17 +1,21 @@
package org.lcsim.hps.users.phansson;
import org.lcsim.hps.recon.ecal.*;
+
import hep.aida.*;
import hep.aida.ref.plotter.PlotterRegion;
+
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
+
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
+
import org.lcsim.event.CalorimeterHit;
import org.lcsim.event.EventHeader;
import org.lcsim.event.Track;
@@ -22,7 +26,7 @@
import org.lcsim.hps.monitoring.Resettable;
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
import org.lcsim.hps.recon.tracking.EcalTrackMatch;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
+import org.lcsim.hps.recon.tracking.TrackUtils;
import org.lcsim.util.Driver;
import org.lcsim.util.aida.AIDA;
@@ -272,7 +276,7 @@
BaseTrack trk = (BaseTrack) track;
trk.setTrackParameters(trk.getTrackStates().get(0).getParameters(), -0.491);
if (debug) {
- if (SvtTrackExtrapolator.getTrackPositionAtEcal(trk).y() > 0) {
+ if (TrackUtils.getTrackPositionAtEcal(trk).y() > 0) {
trTop++;
} else {
trBot++;
@@ -295,7 +299,7 @@
System.out.println(tracks.size() + " tracks in this event");
for (Track track : tracks) {
- System.out.println(SvtTrackExtrapolator.getTrackPositionAtEcal(track));
+ System.out.println(TrackUtils.getTrackPositionAtEcal(track));
}
}
@@ -329,7 +333,7 @@
if (debug) {
int[] pos = getCrystalPair(bestCl);
System.out.format("Matched cluster: [%f\t%f\t%f], ix = %d, iy = %d\n", bestCl.getPosition()[2], bestCl.getPosition()[0], bestCl.getPosition()[1], pos[0], pos[1]);
- System.out.println("Matched track: " + SvtTrackExtrapolator.getTrackPositionAtEcal(bestTrk));
+ System.out.println("Matched track: " + TrackUtils.getTrackPositionAtEcal(bestTrk));
System.out.println("Distance: " + minDist);
}
processMatchedPair(event, bestCl, bestTrk);
hps-java/src/main/java/org/lcsim/hps/users/phansson
diff -u -r1.9 -r1.10
--- MultScatAnalysis.java 14 Oct 2013 22:03:10 -0000 1.9
+++ MultScatAnalysis.java 14 Oct 2013 22:58:04 -0000 1.10
@@ -5,6 +5,7 @@
import hep.physics.vec.BasicHepLorentzVector;
import hep.physics.vec.Hep3Vector;
import hep.physics.vec.HepLorentzVector;
+
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashSet;
@@ -12,6 +13,7 @@
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
+
import org.lcsim.detector.identifier.*;
import org.lcsim.event.CalorimeterHit;
import org.lcsim.event.Cluster;
@@ -25,7 +27,7 @@
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
import org.lcsim.hps.recon.ecal.EcalConditions;
import org.lcsim.hps.recon.tracking.EcalTrackMatch;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
+import org.lcsim.hps.recon.tracking.TrackUtils;
import org.lcsim.util.Driver;
import org.lcsim.util.aida.AIDA;
import org.lcsim.recon.cluster.util.BasicCluster;
@@ -1453,7 +1455,7 @@
if(side==0) aida.histogram1D("Top track Chi2").fill(trk.getChi2());
else aida.histogram1D("Bottom track Chi2").fill(trk.getChi2());
- Hep3Vector posAtEcal = SvtTrackExtrapolator.getTrackPositionAtEcal(trk);
+ Hep3Vector posAtEcal = TrackUtils.getTrackPositionAtEcal(trk);
aida.histogram2D("Track Pz vs X").fill(posAtEcal.y(),trk.getPX()*1000);
@@ -1472,7 +1474,7 @@
}
- Hep3Vector posAtTarget = SvtTrackExtrapolator.extrapolateTrack(trk,-670.);
+ Hep3Vector posAtTarget = TrackUtils.extrapolateTrack(trk,-670.);
for(int imom=0;imom!=2;++imom) {
@@ -1483,10 +1485,10 @@
aida.histogram1D("Track " + str + "X @ -67cm").fill(posAtTarget.y());
aida.histogram1D("Track " + str + "Y @ -67cm").fill(posAtTarget.z());
- Hep3Vector extPosEntr = SvtTrackExtrapolator.extrapolateTrack(trk,-0.0001);
+ Hep3Vector extPosEntr = TrackUtils.extrapolateTrack(trk,-0.0001);
aida.histogram1D("Track " + str + "X @ 0cm").fill(extPosEntr.y());
aida.histogram1D("Track " + str + "Y @ 0cm").fill(extPosEntr.z());
- Hep3Vector extPosColl = SvtTrackExtrapolator.extrapolateTrack(trk,-1500.0);
+ Hep3Vector extPosColl = TrackUtils.extrapolateTrack(trk,-1500.0);
aida.histogram1D("Track " + str + "X @ -150cm").fill(extPosColl.y());
aida.histogram1D("Track " + str + "Y @ -150cm").fill(extPosColl.z());
//
@@ -1919,7 +1921,7 @@
- Hep3Vector posAtTarget = SvtTrackExtrapolator.extrapolateTrack(trkMatchTool.getMatchedTrack(),-670);
+ Hep3Vector posAtTarget = TrackUtils.extrapolateTrack(trkMatchTool.getMatchedTrack(),-670);
hps-java/src/main/java/org/lcsim/hps/users/phansson
diff -u -r1.10 -r1.11
--- ParticleHelixProducer.java 3 May 2013 23:18:56 -0000 1.10
+++ ParticleHelixProducer.java 14 Oct 2013 22:58:04 -0000 1.11
@@ -7,9 +7,11 @@
import hep.physics.vec.Hep3Matrix;
import hep.physics.vec.Hep3Vector;
import hep.physics.vec.VecOp;
+
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
+
import org.lcsim.constants.Constants;
import org.lcsim.event.EventHeader;
import org.lcsim.event.MCParticle;
@@ -20,8 +22,6 @@
import org.lcsim.geometry.Detector;
import org.lcsim.hps.analysis.ecal.HPSMCParticlePlotsDriver;
import org.lcsim.hps.recon.tracking.HPSTrack;
-import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
-import org.lcsim.hps.recon.tracking.TrackUtils;
import org.lcsim.hps.recon.tracking.TrackerHitUtils;
import org.lcsim.recon.tracking.digitization.sisim.TrackerHitType;
import org.lcsim.recon.tracking.digitization.sisim.TrackerHitType.CoordinateSystem;
@@ -42,10 +42,8 @@
private boolean noTopTracks = true;
private boolean noBottomTracks = false;
private int _totalTracks = 0;
- TrackUtils trackUtils = new TrackUtils();
TrackerHitUtils trackerhitutils = new TrackerHitUtils();
Hep3Matrix detToTrk;
- SvtTrackExtrapolator extrapolator = new SvtTrackExtrapolator();
Hep3Vector _bfield;
TrackerHitType trackerType = new TrackerHitType(TrackerHitType.CoordinateSystem.GLOBAL, TrackerHitType.MeasurementType.STRIP_1D);
CoordinateSystem coordinate_system = trackerType.getCoordinateSystem();
hps-java/src/main/java/org/lcsim/hps/users/phansson
diff -u -r1.23 -r1.24
--- TwoTrackAnlysis.java 14 Oct 2013 22:03:10 -0000 1.23
+++ TwoTrackAnlysis.java 14 Oct 2013 22:58:04 -0000 1.24
@@ -547,7 +547,7 @@
}
//Track at converter
- Hep3Vector posAtConverter = SvtTrackExtrapolator.extrapolateTrack(trk1,BeamlineConstants.HARP_POSITION);
+ Hep3Vector posAtConverter = TrackUtils.extrapolateTrack(trk1,BeamlineConstants.HARP_POSITION);
if(posAtConverter!=null) printWriter.format("%5.5f %5.5f ", posAtConverter.x(),posAtConverter.y()); //note rotation from JLab->tracking
else printWriter.format("%5.5f %5.5f ", -9999999.9,-9999999.9);
HPSTrack hpstrk1 = new HPSTrack(helix1);
@@ -555,14 +555,14 @@
if (posAtConverterFringe1!=null) printWriter.format("%5.5f %5.5f %5.5f ", posAtConverterFringe1.z(),posAtConverterFringe1.x(),posAtConverterFringe1.y()); //note rotation from JLab->tracking
else printWriter.format("%5.5f %5.5f %5.5f ", -9999999.9,-9999999.9,-9999999.9);
- Hep3Vector posAtNomTarget1 = SvtTrackExtrapolator.extrapolateTrack(trk1,0);
+ Hep3Vector posAtNomTarget1 = TrackUtils.extrapolateTrack(trk1,0);
if(posAtNomTarget1!=null) printWriter.format("%5.5f %5.5f ", posAtNomTarget1.x(),posAtNomTarget1.y()); //note rotation from JLab->tracking
else printWriter.format("%5.5f %5.5f ", -9999999.9,-9999999.9);
Hep3Vector posAtNomTargetFringe1 = hpstrk1.getPositionAtZMap(100., 0.0, 5.0)[0];
if (posAtNomTargetFringe1!=null) printWriter.format("%5.5f %5.5f %5.5f ", posAtNomTargetFringe1.z(),posAtNomTargetFringe1.x(),posAtNomTargetFringe1.y()); //note rotation from JLab->tracking
else printWriter.format("%5.5f %5.5f %5.5f ", -9999999.9,-9999999.9,-9999999.9);
- Hep3Vector posAtECal = SvtTrackExtrapolator.extrapolateTrack(trk1,BeamlineConstants.ECAL_FACE);
+ Hep3Vector posAtECal = TrackUtils.extrapolateTrack(trk1,BeamlineConstants.ECAL_FACE);
if(posAtECal!=null && !Double.isNaN(posAtECal.x()) && !Double.isNaN(posAtECal.y())) {
printWriter.format("%5.5f %5.5f ",posAtECal.x(),posAtECal.y()); //note rotation from JLab->tracking
}
@@ -1011,7 +1011,7 @@
if(useFringe) {
pos1 = hpstrk1.getPositionAtZMap(100.0, zVal, 5.0)[0];
} else {
- pos1 = SvtTrackExtrapolator.extrapolateTrack(trk1,zVal);
+ pos1 = TrackUtils.extrapolateTrack(trk1,zVal);
}
//System.out.printf("%s: Position1 at edge of fringe %s\n",this.getClass().getSimpleName(),pos1.toString());
Helix traj = (Helix)hpstrk1.getTrajectory();
CVSspam 0.2.12