Commit in hps-java/src/main/java/org/lcsim/hps/recon/tracking on MAIN
SvtTrackExtrapolator.java+11-41.1 -> 1.2
Added ability to get position within dipole.

hps-java/src/main/java/org/lcsim/hps/recon/tracking
SvtTrackExtrapolator.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- SvtTrackExtrapolator.java	12 May 2012 22:21:20 -0000	1.1
+++ SvtTrackExtrapolator.java	29 May 2012 17:44:29 -0000	1.2
@@ -11,7 +11,7 @@
 	SeedTrack track;
 	TrackUtils trackUtils;
 	
-	public static final double ECAL_FACE   = 1450;  // mm
+	public static final double ECAL_FACE   = 1600;  // mm
 	public static final double DIPOLE_EDGE = 914; // mm
 	
 	/**
@@ -45,8 +45,8 @@
 	
 		if(track == null) throw new RuntimeException("Track has not been set!");
 		
-		if(x > DIPOLE_EDGE){
-			double yDipole = trackUtils.getYOnHelixProjection(x);
+		if(x >= DIPOLE_EDGE){
+			double yDipole = trackUtils.getYOnHelixProjection(DIPOLE_EDGE);
 			double s = trackUtils.arcLength(DIPOLE_EDGE, yDipole);
 			double zDipole = trackUtils.getZ0() + s*trackUtils.getTanLambda();
 			double phi = trackUtils.getPhi0() - s/trackUtils.getR();
@@ -61,7 +61,14 @@
 			
 			return new BasicHep3Vector(x, y, z);
 			
-		} else if(x < 0){
+		} else if( x > 0 && x < DIPOLE_EDGE){
+
+			double y = trackUtils.getYOnHelixProjection(x);
+			double s = trackUtils.arcLength(x, y);
+			double z = trackUtils.getZ0() + s*trackUtils.getTanLambda();
+			return new BasicHep3Vector(x, y, z);
+		} else if(x <= 0){
+			
 			double dx = x - trackUtils.getX0();
 			double r = dx/(Math.cos(trackUtils.getPhi0())*(1/Math.sqrt(1 + Math.pow(trackUtils.getTanLambda(), 2))));
 			double dy = r*Math.sin(trackUtils.getPhi0())*(1/Math.sqrt(1 + Math.pow(trackUtils.getTanLambda(), 2)));
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