Commit in hps-java/src/main/java/org/lcsim/hps/recon on MAIN
vertexing/StraightLineTrack.java+9-11.3 -> 1.4
         /TwoTrackVertexer.java+20-61.3 -> 1.4
         /TwoLineVertexer.java+1-11.2 -> 1.3
particle/TestRunReconParticleDriver.java+3-31.1 -> 1.2
+33-11
4 modified files
Added valid flag

hps-java/src/main/java/org/lcsim/hps/recon/vertexing
StraightLineTrack.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- StraightLineTrack.java	24 May 2012 14:33:59 -0000	1.3
+++ StraightLineTrack.java	12 Jun 2013 22:56:07 -0000	1.4
@@ -179,7 +179,15 @@
         return yzAtX;
     }
     
-        public double calculateXAtZEquals0() {       
+    public double calculateXAtZEquals0() {       
         return _x0-_z0/_dzdx;
     }
+    
+    public double[] calculateXYAtZ(double zVal) {       
+        double[] xyAtZ = {-99999,-99999};
+        xyAtZ[0] = (zVal-_z0)/(_dzdx)+_x0;
+        xyAtZ[1] = this.calculateYZAtX(xyAtZ[0])[0];
+        return xyAtZ;
+    }
+    
 }

hps-java/src/main/java/org/lcsim/hps/recon/vertexing
TwoTrackVertexer.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- TwoTrackVertexer.java	15 Apr 2013 07:09:11 -0000	1.3
+++ TwoTrackVertexer.java	12 Jun 2013 22:56:07 -0000	1.4
@@ -7,17 +7,21 @@
 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;
 import org.lcsim.event.Vertex;
 import org.lcsim.event.base.BaseVertex;
 import org.lcsim.fit.helicaltrack.HelicalTrackFit;
 import org.lcsim.fit.helicaltrack.HelixUtils;
+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.recon.tracking.seedtracker.SeedTrack;
+import org.lcsim.spacegeom.SpaceVector;
 import org.lcsim.util.swim.Helix;
+import org.lcsim.util.swim.Trajectory;
 
 /**
  *
@@ -26,8 +30,9 @@
 public class TwoTrackVertexer extends TwoLineVertexer {
     private SvtTrackExtrapolator trackExtraPolator = new SvtTrackExtrapolator();
     private HelixConverter converter = new HelixConverter(0.);
-    private Track trk1;
-    private Track trk2;
+    private HPSTransformations detToTrk = new HPSTransformations();
+    private Track trk1=null;
+    private Track trk2=null;
     
     public TwoTrackVertexer() {
     }
@@ -37,10 +42,19 @@
         this.trk2 = track2;
     }
     
+    public boolean isValid() {
+        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) {
         trackExtraPolator.setTrack(trk);
         return trackExtraPolator.extrapolateTrack(zposition);
@@ -48,6 +62,7 @@
 
     @Override
     public Hep3Vector getVertex() {
+        assert isValid();
         Hep3Vector A1 = this.getPosition(trk1, 0);
         Hep3Vector A2 = this.getPosition(trk1, SvtTrackExtrapolator.HARP_POSITION);
         Hep3Vector B1 = this.getPosition(trk2, 0);
@@ -56,6 +71,7 @@
     }
 
     public Hep3Vector getVertexWithFringe() {
+        assert isValid();
         SeedTrack s1 = (SeedTrack) trk1;
         HelicalTrackFit htf1 = s1.getSeedCandidate().getHelix();
         HPSTrack hpstrk1 = new HPSTrack(htf1);
@@ -133,10 +149,8 @@
     /**
      * 
      */
-    public Vertex fitVertex(Track track1, Track track2){
-    	
-    	// Set the tracks to be vertexed
-    	this.setTracks(track1, track2);
+    public Vertex fitVertex(){
+    	assert isValid();
     	
     	// Vertex the track and obtain the position
     	Hep3Vector vtxPosition = this.getVertexWithFringe(); 

hps-java/src/main/java/org/lcsim/hps/recon/vertexing
TwoLineVertexer.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- TwoLineVertexer.java	28 Feb 2013 00:00:33 -0000	1.2
+++ TwoLineVertexer.java	12 Jun 2013 22:56:07 -0000	1.3
@@ -42,7 +42,7 @@
         if(_debug) System.out.printf("%s: A0=%s B0=%s ==> vtxPos=%s (tmp=%s)\n", this.getClass().getSimpleName(), A0.toString(), B0.toString(), vertexPos.toString(), tmp.toString());
         return vertexPos;
     }
-
+    
     @Override
     public Hep3Vector getVertex() {
         throw new UnsupportedOperationException("Not supported yet.");

hps-java/src/main/java/org/lcsim/hps/recon/particle
TestRunReconParticleDriver.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- TestRunReconParticleDriver.java	15 Apr 2013 07:14:32 -0000	1.1
+++ TestRunReconParticleDriver.java	12 Jun 2013 22:56:07 -0000	1.2
@@ -15,7 +15,7 @@
 /**
  * 
  * @author Omar Moreno <[log in to unmask]>
- * @version $Id: TestRunReconParticleDriver.java,v 1.1 2013/04/15 07:14:32 omoreno Exp $
+ * @version $Id: TestRunReconParticleDriver.java,v 1.2 2013/06/12 22:56:07 phansson Exp $
  */
 public class TestRunReconParticleDriver extends ReconParticleDriver {
 
@@ -38,8 +38,8 @@
 				// Get the tracks associated with the electrons and positrons
 				Track electronTrack = electron.getTracks().get(0); 
 				Track positronTrack = positron.getTracks().get(0); 
-				
-				Vertex vertex = vtxFitter.fitVertex(electronTrack, positronTrack);
+				vtxFitter.setTracks(electronTrack, positronTrack);
+				Vertex vertex = vtxFitter.fitVertex();
 				
 				ReconstructedParticle candidate = new BaseReconstructedParticle(); 
 				((BaseReconstructedParticle) candidate).setStartVertex(vertex);
CVSspam 0.2.12


Use REPLY-ALL to reply to list

To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1