1 added + 1 removed + 21 modified, total 23 files
hps-java/src/main/resources/org/lcsim/hps/steering/recon
diff -u -r1.4 -r1.5
--- HPS2014OfflineRecon.lcsim 19 Apr 2013 00:02:22 -0000 1.4
+++ HPS2014OfflineRecon.lcsim 25 Apr 2013 21:42:08 -0000 1.5
@@ -1,7 +1,7 @@
<!--
Offline reconstruction for 2014 (electron run) data.
@author Sho Uemura <[log in to unmask]>
- @version $Id: HPS2014OfflineRecon.lcsim,v 1.4 2013/04/19 00:02:22 meeg Exp $
+ @version $Id: HPS2014OfflineRecon.lcsim,v 1.5 2013/04/25 21:42:08 meeg Exp $
-->
<lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd">
@@ -31,7 +31,7 @@
<useTimestamps>true</useTimestamps>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver" type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
<clusterTimeCut>4.0</clusterTimeCut>
hps-java/src/main/resources/org/lcsim/hps/steering/recon
diff -u -r1.2 -r1.3
--- TestRunOfflineReconTwoTrkFilter.lcsim 12 Mar 2013 23:32:21 -0000 1.2
+++ TestRunOfflineReconTwoTrkFilter.lcsim 25 Apr 2013 21:42:08 -0000 1.3
@@ -26,7 +26,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver"
type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
hps-java/src/main/resources/org/lcsim/hps/steering/recon
diff -u -r1.1 -r1.2
--- HPSTrackingDefaultsRecon.lcsim 1 Mar 2013 23:22:25 -0000 1.1
+++ HPSTrackingDefaultsRecon.lcsim 25 Apr 2013 21:42:08 -0000 1.2
@@ -38,7 +38,7 @@
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver"
type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
hps-java/src/main/resources/org/lcsim/hps/steering/recon
diff -u -r1.9 -r1.10
--- TestRunOfflineRecon.lcsim 18 Apr 2013 18:01:55 -0000 1.9
+++ TestRunOfflineRecon.lcsim 25 Apr 2013 21:42:08 -0000 1.10
@@ -1,7 +1,7 @@
<!--
Offline reconstruction for test run (photon) data.
@author Sho Uemura <[log in to unmask]>
- @version $Id: TestRunOfflineRecon.lcsim,v 1.9 2013/04/18 18:01:55 meeg Exp $
+ @version $Id: TestRunOfflineRecon.lcsim,v 1.10 2013/04/25 21:42:08 meeg Exp $
-->
<lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd">
@@ -30,7 +30,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver" type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
<layerGeometryType>Common</layerGeometryType>
hps-java/src/test/java/org/lcsim/hps/recon/tracking
diff -u -r1.2 -r1.3
--- MainTrackingDriver.java 25 Feb 2013 22:39:26 -0000 1.2
+++ MainTrackingDriver.java 25 Apr 2013 21:42:08 -0000 1.3
@@ -5,7 +5,6 @@
package org.lcsim.hps.recon.tracking;
import org.lcsim.hps.monitoring.CalibrationDriver;
-import org.lcsim.hps.users.mgraham.DataTrackerHitDriver;
import org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup;
import org.lcsim.util.Driver;
hps-java/src/main/resources/org/lcsim/hps/steering/users/phansson
diff -u -r1.2 -r1.3
--- TwoTrackAnalysis.lcsim 27 Mar 2013 01:15:24 -0000 1.2
+++ TwoTrackAnalysis.lcsim 25 Apr 2013 21:42:08 -0000 1.3
@@ -83,7 +83,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver"
type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
hps-java/src/main/resources/org/lcsim/hps/steering/users/phansson
diff -u -r1.1 -r1.2
--- MPAlignment.lcsim 14 Mar 2013 03:09:45 -0000 1.1
+++ MPAlignment.lcsim 25 Apr 2013 21:42:08 -0000 1.2
@@ -75,7 +75,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver"
type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
hps-java/src/main/resources/org/lcsim/hps/steering/users/phansson
diff -u -r1.1 -r1.2
--- MultScatAna.lcsim 14 Mar 2013 03:09:45 -0000 1.1
+++ MultScatAna.lcsim 25 Apr 2013 21:42:08 -0000 1.2
@@ -91,7 +91,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver"
type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
hps-java/src/main/resources/org/lcsim/hps/steering/users
diff -u -r1.1 -r1.2
--- OfflineTrackingAxial.lcsim 20 Mar 2013 01:46:26 -0000 1.1
+++ OfflineTrackingAxial.lcsim 25 Apr 2013 21:42:08 -0000 1.2
@@ -35,7 +35,7 @@
</driver>
<driver name="TrackerHitDriver"
- type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver"/>
+ type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver"/>
<driver name="SVTEventPlots"
type="org.lcsim.hps.monitoring.svt.SVTEventInfo">
hps-java/src/main/resources/org/lcsim/hps/steering/users
diff -u -r1.1 -r1.2
--- TestRunOfflineReconSeeVertexingPlots.lcsim 20 Mar 2013 01:46:26 -0000 1.1
+++ TestRunOfflineReconSeeVertexingPlots.lcsim 25 Apr 2013 21:42:08 -0000 1.2
@@ -25,7 +25,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="TrackerReconDriver"
type="org.lcsim.hps.recon.tracking.TrackerReconDriver">
<debug>false</debug>
hps-java/src/main/resources/org/lcsim/hps/steering/users
diff -u -r1.1 -r1.2
--- FakeHitTracking.lcsim 20 Mar 2013 01:46:26 -0000 1.1
+++ FakeHitTracking.lcsim 25 Apr 2013 21:42:08 -0000 1.2
@@ -3,7 +3,7 @@
<!--
Steering file used to run fake hit tracking
author: Per Hansson <[log in to unmask]>
- version: $Id: FakeHitTracking.lcsim,v 1.1 2013/03/20 01:46:26 meeg Exp $
+ version: $Id: FakeHitTracking.lcsim,v 1.2 2013/04/25 21:42:08 meeg Exp $
-->
<inputFiles>
@@ -106,7 +106,7 @@
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" >
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" >
<debug>true</debug>
</driver>
<driver name="DataTrackerHitDriver" type="org.lcsim.hps.recon.tracking.TrackerHitDriver" >
hps-java/src/main/resources/org/lcsim/hps/steering/monitoring
diff -u -r1.1 -r1.2
--- TestRunMonitoring.lcsim 1 Mar 2013 23:22:24 -0000 1.1
+++ TestRunMonitoring.lcsim 25 Apr 2013 21:42:09 -0000 1.2
@@ -42,7 +42,7 @@
type="org.lcsim.hps.recon.tracking.HPSRawTrackerHitFitterDriver">
<fitAlgorithm>Analytic</fitAlgorithm>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver"/>
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver"/>
<driver name="EcalDaqPlots" type="org.lcsim.hps.monitoring.ecal.EcalDaqPlots">
</driver>
<driver name="CleanupDriver"
hps-java/src/main/resources/org/lcsim/hps/steering/monitoring
diff -u -r1.1 -r1.2
--- OnlineTracking.lcsim 1 Mar 2013 23:22:24 -0000 1.1
+++ OnlineTracking.lcsim 25 Apr 2013 21:42:09 -0000 1.2
@@ -42,7 +42,7 @@
</driver>
<driver name="TrackerHitDriver"
- type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver">
+ type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver">
<clusterSeedThreshold>3.0</clusterSeedThreshold>
<clusterNeighborThreshold>3.0</clusterNeighborThreshold>
<clusterThreshold>3.0</clusterThreshold>
hps-java/src/main/resources/org/lcsim/hps/steering/monitoring
diff -u -r1.1 -r1.2
--- TestRunEventDisplay.lcsim 1 Mar 2013 23:22:24 -0000 1.1
+++ TestRunEventDisplay.lcsim 25 Apr 2013 21:42:09 -0000 1.2
@@ -42,7 +42,7 @@
type="org.lcsim.hps.recon.tracking.HPSRawTrackerHitFitterDriver">
<fitAlgorithm>Analytic</fitAlgorithm>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver"/>
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver"/>
<driver name="HelicalTrackHitDriver"
type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
hps-java/src/main/resources/org/lcsim/hps/steering/monitoring
diff -u -r1.1 -r1.2
--- SVTMonitoring.lcsim 1 Mar 2013 23:22:24 -0000 1.1
+++ SVTMonitoring.lcsim 25 Apr 2013 21:42:09 -0000 1.2
@@ -45,7 +45,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver"
type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
hps-java/src/main/resources/org/lcsim/hps/steering/users/mgraham
diff -u -r1.1 -r1.2
--- ReconParticleBuilder.lcsim 13 Mar 2013 19:24:20 -0000 1.1
+++ ReconParticleBuilder.lcsim 25 Apr 2013 21:42:09 -0000 1.2
@@ -26,7 +26,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>true</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HelicalTrackHitDriver"
type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
<debug>false</debug>
hps-java/src/main/resources/org/lcsim/hps/steering/users/mgraham
diff -u -r1.1 -r1.2
--- HitTimeStudies.lcsim 11 Apr 2013 19:16:05 -0000 1.1
+++ HitTimeStudies.lcsim 25 Apr 2013 21:42:09 -0000 1.2
@@ -28,7 +28,7 @@
<fitAlgorithm>Analytic</fitAlgorithm>
<correctT0Shift>false</correctT0Shift>
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" />
<driver name="HitTimeDriver" type="org.lcsim.hps.users.mgraham.HitTimePlotter" />
<!-- <driver name="HitTimeDriver" type="org.lcsim.hps.users.meeg.HitTimePrintDriver" /> -->
<driver name="HelicalTrackHitDriver"
hps-java/src/main/java/org/lcsim/hps/users/mgraham
diff -u -r1.8 -r1.9
--- MainJASDriver.java 11 Apr 2013 22:23:05 -0000 1.8
+++ MainJASDriver.java 25 Apr 2013 21:42:09 -0000 1.9
@@ -1,5 +1,6 @@
package org.lcsim.hps.users.mgraham;
+import org.lcsim.hps.recon.tracking.DataTrackerHitDriver;
import org.lcsim.hps.monitoring.CalibrationDriver;
import org.lcsim.hps.recon.tracking.*;
import org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup;
hps-java/src/main/java/org/lcsim/hps/users/mgraham
diff -N DataTrackerHitDriver.java
--- DataTrackerHitDriver.java 29 Sep 2012 00:23:12 -0000 1.7
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,230 +0,0 @@
-package org.lcsim.hps.users.mgraham;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import org.lcsim.detector.IDetectorElement;
-import org.lcsim.detector.tracker.silicon.SiSensor;
-import org.lcsim.detector.tracker.silicon.SiTrackerModule;
-import org.lcsim.event.EventHeader;
-import org.lcsim.geometry.Detector;
-import org.lcsim.hps.recon.tracking.*;
-import org.lcsim.recon.tracking.digitization.sisim.*;
-import org.lcsim.util.Driver;
-import org.lcsim.util.lcio.LCIOUtil;
-
-/**
- *
- * @author mgraham
- */
-public class DataTrackerHitDriver extends Driver {
- // Debug switch for development.
-
- private boolean debug = false;
- // Collection name.
-// private String readoutCollectionName = "TrackerHits";
- // Subdetector name.
- private String subdetectorName = "Tracker";
- // Name of RawTrackerHit output collection.
-// private String rawTrackerHitOutputCollectionName = "RawTrackerHitMaker_RawTrackerHits";
- // Name of StripHit1D output collection.
- private String stripHitOutputCollectionName = "StripClusterer_SiTrackerHitStrip1D";
- // Clustering parameters.
- private double clusterSeedThreshold = 4.0;
- private double clusterNeighborThreshold = 3.0;
- private double clusterThreshold = 4.0;
- private int clusterMaxSize = 10;
- private int clusterCentralStripAveragingThreshold = 4;
- // Clustering errors by number of TrackerHits.
- private static final double clusterErrorMultiplier = 1.0;
- private double oneClusterErr = clusterErrorMultiplier / Math.sqrt(12.);
- private double twoClusterErr = clusterErrorMultiplier / 5.0;
- private double threeClusterErr = clusterErrorMultiplier / 3.0;
- private double fourClusterErr = clusterErrorMultiplier / 2.0;
- private double fiveClusterErr = clusterErrorMultiplier / 1.0;
- // Various data lists required by digitization.
- private List<String> processPaths = new ArrayList<String>();
- private List<IDetectorElement> processDEs = new ArrayList<IDetectorElement>();
- private Set<SiSensor> processSensors = new HashSet<SiSensor>();
- private Set<SiTrackerModule> processModules = new HashSet<SiTrackerModule>();
- // Digi class objects.
-// private SiDigitizer stripDigitizer;
-// private HPSFittedRawTrackerHitMaker hitMaker;
- private HPSStripMaker stripClusterer;
- // private DumbShaperFit shaperFit;
- int[][] counts = new int[2][10];
-
- public void setDebug(boolean debug) {
- this.debug = debug;
- }
-
-// public void setReadoutCollectionName(String readoutCollectionName) {
-// this.readoutCollectionName = readoutCollectionName;
-// }
- public void setSubdetectorName(String subdetectorName) {
- this.subdetectorName = subdetectorName;
- }
-
- public void setStripHitOutputCollectionName(String stripHitOutputCollectionName) {
- this.stripHitOutputCollectionName = stripHitOutputCollectionName;
- }
-
- public void setClusterSeedThreshold(double clusterSeedThreshold) {
- this.clusterSeedThreshold = clusterSeedThreshold;
- }
-
- public void setClusterNeighborThreshold(double clusterNeighborThreshold) {
- this.clusterNeighborThreshold = clusterNeighborThreshold;
- }
-
- public void setClusterThreshold(double clusterThreshold) {
- this.clusterThreshold = clusterThreshold;
- }
-
- public void setClusterMaxSize(int clusterMaxSize) {
- this.clusterMaxSize = clusterMaxSize;
- }
-
- public void setClusterCentralStripAveragingThreshold(int clusterCentralStripAveragingThreshold) {
- this.clusterCentralStripAveragingThreshold = clusterCentralStripAveragingThreshold;
- }
-
- public void setOneClusterErr(double oneClusterErr) {
- this.oneClusterErr = oneClusterErr;
- }
-
- public void setTwoClusterErr(double twoClusterErr) {
- this.twoClusterErr = twoClusterErr;
- }
-
- public void setThreeClusterErr(double threeClusterErr) {
- this.threeClusterErr = threeClusterErr;
- }
-
- public void setFourClusterErr(double fourClusterErr) {
- this.fourClusterErr = fourClusterErr;
- }
-
- public void setFiveClusterErr(double fiveClusterErr) {
- this.fiveClusterErr = fiveClusterErr;
- }
-
- /**
- * Creates a new instance of TrackerHitDriver.
- */
- public DataTrackerHitDriver() {
- }
-
- /**
- * Do initialization once we get a Detector.
- */
- @Override
- public void detectorChanged(Detector detector) {
-
- // Call sub-Driver's detectorChanged methods.
- super.detectorChanged(detector);
-
- // Process detectors specified by path, otherwise process entire
- // detector
- IDetectorElement deDetector = detector.getDetectorElement();
-
- for (String path : processPaths) {
- processDEs.add(deDetector.findDetectorElement(path));
- }
-
- if (processDEs.isEmpty()) {
- processDEs.add(deDetector);
- }
-
- for (IDetectorElement detectorElement : processDEs) {
- processSensors.addAll(detectorElement.findDescendants(SiSensor.class));
- //if (debug)
- // System.out.println("added " + processSensors.size() + " sensors");
- processModules.addAll(detectorElement.findDescendants(SiTrackerModule.class));
- //if (debug)
- // System.out.println("added " + processModules.size() + " modules");
- }
-
- // Create the sensor simulation.
- CDFSiSensorSim stripSim = new CDFSiSensorSim();
-
-
- // Create Strip clustering algorithm.
- HPSNearestNeighborRMS stripClusteringAlgo = new HPSNearestNeighborRMS();
- stripClusteringAlgo.setSeedThreshold(clusterSeedThreshold);
- stripClusteringAlgo.setNeighborThreshold(clusterNeighborThreshold);
- stripClusteringAlgo.setClusterThreshold(clusterThreshold);
-
-// hitMaker=new HPSFittedRawTrackerHitMaker(shaperFit);
- // Create the clusterers and set hit-making parameters.
- stripClusterer = new HPSStripMaker(stripSim,stripClusteringAlgo);
-
- stripClusterer.setMaxClusterSize(clusterMaxSize);
- stripClusterer.setCentralStripAveragingThreshold(clusterCentralStripAveragingThreshold);
-
- // Set the cluster errors.
- stripClusterer.SetOneClusterErr(oneClusterErr);
- stripClusterer.SetTwoClusterErr(twoClusterErr);
- stripClusterer.SetThreeClusterErr(threeClusterErr);
- stripClusterer.SetFourClusterErr(fourClusterErr);
- stripClusterer.SetFiveClusterErr(fiveClusterErr);
-
- // Set the detector to process.
- processPaths.add(subdetectorName);
- }
-
- /**
- * Perform the digitization.
- */
- @Override
- public void process(EventHeader event) {
- // Call sub-Driver processing.
-// super.process(event);
-
- // Make new lists for output.
-// List<HPSFittedRawTrackerHit> rawHits = new ArrayList<HPSFittedRawTrackerHit>();
- List<SiTrackerHit> stripHits1D = new ArrayList<SiTrackerHit>();
-
-// // Make HPS hits.
-// for (SiSensor sensor : processSensors) {
-// rawHits.addAll(hitMaker.makeHits(sensor));
-// }
-
- // Make strip hits.
- for (SiSensor sensor : processSensors) {
- stripHits1D.addAll(stripClusterer.makeHits(sensor));
- }
-
- // Debug prints.
- if (debug) {
-// List<SimTrackerHit> simHits = event.get(SimTrackerHit.class, this.readoutCollectionName);
-// System.out.println("SimTrackerHit collection " + this.readoutCollectionName + " has " + simHits.size() + " hits.");
-// System.out.println("RawTrackerHit collection " + this.rawTrackerHitOutputCollectionName + " has " + rawHits.size() + " hits.");
- System.out.println("TrackerHit collection " + this.stripHitOutputCollectionName + " has " + stripHits1D.size() + " hits.");
- }
-
- // Put output hits into collection.
- int flag = LCIOUtil.bitSet(0, 31, true); // Turn on 64-bit cell ID.
-// event.put(this.rawTrackerHitOutputCollectionName, rawHits, RawTrackerHit.class, flag, toString());
- event.put(this.stripHitOutputCollectionName, stripHits1D, SiTrackerHitStrip1D.class, 0, toString());
- if (debug) {
- for (int mod = 0; mod < 2; mod++) {
- for (int layer = 0; layer < 10; layer++) {
- counts[mod][layer] += SvtUtils.getInstance().getSensor(mod, layer).getReadout().getHits(SiTrackerHit.class).size();
- }
- }
- }
- }
-
- @Override
- public void endOfData() {
- if (debug) {
- for (int mod = 0; mod < 2; mod++) {
- for (int layer = 0; layer < 10; layer++) {
- System.out.format("mod %d, layer %d, count %d\n", mod, layer, counts[mod][layer]);
- }
- }
- }
- }
-}
hps-java/src/main/resources/org/lcsim/hps/steering/users/meeg
diff -u -r1.1 -r1.2
--- EcalGainDriver.lcsim 1 Mar 2013 23:22:25 -0000 1.1
+++ EcalGainDriver.lcsim 25 Apr 2013 21:42:09 -0000 1.2
@@ -54,7 +54,7 @@
</driver>
<driver name="TrackerHitDriver"
- type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver"/>
+ type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver"/>
<driver name="CleanupDriver"
type="org.lcsim.recon.tracking.digitization.sisim.config.ReadoutCleanupDriver">
<collectionNames>TrackerHits</collectionNames>
hps-java/src/main/resources/org/lcsim/hps/steering/readout
diff -u -r1.2 -r1.3
--- TestRunSim.lcsim 1 Mar 2013 23:22:24 -0000 1.2
+++ TestRunSim.lcsim 25 Apr 2013 21:42:09 -0000 1.3
@@ -98,7 +98,7 @@
</driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" >
+ <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.DataTrackerHitDriver" >
<debug>false</debug>
</driver>
hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -N DataTrackerHitDriver.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ DataTrackerHitDriver.java 25 Apr 2013 21:42:09 -0000 1.1
@@ -0,0 +1,230 @@
+package org.lcsim.hps.recon.tracking;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import org.lcsim.detector.IDetectorElement;
+import org.lcsim.detector.tracker.silicon.SiSensor;
+import org.lcsim.detector.tracker.silicon.SiTrackerModule;
+import org.lcsim.event.EventHeader;
+import org.lcsim.geometry.Detector;
+import org.lcsim.hps.recon.tracking.*;
+import org.lcsim.recon.tracking.digitization.sisim.*;
+import org.lcsim.util.Driver;
+import org.lcsim.util.lcio.LCIOUtil;
+
+/**
+ *
+ * @author mgraham
+ */
+public class DataTrackerHitDriver extends Driver {
+ // Debug switch for development.
+
+ private boolean debug = false;
+ // Collection name.
+// private String readoutCollectionName = "TrackerHits";
+ // Subdetector name.
+ private String subdetectorName = "Tracker";
+ // Name of RawTrackerHit output collection.
+// private String rawTrackerHitOutputCollectionName = "RawTrackerHitMaker_RawTrackerHits";
+ // Name of StripHit1D output collection.
+ private String stripHitOutputCollectionName = "StripClusterer_SiTrackerHitStrip1D";
+ // Clustering parameters.
+ private double clusterSeedThreshold = 4.0;
+ private double clusterNeighborThreshold = 3.0;
+ private double clusterThreshold = 4.0;
+ private int clusterMaxSize = 10;
+ private int clusterCentralStripAveragingThreshold = 4;
+ // Clustering errors by number of TrackerHits.
+ private static final double clusterErrorMultiplier = 1.0;
+ private double oneClusterErr = clusterErrorMultiplier / Math.sqrt(12.);
+ private double twoClusterErr = clusterErrorMultiplier / 5.0;
+ private double threeClusterErr = clusterErrorMultiplier / 3.0;
+ private double fourClusterErr = clusterErrorMultiplier / 2.0;
+ private double fiveClusterErr = clusterErrorMultiplier / 1.0;
+ // Various data lists required by digitization.
+ private List<String> processPaths = new ArrayList<String>();
+ private List<IDetectorElement> processDEs = new ArrayList<IDetectorElement>();
+ private Set<SiSensor> processSensors = new HashSet<SiSensor>();
+ private Set<SiTrackerModule> processModules = new HashSet<SiTrackerModule>();
+ // Digi class objects.
+// private SiDigitizer stripDigitizer;
+// private HPSFittedRawTrackerHitMaker hitMaker;
+ private HPSStripMaker stripClusterer;
+ // private DumbShaperFit shaperFit;
+ int[][] counts = new int[2][10];
+
+ public void setDebug(boolean debug) {
+ this.debug = debug;
+ }
+
+// public void setReadoutCollectionName(String readoutCollectionName) {
+// this.readoutCollectionName = readoutCollectionName;
+// }
+ public void setSubdetectorName(String subdetectorName) {
+ this.subdetectorName = subdetectorName;
+ }
+
+ public void setStripHitOutputCollectionName(String stripHitOutputCollectionName) {
+ this.stripHitOutputCollectionName = stripHitOutputCollectionName;
+ }
+
+ public void setClusterSeedThreshold(double clusterSeedThreshold) {
+ this.clusterSeedThreshold = clusterSeedThreshold;
+ }
+
+ public void setClusterNeighborThreshold(double clusterNeighborThreshold) {
+ this.clusterNeighborThreshold = clusterNeighborThreshold;
+ }
+
+ public void setClusterThreshold(double clusterThreshold) {
+ this.clusterThreshold = clusterThreshold;
+ }
+
+ public void setClusterMaxSize(int clusterMaxSize) {
+ this.clusterMaxSize = clusterMaxSize;
+ }
+
+ public void setClusterCentralStripAveragingThreshold(int clusterCentralStripAveragingThreshold) {
+ this.clusterCentralStripAveragingThreshold = clusterCentralStripAveragingThreshold;
+ }
+
+ public void setOneClusterErr(double oneClusterErr) {
+ this.oneClusterErr = oneClusterErr;
+ }
+
+ public void setTwoClusterErr(double twoClusterErr) {
+ this.twoClusterErr = twoClusterErr;
+ }
+
+ public void setThreeClusterErr(double threeClusterErr) {
+ this.threeClusterErr = threeClusterErr;
+ }
+
+ public void setFourClusterErr(double fourClusterErr) {
+ this.fourClusterErr = fourClusterErr;
+ }
+
+ public void setFiveClusterErr(double fiveClusterErr) {
+ this.fiveClusterErr = fiveClusterErr;
+ }
+
+ /**
+ * Creates a new instance of TrackerHitDriver.
+ */
+ public DataTrackerHitDriver() {
+ }
+
+ /**
+ * Do initialization once we get a Detector.
+ */
+ @Override
+ public void detectorChanged(Detector detector) {
+
+ // Call sub-Driver's detectorChanged methods.
+ super.detectorChanged(detector);
+
+ // Process detectors specified by path, otherwise process entire
+ // detector
+ IDetectorElement deDetector = detector.getDetectorElement();
+
+ for (String path : processPaths) {
+ processDEs.add(deDetector.findDetectorElement(path));
+ }
+
+ if (processDEs.isEmpty()) {
+ processDEs.add(deDetector);
+ }
+
+ for (IDetectorElement detectorElement : processDEs) {
+ processSensors.addAll(detectorElement.findDescendants(SiSensor.class));
+ //if (debug)
+ // System.out.println("added " + processSensors.size() + " sensors");
+ processModules.addAll(detectorElement.findDescendants(SiTrackerModule.class));
+ //if (debug)
+ // System.out.println("added " + processModules.size() + " modules");
+ }
+
+ // Create the sensor simulation.
+ CDFSiSensorSim stripSim = new CDFSiSensorSim();
+
+
+ // Create Strip clustering algorithm.
+ HPSNearestNeighborRMS stripClusteringAlgo = new HPSNearestNeighborRMS();
+ stripClusteringAlgo.setSeedThreshold(clusterSeedThreshold);
+ stripClusteringAlgo.setNeighborThreshold(clusterNeighborThreshold);
+ stripClusteringAlgo.setClusterThreshold(clusterThreshold);
+
+// hitMaker=new HPSFittedRawTrackerHitMaker(shaperFit);
+ // Create the clusterers and set hit-making parameters.
+ stripClusterer = new HPSStripMaker(stripSim,stripClusteringAlgo);
+
+ stripClusterer.setMaxClusterSize(clusterMaxSize);
+ stripClusterer.setCentralStripAveragingThreshold(clusterCentralStripAveragingThreshold);
+
+ // Set the cluster errors.
+ stripClusterer.SetOneClusterErr(oneClusterErr);
+ stripClusterer.SetTwoClusterErr(twoClusterErr);
+ stripClusterer.SetThreeClusterErr(threeClusterErr);
+ stripClusterer.SetFourClusterErr(fourClusterErr);
+ stripClusterer.SetFiveClusterErr(fiveClusterErr);
+
+ // Set the detector to process.
+ processPaths.add(subdetectorName);
+ }
+
+ /**
+ * Perform the digitization.
+ */
+ @Override
+ public void process(EventHeader event) {
+ // Call sub-Driver processing.
+// super.process(event);
+
+ // Make new lists for output.
+// List<HPSFittedRawTrackerHit> rawHits = new ArrayList<HPSFittedRawTrackerHit>();
+ List<SiTrackerHit> stripHits1D = new ArrayList<SiTrackerHit>();
+
+// // Make HPS hits.
+// for (SiSensor sensor : processSensors) {
+// rawHits.addAll(hitMaker.makeHits(sensor));
+// }
+
+ // Make strip hits.
+ for (SiSensor sensor : processSensors) {
+ stripHits1D.addAll(stripClusterer.makeHits(sensor));
+ }
+
+ // Debug prints.
+ if (debug) {
+// List<SimTrackerHit> simHits = event.get(SimTrackerHit.class, this.readoutCollectionName);
+// System.out.println("SimTrackerHit collection " + this.readoutCollectionName + " has " + simHits.size() + " hits.");
+// System.out.println("RawTrackerHit collection " + this.rawTrackerHitOutputCollectionName + " has " + rawHits.size() + " hits.");
+ System.out.println("TrackerHit collection " + this.stripHitOutputCollectionName + " has " + stripHits1D.size() + " hits.");
+ }
+
+ // Put output hits into collection.
+ int flag = LCIOUtil.bitSet(0, 31, true); // Turn on 64-bit cell ID.
+// event.put(this.rawTrackerHitOutputCollectionName, rawHits, RawTrackerHit.class, flag, toString());
+ event.put(this.stripHitOutputCollectionName, stripHits1D, SiTrackerHitStrip1D.class, 0, toString());
+ if (debug) {
+ for (int mod = 0; mod < 2; mod++) {
+ for (int layer = 0; layer < 10; layer++) {
+ counts[mod][layer] += SvtUtils.getInstance().getSensor(mod, layer).getReadout().getHits(SiTrackerHit.class).size();
+ }
+ }
+ }
+ }
+
+ @Override
+ public void endOfData() {
+ if (debug) {
+ for (int mod = 0; mod < 2; mod++) {
+ for (int layer = 0; layer < 10; layer++) {
+ System.out.format("mod %d, layer %d, count %d\n", mod, layer, counts[mod][layer]);
+ }
+ }
+ }
+ }
+}
hps-java/src/main/resources/org/lcsim/hps/steering
diff -u -r1.6 -r1.7
--- LCIOEventFilter.lcsim 11 Mar 2013 02:25:02 -0000 1.6
+++ LCIOEventFilter.lcsim 25 Apr 2013 21:42:09 -0000 1.7
@@ -4,52 +4,23 @@
<!--<fileRegExp baseDir="./../data/mc/v3/pair_filter/" >pairs.*filt.*recon.*</fileRegExp>-->
</inputFiles>
<control>
- <numberOfEvents>-1</numberOfEvents>
<printInputFiles>true</printInputFiles>
<printDriversDetailed>true</printDriversDetailed>
</control>
<execute>
<driver name="EventMarkerDriver"/>
-<!--
- <driver name="CalibrationDriver"/>
- <driver name="RawTrackerHitSensorSetup"/>
- <driver name="RawTrackerHitFitterDriver" />
- <driver name="TrackerHitDriver"/>
- <driver name="HelicalTrackHitDriver"/>
- <driver name="TrackerReconDriver"/>
--->
- <driver name="TwoTrackFilter"/>
+ <driver name="TwoTrackFilter"/>
</execute>
<drivers>
<driver name="TwoTrackFilter"
type="org.lcsim.hps.util.TwoTrackFilterDriver">
- <debug>false</debug>
- <outputFilePath>${outputFile}</outputFilePath>
- </driver>
+ <debug>false</debug>
+ <outputFilePath>${outputFile}</outputFilePath>
+ </driver>
<driver name="EventMarkerDriver"
type="org.lcsim.job.EventMarkerDriver">
<eventInterval>1000</eventInterval>
</driver>
- <driver name="CalibrationDriver" type="org.lcsim.hps.monitoring.CalibrationDriver">
- <!--<runNumber>${runNumber}</runNumber>-->
- </driver>
- <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup"/>
- <driver name="RawTrackerHitFitterDriver" type="org.lcsim.hps.recon.tracking.HPSRawTrackerHitFitterDriver">
- <fitAlgorithm>Analytic</fitAlgorithm>
- <correctT0Shift>true</correctT0Shift>
- </driver>
- <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver" />
- <driver name="HelicalTrackHitDriver"
- type="org.lcsim.hps.recon.tracking.HelicalTrackHitDriver">
- <debug>false</debug>
- <layerGeometryType>Common</layerGeometryType>
- <maxSeperation>20.0</maxSeperation>
- <tolerance>1.0</tolerance>
- </driver>
- <driver name="TrackerReconDriver"
- type="org.lcsim.hps.recon.tracking.TrackerReconDriver">
- <debug>false</debug>
- </driver>
</drivers>
</lcsim>
\ No newline at end of file
CVSspam 0.2.12