1 added + 5 modified, total 6 files
hps-java/src/main/java/org/lcsim/hps/event
diff -N BeamlineConstants.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BeamlineConstants.java 11 Oct 2013 23:14:28 -0000 1.1
@@ -0,0 +1,12 @@
+package org.lcsim.hps.event;
+
+public final class BeamlineConstants {
+
+ private BeamlineConstants() {}
+
+ public static final double ECAL_FACE = 1524; // mm
+ public static final double DIPOLE_EDGE = 457.2 + 457.2; // 452.2 + 462.2; //914; // mm
+ public static final double DIPOLE_EDGELOW = 0.; //452.2 - 462.2; // mm
+ public static final double HARP_POSITION = -674.062; // mm
+
+}
hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -u -r1.9 -r1.10
--- SvtTrackExtrapolator.java 11 Oct 2013 22:18:52 -0000 1.9
+++ SvtTrackExtrapolator.java 11 Oct 2013 23:14:28 -0000 1.10
@@ -5,18 +5,10 @@
import hep.physics.vec.Hep3Vector;
import org.lcsim.event.Track;
-import org.lcsim.fit.helicaltrack.HelicalTrackFit;
+import org.lcsim.hps.event.BeamlineConstants;
-public class SvtTrackExtrapolator {
+public class SvtTrackExtrapolator extends TrackUtils {
- boolean isTrackSet = false;
- private TrackUtils trackUtils = new TrackUtils();
-
- public static final double ECAL_FACE = 1524; // mm
- public static final double DIPOLE_EDGE = 457.2 + 457.2; // 452.2 + 462.2; //914; // mm
- public static final double DIPOLE_EDGELOW = 0.; //452.2 - 462.2; // mm
- public static final double HARP_POSITION = -674.062; // mm
-
/**
*
*/
@@ -34,7 +26,7 @@
*
*/
public void setTrack(Track track){
- trackUtils.setTrack(track);
+ setTrack(track);
isTrackSet = true;
}
@@ -42,7 +34,7 @@
*
*/
public void setTrack(double[] pars){
- trackUtils.setTrack(pars);
+ setTrack(pars);
isTrackSet = true;
}
@@ -51,11 +43,11 @@
*
*/
public Hep3Vector getTrackPositionAtEcal(){
- return this.extrapolateTrack(ECAL_FACE);
+ return this.extrapolateTrack(BeamlineConstants.ECAL_FACE);
}
public Hep3Vector getTrackPositionAtHarp(){
- return this.extrapolateTrack(HARP_POSITION);
+ return this.extrapolateTrack(BeamlineConstants.HARP_POSITION);
}
@@ -68,27 +60,25 @@
Hep3Vector trackPosition = null;
double dz = 0;
- if(z >= DIPOLE_EDGE){
- trackPosition = trackUtils.extrapolateHelixToXPlane(DIPOLE_EDGE);
- dz = z - DIPOLE_EDGE;
- } else if(z <= DIPOLE_EDGELOW){
- trackPosition = trackUtils.extrapolateHelixToXPlane(DIPOLE_EDGELOW);
+ if(z >= BeamlineConstants.DIPOLE_EDGE){
+ trackPosition = extrapolateHelixToXPlane(BeamlineConstants.DIPOLE_EDGE);
+ dz = z - BeamlineConstants.DIPOLE_EDGE;
+ } else if(z <= BeamlineConstants.DIPOLE_EDGELOW){
+ trackPosition = extrapolateHelixToXPlane(BeamlineConstants.DIPOLE_EDGELOW);
dz = z - trackPosition.x();
} else {
- Hep3Vector detVecTracking = trackUtils.extrapolateHelixToXPlane(z);
+ Hep3Vector detVecTracking = extrapolateHelixToXPlane(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 = trackUtils.getPhi(trackPosition);
+ double phi = getPhi(trackPosition);
// Find the distance to the point of interest
- double sinTheta = trackUtils.getSinTheta();
- double cosTheta = trackUtils.getCosTheta();
- double r = dz/(sinTheta*Math.cos(phi));
- double dx = r*sinTheta*Math.sin(phi);
- double dy = r*cosTheta;
+ double r = dz/(getSinTheta()*Math.cos(phi));
+ double dx = r*getSinTheta()*Math.sin(phi);
+ double dy = r*getCosTheta();
// Find the track position at the point of interest
double x = trackPosition.y() + dx;
hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -u -r1.26 -r1.27
--- TrackUtils.java 11 Oct 2013 02:28:20 -0000 1.26
+++ TrackUtils.java 11 Oct 2013 23:14:28 -0000 1.27
@@ -24,6 +24,7 @@
import org.lcsim.event.Track;
import org.lcsim.event.TrackerHit;
import org.lcsim.fit.helicaltrack.*;
+import org.lcsim.hps.event.BeamlineConstants;
import org.lcsim.hps.event.HPSTransformations;
import org.lcsim.hps.users.phansson.WTrack;
import org.lcsim.recon.tracking.seedtracker.SeedCandidate;
@@ -32,15 +33,15 @@
/**
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: TrackUtils.java,v 1.26 2013/10/11 02:28:20 phansson Exp $
+ * @version $Id: TrackUtils.java,v 1.27 2013/10/11 23:14:28 phansson Exp $
* TODO: Switch to JLab coordinates
*/
public class TrackUtils {
- private boolean _debug = false;
- private boolean isTrackSet = false;
- private double[] trackParameters;
+ protected boolean _debug = false;
+ protected boolean isTrackSet = false;
+ protected double[] trackParameters;
/**
@@ -55,7 +56,7 @@
*/
public void setDebug(boolean debug){
this._debug = debug;
- }
+ }
/**
*
@@ -63,7 +64,7 @@
public void setTrack(double[] pars){
trackParameters = new double[9];
this.setTrackParameters(pars);
- isTrackSet = true;
+ isTrackSet = true;
}
/**
@@ -767,7 +768,7 @@
Hep3Vector org = hpstrans.transformVectorToTracking(mcp.getOrigin());
Hep3Vector p = hpstrans.transformVectorToTracking(mcp.getMomentum());
// Move to x=0 if needed
- double targetX = SvtTrackExtrapolator.DIPOLE_EDGELOW;
+ double targetX = BeamlineConstants.DIPOLE_EDGELOW;
if(org.x() < targetX) {
double dydx = p.y()/p.x();
double dzdx = p.z()/p.x();
@@ -776,7 +777,6 @@
double z = delta_x * dzdx + org.z();
double x = org.x() + delta_x;
if( Math.abs(x-targetX) > 1e-8) throw new RuntimeException("Error: origin is not zero!");
- Hep3Vector old = org;
org = new BasicHep3Vector(x,y,z);
//System.out.printf("org %s p %s -> org %s\n", old.toString(),p.toString(),org.toString());
}
hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl
diff -u -r1.13 -r1.14
--- GBLOutput.java 11 Oct 2013 22:18:52 -0000 1.13
+++ GBLOutput.java 11 Oct 2013 23:14:28 -0000 1.14
@@ -128,7 +128,7 @@
System.exit(1);
return;
} else {
- System.out.printf("%s: truth particle (pdgif %d ) found in event!\n",this.getClass().getSimpleName(),mcp.getPDGID());
+ if(_debug>0) System.out.printf("%s: truth particle (pdgif %d ) found in event!\n",this.getClass().getSimpleName(),mcp.getPDGID());
}
if(AprimeEvent ) {
@@ -407,7 +407,7 @@
MCParticle getMatchedTruthParticle(Track track) {
- boolean debug = true;
+ boolean debug = false;
Map<MCParticle,Integer> particlesOnTrack = new HashMap<MCParticle,Integer>();
hps-java/src/main/java/org/lcsim/hps/recon/vertexing
diff -u -r1.4 -r1.5
--- TwoTrackVertexer.java 12 Jun 2013 22:56:07 -0000 1.4
+++ TwoTrackVertexer.java 11 Oct 2013 23:14:28 -0000 1.5
@@ -9,11 +9,13 @@
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.BeamlineConstants;
import org.lcsim.hps.event.HPSTransformations;
import org.lcsim.hps.recon.tracking.HPSTrack;
import org.lcsim.hps.recon.tracking.SvtTrackExtrapolator;
@@ -64,9 +66,9 @@
public Hep3Vector getVertex() {
assert isValid();
Hep3Vector A1 = this.getPosition(trk1, 0);
- Hep3Vector A2 = this.getPosition(trk1, SvtTrackExtrapolator.HARP_POSITION);
+ Hep3Vector A2 = this.getPosition(trk1, BeamlineConstants.HARP_POSITION);
Hep3Vector B1 = this.getPosition(trk2, 0);
- Hep3Vector B2 = this.getPosition(trk2, SvtTrackExtrapolator.HARP_POSITION);
+ Hep3Vector B2 = this.getPosition(trk2, BeamlineConstants.HARP_POSITION);
return getVertexPosition(VecOp.mult(_detToTrk.getMatrix(), A1), VecOp.mult(_detToTrk.getMatrix(), A2), VecOp.mult(_detToTrk.getMatrix(), B1), VecOp.mult(_detToTrk.getMatrix(), B2));
}
@@ -80,8 +82,8 @@
HPSTrack hpstrk2 = new HPSTrack(htf2);
boolean debug = false;
- Hep3Vector posAtConv1 = hpstrk1.getPositionAtZMap(100.0, SvtTrackExtrapolator.HARP_POSITION, 5.0)[0];
- Hep3Vector posAtConv2 = hpstrk2.getPositionAtZMap(100.0, SvtTrackExtrapolator.HARP_POSITION, 5.0)[0];
+ Hep3Vector posAtConv1 = hpstrk1.getPositionAtZMap(100.0, BeamlineConstants.HARP_POSITION, 5.0)[0];
+ Hep3Vector posAtConv2 = hpstrk2.getPositionAtZMap(100.0, BeamlineConstants.HARP_POSITION, 5.0)[0];
StraightLineTrack slt1_conv = converter.Convert((Helix)hpstrk1.getTrajectory());
StraightLineTrack slt2_conv = converter.Convert((Helix)hpstrk2.getTrajectory());
@@ -89,11 +91,11 @@
Hep3Vector A1 = new BasicHep3Vector(slt1_conv.x0(),slt1_conv.y0(),slt1_conv.z0());
Hep3Vector B1 = new BasicHep3Vector(slt2_conv.x0(),slt2_conv.y0(),slt2_conv.z0());
- double YZAtConv1[] = slt1_conv.getYZAtX(SvtTrackExtrapolator.HARP_POSITION);
- double YZAtConv2[] = slt2_conv.getYZAtX(SvtTrackExtrapolator.HARP_POSITION);
+ double YZAtConv1[] = slt1_conv.getYZAtX(BeamlineConstants.HARP_POSITION);
+ double YZAtConv2[] = slt2_conv.getYZAtX(BeamlineConstants.HARP_POSITION);
- Hep3Vector A2 = new BasicHep3Vector(SvtTrackExtrapolator.HARP_POSITION,YZAtConv1[0],YZAtConv1[1]);
- Hep3Vector B2 = new BasicHep3Vector(SvtTrackExtrapolator.HARP_POSITION,YZAtConv2[0],YZAtConv2[1]);
+ Hep3Vector A2 = new BasicHep3Vector(BeamlineConstants.HARP_POSITION,YZAtConv1[0],YZAtConv1[1]);
+ Hep3Vector B2 = new BasicHep3Vector(BeamlineConstants.HARP_POSITION,YZAtConv2[0],YZAtConv2[1]);
hps-java/src/main/java/org/lcsim/hps/users/phansson
diff -u -r1.21 -r1.22
--- TwoTrackAnlysis.java 11 Oct 2013 22:18:52 -0000 1.21
+++ TwoTrackAnlysis.java 11 Oct 2013 23:14:28 -0000 1.22
@@ -7,6 +7,7 @@
import hep.physics.vec.BasicHep3Vector;
import hep.physics.vec.Hep3Vector;
import hep.physics.vec.SpacePoint;
+
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
@@ -14,6 +15,7 @@
import java.util.*;
import java.util.logging.Level;
import java.util.logging.Logger;
+
import org.lcsim.detector.IDetectorElement;
import org.lcsim.detector.tracker.silicon.DopedSilicon;
import org.lcsim.detector.tracker.silicon.SiSensor;
@@ -22,6 +24,7 @@
import org.lcsim.fit.helicaltrack.*;
import org.lcsim.geometry.Detector;
import org.lcsim.hps.analysis.ecal.HPSMCParticlePlotsDriver;
+import org.lcsim.hps.event.BeamlineConstants;
import org.lcsim.hps.evio.TriggerData;
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
import org.lcsim.hps.recon.tracking.*;
@@ -57,8 +60,7 @@
private String triggerDecisionCollectionName = "TriggerBank";
private String MCParticleCollectionName = "MCParticle";
private String _stripClusterCollectionName = "StripClusterer_SiTrackerHitStrip1D";
- private String _fittedRawTrackerHitCollectionName = "SVTFittedRawTrackerHits";
- private double targetPosition = SvtTrackExtrapolator.HARP_POSITION;
+ private double targetPosition = BeamlineConstants.HARP_POSITION;
private boolean _debug;
private HitIdentifier _ID = new HitIdentifier();
private TwoTrackVertexer vertexer = new TwoTrackVertexer();
@@ -546,11 +548,11 @@
//Track at converter
this.vertexer.extrapolator().setTrack(trk1);
- Hep3Vector posAtConverter = this.vertexer.extrapolator().extrapolateTrack(SvtTrackExtrapolator.HARP_POSITION);
+ Hep3Vector posAtConverter = this.vertexer.extrapolator().extrapolateTrack(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);
- Hep3Vector posAtConverterFringe1 = hpstrk1.getPositionAtZMap(100., SvtTrackExtrapolator.HARP_POSITION, 5.0)[0];
+ Hep3Vector posAtConverterFringe1 = hpstrk1.getPositionAtZMap(100., BeamlineConstants.HARP_POSITION, 5.0)[0];
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);
@@ -561,7 +563,7 @@
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 = this.vertexer.extrapolator().extrapolateTrack(SvtTrackExtrapolator.ECAL_FACE);
+ Hep3Vector posAtECal = this.vertexer.extrapolator().extrapolateTrack(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
}
CVSspam 0.2.12