java/trunk/recon/src/main/java/org/hps/recon/particle
--- java/trunk/recon/src/main/java/org/hps/recon/particle/HpsReconParticleDriver.java 2014-04-30 20:56:21 UTC (rev 536)
+++ java/trunk/recon/src/main/java/org/hps/recon/particle/HpsReconParticleDriver.java 2014-05-01 08:36:27 UTC (rev 537)
@@ -1,24 +1,22 @@
package org.hps.recon.particle;
-//--- java ---//
import java.util.ArrayList;
import java.util.List;
import org.hps.recon.vertexing.BilliorTrack;
import org.hps.recon.vertexing.BilliorVertex;
import org.hps.recon.vertexing.BilliorVertexer;
-//--- lcsim ---//
-//--- hps-java ---//
+
import org.lcsim.event.ReconstructedParticle;
+import org.lcsim.event.Track;
import org.lcsim.event.base.BaseReconstructedParticle;
import org.lcsim.fit.helicaltrack.HelicalTrackFit;
-import org.lcsim.recon.tracking.seedtracker.SeedCandidate;
import org.lcsim.recon.tracking.seedtracker.SeedTrack;
/**
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: HpsReconParticleDriver.java,v 1.1 2013/04/15 07:14:32 omoreno Exp $
+ * @version $Id$
*/
public class HpsReconParticleDriver extends ReconParticleDriver {
@@ -27,65 +25,68 @@
@Override
protected void startOfData(){
- candidatesCollectionName = "AprimeUnconstrained";
- candidatesBeamConCollectionName = "AprimeBeamspotConstrained";
- candidatesTargetConCollectionName = "AprimeTargetConstrained";
+ unconstrainedV0CandidatesColName = "UnconstrainedV0Candidates";
+ beamConV0CandidatesColName = "BeamspotConstrainedV0Candidates";
+ targetV0ConCandidatesColName = "TargetConstrainedV0Candidates";
}
-
+
+ /**
+ *
+ */
@Override
void vertexParticles(List<ReconstructedParticle> electrons, List<ReconstructedParticle> positrons) {
- BilliorVertexer vtxFitter = new BilliorVertexer(bField);
- vtxFitter.doBeamSpotConstraint(false);
- vtxFitter.setBeamSize(beamsize);
+ BilliorVertexer unconstrainedVtxFitter = new BilliorVertexer(bField);
+ unconstrainedVtxFitter.doBeamSpotConstraint(false);
+ unconstrainedVtxFitter.setBeamSize(beamsize);
- BilliorVertexer vtxFitterCon = new BilliorVertexer(bField);
- vtxFitterCon.doBeamSpotConstraint(true);
- vtxFitterCon.setBeamSize(beamsize);
+ BilliorVertexer beamConVtxFitter = new BilliorVertexer(bField);
+ beamConVtxFitter.doBeamSpotConstraint(true);
+ beamConVtxFitter.setBeamSize(beamsize);
- BilliorVertexer vtxFitterTarget = new BilliorVertexer(bField);
- vtxFitterTarget.doTargetConstraint(true);
- vtxFitterCon.setBeamSize(beamsize);
+ BilliorVertexer targetConVtxFitter = new BilliorVertexer(bField);
+ targetConVtxFitter.doTargetConstraint(true);
+ targetConVtxFitter.setBeamSize(beamsize);
- // Loop through both electrons and positrons and try to vertex them
- ReconstructedParticle apCand = null;
+ ReconstructedParticle candidate = null;
+ // Loop through both electrons and positrons and try to find a common vertex
for(ReconstructedParticle positron : positrons){
for(ReconstructedParticle electron : electrons){
// Get the tracks associated with the electron and the positron
- SeedTrack electronTrack = (SeedTrack) electron.getTracks().get(0);
- SeedTrack positronTrack = (SeedTrack) positron.getTracks().get(0);
+ Track electronTrack = electron.getTracks().get(0);
+ Track positronTrack = positron.getTracks().get(0);
// Covert the tracks to BilliorTracks used by the vertexer
- BilliorTrack electronBTrack = this.getBilliorTrack(electronTrack);
- BilliorTrack positronBTrack = this.getBilliorTrack(positronTrack);
+ BilliorTrack electronBTrack = toBilliorTrack(electronTrack);
+ BilliorTrack positronBTrack = toBilliorTrack(positronTrack);
List<BilliorTrack> billiorTracks = new ArrayList<BilliorTrack>();
billiorTracks.add(electronBTrack);
billiorTracks.add(positronBTrack);
- BilliorVertex vtxFit = vtxFitter.fitVertex(billiorTracks);
- BilliorVertex vtxFitCon = vtxFitterCon.fitVertex(billiorTracks);
- BilliorVertex vtxFitTarget = vtxFitterTarget.fitVertex(billiorTracks);
+ BilliorVertex vtxFit = unconstrainedVtxFitter.fitVertex(billiorTracks);
+ BilliorVertex vtxFitCon = beamConVtxFitter.fitVertex(billiorTracks);
+ BilliorVertex vtxFitTarget = targetConVtxFitter.fitVertex(billiorTracks);
- apCand = new BaseReconstructedParticle();
- ((BaseReconstructedParticle) apCand).setStartVertex(vtxFit);
- apCand.addParticle(electron);
- apCand.addParticle(positron);
- candidates.add(apCand);
+ candidate = new BaseReconstructedParticle();
+ ((BaseReconstructedParticle) candidate).setStartVertex(vtxFit);
+ candidate.addParticle(electron);
+ candidate.addParticle(positron);
+ unconstrainedV0Candidates.add(candidate);
- apCand = new BaseReconstructedParticle();
- ((BaseReconstructedParticle) apCand).setStartVertex(vtxFitCon);
- apCand.addParticle(electron);
- apCand.addParticle(positron);
- candidatesBeamCon.add(apCand);
+ candidate = new BaseReconstructedParticle();
+ ((BaseReconstructedParticle) candidate).setStartVertex(vtxFitCon);
+ candidate.addParticle(electron);
+ candidate.addParticle(positron);
+ beamConV0Candidates.add(candidate);
- apCand = new BaseReconstructedParticle();
- ((BaseReconstructedParticle) apCand).setStartVertex(vtxFitTarget);
- apCand.addParticle(electron);
- apCand.addParticle(positron);
- candidatesTargetCon.add(apCand);
+ candidate = new BaseReconstructedParticle();
+ ((BaseReconstructedParticle) candidate).setStartVertex(vtxFitTarget);
+ candidate.addParticle(electron);
+ candidate.addParticle(positron);
+ targetConV0Candidates.add(candidate);
}
}
@@ -94,10 +95,9 @@
/**
*
*/
- private BilliorTrack getBilliorTrack(SeedTrack seedTrack) {
+ private BilliorTrack toBilliorTrack(Track track) {
- SeedCandidate seedCan = seedTrack.getSeedCandidate();
- HelicalTrackFit trackFit = seedCan.getHelix();
+ HelicalTrackFit trackFit = ((SeedTrack) track).getSeedCandidate().getHelix();
return new BilliorTrack(trackFit);
}
}
java/trunk/recon/src/main/java/org/hps/recon/particle
--- java/trunk/recon/src/main/java/org/hps/recon/particle/ReconParticleDriver.java 2014-04-30 20:56:21 UTC (rev 536)
+++ java/trunk/recon/src/main/java/org/hps/recon/particle/ReconParticleDriver.java 2014-05-01 08:36:27 UTC (rev 537)
@@ -34,9 +34,9 @@
// Reconstructed particle collections
List<ReconstructedParticle> finalStateParticles;
- List<ReconstructedParticle> candidates;
- List<ReconstructedParticle> candidatesBeamCon;
- List<ReconstructedParticle> candidatesTargetCon;
+ List<ReconstructedParticle> unconstrainedV0Candidates;
+ List<ReconstructedParticle> beamConV0Candidates;
+ List<ReconstructedParticle> targetConV0Candidates;
List<ReconstructedParticle> electrons;
List<ReconstructedParticle> positrons;
@@ -44,10 +44,10 @@
String ecalClustersCollectionName = "EcalClusters";
String tracksCollectionName = "MatchedTracks";
String finalStateParticlesColName = "FinalStateParticles";
- String candidatesCollectionName = null;
- String candidatesBeamConCollectionName = null;
- String candidatesTargetConCollectionName = null;
- String vertexCandidatesCollectionName = null;
+ String unconstrainedV0CandidatesColName = null;
+ String beamConV0CandidatesColName = null;
+ String targetV0ConCandidatesColName = null;
+ String vertexCandidatesColName = null;
String vertexBeamConsCandidatesName = null;
// The beamsize array is in the tracking frame
@@ -74,15 +74,7 @@
public void setMaxTrackClusterDistance(double maxTrackClusterDistance){
this.maxTrackClusterDistance = maxTrackClusterDistance;
}
-
- public void setEcalClusterCollectionName(String ecalClustersCollectionName) {
- this.ecalClustersCollectionName = ecalClustersCollectionName;
- }
-
- public void setTrackCollectoinName(String tracksCollectionName) {
- this.tracksCollectionName = tracksCollectionName;
- }
-
+
public void setBeamSigmaX(double sigma_x) {
beamsize[1] = sigma_x;
}
@@ -90,8 +82,15 @@
public void setBeamSigmaY(double sigma_y) {
beamsize[2] = sigma_y;
}
+
+ public void setEcalClusterCollectionName(String ecalClustersCollectionName) {
+ this.ecalClustersCollectionName = ecalClustersCollectionName;
+ }
+
+ public void setTrackCollectoinName(String tracksCollectionName) {
+ this.tracksCollectionName = tracksCollectionName;
+ }
-
@Override
protected void detectorChanged(Detector detector){
@@ -117,12 +116,12 @@
List<Track> tracks = event.get(Track.class, tracksCollectionName);
this.printDebug("Number of Tracks: " + tracks.size());
- finalStateParticles = new ArrayList<ReconstructedParticle>();
- electrons = new ArrayList<ReconstructedParticle>();
- positrons = new ArrayList<ReconstructedParticle>();
- candidates = new ArrayList<ReconstructedParticle>();
- candidatesBeamCon = new ArrayList<ReconstructedParticle>();
- candidatesTargetCon = new ArrayList<ReconstructedParticle>();
+ finalStateParticles = new ArrayList<ReconstructedParticle>();
+ electrons = new ArrayList<ReconstructedParticle>();
+ positrons = new ArrayList<ReconstructedParticle>();
+ unconstrainedV0Candidates = new ArrayList<ReconstructedParticle>();
+ beamConV0Candidates = new ArrayList<ReconstructedParticle>();
+ targetConV0Candidates = new ArrayList<ReconstructedParticle>();
//
finalStateParticles = this.makeReconstructedParticles(clusters, tracks);
@@ -143,12 +142,12 @@
vertexParticles(electrons, positrons);
// If the list exist, put the vertexed candidates into the event
- if(candidatesCollectionName != null)
- event.put(candidatesCollectionName, candidates, ReconstructedParticle.class, 0);
- if(candidatesBeamConCollectionName != null)
- event.put(candidatesBeamConCollectionName, candidatesBeamCon, ReconstructedParticle.class, 0);
- if(candidatesTargetConCollectionName != null)
- event.put(candidatesTargetConCollectionName, candidatesTargetCon, ReconstructedParticle.class, 0);
+ if(unconstrainedV0CandidatesColName != null)
+ event.put(unconstrainedV0CandidatesColName, unconstrainedV0Candidates, ReconstructedParticle.class, 0);
+ if(beamConV0CandidatesColName != null)
+ event.put(beamConV0CandidatesColName, beamConV0Candidates, ReconstructedParticle.class, 0);
+ if(targetV0ConCandidatesColName != null)
+ event.put(targetV0ConCandidatesColName, targetConV0Candidates, ReconstructedParticle.class, 0);
}
/**
java/trunk/recon/src/main/java/org/hps/recon/particle
--- java/trunk/recon/src/main/java/org/hps/recon/particle/TestRunReconParticleDriver.java 2014-04-30 20:56:21 UTC (rev 536)
+++ java/trunk/recon/src/main/java/org/hps/recon/particle/TestRunReconParticleDriver.java 2014-05-01 08:36:27 UTC (rev 537)
@@ -14,7 +14,7 @@
/**
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: TestRunReconParticleDriver.java,v 1.3 2013/10/18 16:46:01 phansson Exp $
+ * @version $Id$
*/
public class TestRunReconParticleDriver extends ReconParticleDriver {
@@ -22,7 +22,7 @@
@Override
protected void startOfData(){
- candidatesCollectionName = "VertexedReconParticles";
+ unconstrainedV0CandidatesColName = "V0Candidates";
}
@Override
@@ -45,7 +45,7 @@
((BaseReconstructedParticle) candidate).setStartVertex(vertex);
candidate.addParticle(electron);
candidate.addParticle(positron);
- candidates.add(candidate);
+ unconstrainedV0Candidates.add(candidate);
}
}
}