Commit in hps-java/src/main on MAIN | |||
java/org/lcsim/hps/recon/tracking/HPSHelicalTrackHitDriver.java | +74 | -33 | 1.5 -> 1.6 |
/HPSSVTCalibrationConstants.java | +1 | -1 | 1.8 -> 1.9 |
/SVTRawTrackerHitThresholdDriver.java | -3 | 1.1 -> 1.2 | |
/MultiTrackReco.java | +10 | -10 | 1.1 -> 1.2 |
/TrackerReconDriver.java | +27 | -78 | 1.18 -> 1.19 |
java/org/lcsim/hps/monitoring/svt/SVTEventDisplay.java | +30 | -65 | 1.4 -> 1.5 |
/SensorOccupancyPlotsDriver.java | +5 | -6 | 1.2 -> 1.3 |
/SVTHitRecoCorrelations.java | -3 | 1.2 -> 1.3 | |
/SVTSimpleEventDisplay.java | +1 | -1 | 1.1 -> 1.2 |
/SVTHitPulsePlots.java | +9 | -13 | 1.12 -> 1.13 |
java/org/lcsim/hps/users/mgraham/alignment/HeavyPhotonLLDriver.java | +7 | -7 | 1.2 -> 1.3 |
java/org/lcsim/hps/monitoring/HPSCalibrationListener.java | +1 | -2 | 1.1 -> 1.2 |
resources/org/lcsim/hps/steering/TestRunEventDisplay.lcsim | +14 | -3 | 1.3 -> 1.4 |
java/org/lcsim/hps/users/mgraham/jlabrotation/HeavyPhotonLLDriver.java | +7 | -7 | 1.1 -> 1.2 |
+186 | -232 |
reorganize HPSHelicalTrackDriver to make it easier to run outside of TrackerReconDriver; clean up some now-superfluous calibration calls
diff -u -r1.5 -r1.6 --- HPSHelicalTrackHitDriver.java 28 Apr 2012 19:35:09 -0000 1.5 +++ HPSHelicalTrackHitDriver.java 13 May 2012 21:38:20 -0000 1.6 @@ -18,6 +18,7 @@
import org.lcsim.detector.IDetectorElement; import org.lcsim.detector.ITransform3D;
+import org.lcsim.detector.tracker.silicon.SiTrackerModule;
import org.lcsim.digisim.MyLCRelation; import org.lcsim.event.EventHeader; import org.lcsim.event.LCRelation;
@@ -30,6 +31,7 @@
import org.lcsim.fit.helicaltrack.HelicalTrackStrip; import org.lcsim.fit.helicaltrack.HitIdentifier; import org.lcsim.fit.helicaltrack.StereoHitMaker;
+import org.lcsim.geometry.Detector;
import org.lcsim.geometry.subdetector.BarrelEndcapFlag; import org.lcsim.hps.event.HPSTransformations; import org.lcsim.recon.tracking.digitization.sisim.SiTrackerHit;
@@ -41,25 +43,25 @@
/** * Create the appropriate HelicalTrackHits for the specified TrackerHit
- * collections. The resulting HelicalTrackHits encapsulate the information - * needed to perform a helical track hit for either a segmented strip - * detector, a pixel detector, or cross hits from a stereo detector.
+ * collections. The resulting HelicalTrackHits encapsulate the information + * needed to perform a helical track hit for either a segmented strip detector, + * a pixel detector, or cross hits from a stereo detector.
* * This driver was developed for the Dark Forces silicon tracker, where
- * digitized hits are in either axial or stereo layers. The pairs of layers - * to be used in forming stereo hits can be specified using the setStereoPairs
+ * digitized hits are in either axial or stereo layers. The pairs of layers to + * be used in forming stereo hits can be specified using the setStereoPairs
* method. *
- * The list of hit collections to be converted must be specified - * before the process method is executed.
+ * The list of hit collections to be converted must be specified before the + * process method is executed.
* * @author Richard Partridge * @version 1.0 */ public class HPSHelicalTrackHitDriver extends Driver {
-
// private StereoHitMaker _crosser = new StereoHitMaker(2., 10.);
- private boolean _debug=false;
+ + private boolean _debug = false;
private StereoHitMaker _crosser = new StereoHitMaker(0.0, 10.); private HitIdentifier _ID = new HitIdentifier(); private String _outname = "HelicalTrackHits";
@@ -72,15 +74,52 @@
private SymmetricMatrix _covTrkSystem; private boolean _doTranformToTracking = false; private HPSTransformations _detToTrk;
+ String subdetectorName = "Tracker";
- /** Creates a new instance of HelicalTrackHitDriver */
+ /** + * Creates a new instance of HelicalTrackHitDriver + */
public HPSHelicalTrackHitDriver() { // setDetToTrkMatrix(); _detToTrk = new HPSTransformations();
+ _colnames.add("StripClusterer_SiTrackerHitStrip1D"); + _crosser.setMaxSeparation(10.01); + _crosser.setTolerance(0.01); // user parameter? + } + + public void setSubdetectorName(String subdetectorName) { + this.subdetectorName = subdetectorName; + } + + public void detectorChanged(Detector detector) { + // Setup default stereo pairings, which should work for even number of + // modules. + List<SiTrackerModule> modules = detector.getSubdetector(subdetectorName).getDetectorElement().findDescendants(SiTrackerModule.class); + if (modules.size() == 0) { + throw new RuntimeException("No SiTrackerModules found in detector."); + } + int nmodules = modules.size(); + if (nmodules % 2 != 0) { + throw new RuntimeException("Don't know how to do stereo pairing for odd number of modules."); + } + List<int[]> pairs = new ArrayList<int[]>(); + for (int i = 1; i <= (nmodules / 2) - 1; i += 2) { + int[] pair = {i, i + 1}; + if (_debug) { + System.out.println("Adding stereo pair: " + pair[0] + ", " + pair[1]); + } + pairs.add(pair); + } + for (int[] pair : pairs) { + setStereoPair(subdetectorName, pair[0], pair[1]); + } + setTransformToTracking(true); + setDebug(true);
} /** * Create the HelicalTrackHits for the specified hit collections.
+ *
* @param event EventHeader of the event to be processed */ public void process(EventHeader event) {
@@ -100,9 +139,10 @@
// Create collections for strip hits by layer and hit cross references Map<String, List<HelicalTrackStrip>> striplistmap = new HashMap<String, List<HelicalTrackStrip>>(); Map<HelicalTrackStrip, SiTrackerHitStrip1D> stripmap = new HashMap<HelicalTrackStrip, SiTrackerHitStrip1D>();
- if(_debug) - System.out.println("HPSHelicalTrackHitDriver: # of hits found = "+hitlist.size()); -
+ if (_debug) { + System.out.println("HPSHelicalTrackHitDriver: # of hits found = " + hitlist.size()); + } +
// Loop over the SiTrackerHits in this collection for (SiTrackerHit hit : hitlist) {
@@ -119,7 +159,7 @@
// Create a HelicalTrackStrip for this hit HelicalTrackStrip strip = makeDigiStrip(h);
-
+
// Get the list of strips for this layer - create a new list if one doesn't already exist List<HelicalTrackStrip> lyrhits = striplistmap.get(id); if (lyrhits == null) {
@@ -153,8 +193,9 @@
// Now create the stereo hits // Create a list of stereo hits List<HelicalTrackCross> stereohits = new ArrayList<HelicalTrackCross>();
- if(_debug) - System.out.println("Map size = "+striplistmap.size());
+ if (_debug) { + System.out.println("Map size = " + striplistmap.size()); + }
// Loop over the stereo layer pairs for (String id1 : _stereomap.keySet()) {
@@ -164,9 +205,10 @@
// Form the stereo hits and add them to our hit list stereohits.addAll(_crosser.MakeHits(striplistmap.get(id1), striplistmap.get(id2))); }
- - if(_debug) - System.out.println("Number of stereo hits = "+stereohits.size());
+ + if (_debug) { + System.out.println("Number of stereo hits = " + stereohits.size()); + }
for (HelicalTrackCross htc : stereohits) { double ypos = htc.x();
@@ -180,8 +222,9 @@
// Add the stereo hits to our list of HelicalTrackHits helhits.addAll(stereohits); //mg...6/24/11 add new set of helical track hits that are rotated to from jlab to tracking frame
- if (_doTranformToTracking)
+ if (_doTranformToTracking) {
addRotatedHitsToEvent(event, stereohits);
+ }
//add LCRelation for strip hits for (HelicalTrackCross cross : stereohits) { for (HelicalTrackStrip strip : cross.getStrips()) {
@@ -200,39 +243,37 @@
// Put the HelicalTrackHits back into the event event.put(_outname, helhits, HelicalTrackHit.class, 0);
+ System.out.println("The HelicalTrackHit collection " + _outname + " has " + helhits.size() + " hits.");
event.put(_hitrelname, hitrelations, LCRelation.class, 0); event.put(_mcrelname, mcrelations, LCRelation.class, 0); }
- /** - * Name of the HelicalTrackHit collection to be put back in the event. - * @param outname Name to use for the HelicalTrackHit collection - */
public void addCollection(String colname) { _colnames.add(colname); }
- public void OutputCollection(String outname) { - _outname = outname; - } -
+ /** + * Name of the HelicalTrackHit collection to be put back in the event. + * + * @param outname Name to use for the HelicalTrackHit collection + */
public void setOutputCollectionName(String outname) { _outname = outname; }
- public void HitRelationName(String hitrelname) {
+ public void setHitRelationName(String hitrelname) {
_hitrelname = hitrelname; }
- public void MCRelationName(String mcrelname) {
+ public void setMCRelationName(String mcrelname) {
_mcrelname = mcrelname; }
- public void setMaxSeperation(double maxsep) {
+ public void setStripMaxSeparation(double maxsep) {
_crosser.setMaxSeparation(maxsep); }
- public void setTolerance(double tolerance) {
+ public void setStripTolerance(double tolerance) {
_crosser.setTolerance(tolerance); }
@@ -393,7 +434,7 @@
private SymmetricMatrix getCovTrkSystem(SymmetricMatrix cov) { return _detToTrk.transformCovarianceToTracking(cov); }
-
+
public void setDebug(boolean debug) { this._debug = debug; }
diff -u -r1.8 -r1.9 --- HPSSVTCalibrationConstants.java 12 May 2012 23:09:05 -0000 1.8 +++ HPSSVTCalibrationConstants.java 13 May 2012 21:38:20 -0000 1.9 @@ -77,7 +77,7 @@
}
- public static void loadBaseline(Reader baselineReader) {
+ private static void loadBaseline(Reader baselineReader) {
BufferedReader bufferedBaseline = new BufferedReader(baselineReader); String line; while (true) {
diff -u -r1.1 -r1.2 --- SVTRawTrackerHitThresholdDriver.java 1 May 2012 17:59:22 -0000 1.1 +++ SVTRawTrackerHitThresholdDriver.java 13 May 2012 21:38:20 -0000 1.2 @@ -51,9 +51,6 @@
public void process(EventHeader event) { if (event.hasCollection(RawTrackerHit.class, rawTrackerHitCollectionName)) {
- if (!HPSSVTCalibrationConstants.calibrationLoaded()) { - HPSSVTCalibrationConstants.loadCalibrationConstants(); - }
// Get RawTrackerHit collection from event. List<RawTrackerHit> rawTrackerHits = event.get(RawTrackerHit.class, rawTrackerHitCollectionName); List<RawTrackerHit> outputHits = new ArrayList<RawTrackerHit>();
diff -u -r1.1 -r1.2 --- MultiTrackReco.java 1 Jun 2011 17:05:31 -0000 1.1 +++ MultiTrackReco.java 13 May 2012 21:38:20 -0000 1.2 @@ -27,9 +27,9 @@
HPSHelicalTrackHitDriver hitdriver = new HPSHelicalTrackHitDriver(); hitdriver.addCollection(((HPSTrackerHitDriver) thd).getStripHits1DName());
- hitdriver.OutputCollection("AxialTrackHits"); - hitdriver.HitRelationName("AxialTrackHitRelations"); - hitdriver.MCRelationName("AxialTrackMCRelations");
+ hitdriver.setOutputCollectionName("AxialTrackHits"); + hitdriver.setHitRelationName("AxialTrackHitRelations"); + hitdriver.setMCRelationName("AxialTrackMCRelations");
add(hitdriver);
@@ -58,9 +58,9 @@
HPSHelicalTrackHitDriver hthdriver = new HPSHelicalTrackHitDriver(); hthdriver.addCollection(((HPSTrackerHitDriver) thd).getStripHits1DName());
- hthdriver.OutputCollection("HelicalTrackHits"); - hthdriver.HitRelationName("HelicalTrackHitRelations"); - hthdriver.MCRelationName("HelicalTrackMCRelations");
+ hthdriver.setOutputCollectionName("HelicalTrackHits"); + hthdriver.setHitRelationName("HelicalTrackHitRelations"); + hthdriver.setMCRelationName("HelicalTrackMCRelations");
for (int[] pair : stereoPairs)
@@ -68,12 +68,12 @@
if (detType.contains("Test")) { System.out.println("Setting separation for a Test detector");
- hthdriver.setMaxSeperation(10.01); - hthdriver.setTolerance(0.01);
+ hthdriver.setStripMaxSeparation(10.01); + hthdriver.setStripTolerance(0.01);
} else {
- hthdriver.setMaxSeperation(50.); - hthdriver.setTolerance(0.4);
+ hthdriver.setStripMaxSeparation(50.); + hthdriver.setStripTolerance(0.4);
} add(hthdriver);
diff -u -r1.18 -r1.19 --- TrackerReconDriver.java 3 May 2012 20:50:29 -0000 1.18 +++ TrackerReconDriver.java 13 May 2012 21:38:20 -0000 1.19 @@ -5,10 +5,8 @@
import java.util.ArrayList; import java.util.List;
-import org.lcsim.detector.tracker.silicon.SiTrackerModule;
import org.lcsim.event.EventHeader; import org.lcsim.event.Track;
-import org.lcsim.event.TrackerHit;
import org.lcsim.geometry.Detector; import org.lcsim.hps.event.HPSTransformations; import org.lcsim.recon.tracking.digitization.sisim.config.ReadoutCleanupDriver;
@@ -24,7 +22,8 @@
* with the {@link TrackerDigiDriver} digitization Driver. * * @author jeremym
- * @version $Id: TrackerReconDriver.java,v 1.18 2012/05/03 20:50:29 mgraham Exp $
+ * @version $Id: TrackerReconDriver.java,v 1.18 2012/05/03 20:50:29 mgraham Exp + * $
*/ public final class TrackerReconDriver extends Driver {
@@ -39,8 +38,6 @@
Detector detector = null; // Default B-field value. private double bfield = 0.8;
- // Name of the SVT subdetector. - private String subdetectorName = "Tracker";
// SimTrackerHit input collection for readout cleanup. private String simTrackerHitCollectionName = "TrackerHits"; // Tracking strategies resource path.
@@ -49,18 +46,7 @@
private String trackCollectionName = "MatchedTracks"; // HelicalTrackHit input collection. private String stInputCollectionName = "RotatedHelicalTrackHits";
- // Output hit collection for HelicalTrackHits. - private String hthOutputCollectionName = "HelicalTrackHits"; - // Input strip hits collection from digi. - private String stripHitsCollectionName = "StripClusterer_SiTrackerHitStrip1D"; - // Hit relations output collection. - private String helicalTrackHitRelationsCollectionName = "HelicalTrackHitRelations"; - // Track to MC relations output collection. - private String helicalTrackMCRelationsCollectionName = "HelicalTrackMCRelations"; - // Max strip separation when making HelicalTrackHits. - private double stripMaxSeparation = 10.01; - // Tolerance factor when making HelicalTrackHits. - private double stripTolerance = 0.01;
+ HPSHelicalTrackHitDriver hthdriver = new HPSHelicalTrackHitDriver();
public TrackerReconDriver() { }
@@ -70,49 +56,49 @@
} public void setSubdetectorName(String subdetectorName) {
- this.subdetectorName = subdetectorName;
+ hthdriver.setSubdetectorName(subdetectorName);
}
- /** - * Set the tracking strategy resource. - * - * @param strategyResource The absolute path to the strategy resource in the - * hps-java jar. - */ - public void setStrategyResource(String strategyResource) { - this.strategyResource = strategyResource;
+ public void setStripHitsCollectionName(String stripHitsCollectionName) { + hthdriver.setHitRelationName(stripHitsCollectionName);
} public void setHelicalTrackHitRelationsCollectionName(String helicalTrackHitRelationsCollectionName) {
- this.helicalTrackHitRelationsCollectionName = helicalTrackHitRelationsCollectionName;
+ hthdriver.setHitRelationName(helicalTrackHitRelationsCollectionName);
} public void setHelicalTrackMCRelationsCollectionName(String helicalTrackMCRelationsCollectionName) {
- this.helicalTrackMCRelationsCollectionName = helicalTrackMCRelationsCollectionName;
+ hthdriver.setMCRelationName(helicalTrackMCRelationsCollectionName);
}
- public void setInputHitCollectionName(String inputHitCollectionName) { - this.stInputCollectionName = inputHitCollectionName;
+ public void setOutputHitCollectionName(String outputHitCollectionName) { + hthdriver.setOutputCollectionName(outputHitCollectionName);
}
- public void setOutputHitCollectionName(String outputHitCollectionName) { - this.hthOutputCollectionName = outputHitCollectionName;
+ public void setStripMaxSeparation(double stripMaxSeparation) { + hthdriver.setStripMaxSeparation(stripMaxSeparation);
}
- public void setStripHitsCollectionName(String stripHitsCollectionName) { - this.stripHitsCollectionName = stripHitsCollectionName;
+ public void setStripTolerance(double stripTolerance) { + hthdriver.setStripTolerance(stripTolerance);
}
- public void setTrackCollectionName(String trackCollectionName) { - this.trackCollectionName = trackCollectionName;
+ /** + * Set the tracking strategy resource. + * + * @param strategyResource The absolute path to the strategy resource in the + * hps-java jar. + */ + public void setStrategyResource(String strategyResource) { + this.strategyResource = strategyResource;
}
- public void setStripMaxSeparation(double stripMaxSeparation) { - this.stripMaxSeparation = stripMaxSeparation;
+ public void setInputHitCollectionName(String inputHitCollectionName) { + this.stInputCollectionName = inputHitCollectionName;
}
- public void setStripTolerance(double stripTolerance) { - this.stripTolerance = stripTolerance;
+ public void setTrackCollectionName(String trackCollectionName) { + this.trackCollectionName = trackCollectionName;
} /**
@@ -152,39 +138,6 @@
// 1) Driver to create HelicalTrackHits expected by Seedtracker. // // TODO Make this step its own separate Driver??? (Matt)
- - // Setup default stereo pairings, which should work for even number of - // modules. - List<SiTrackerModule> modules = detector.getSubdetector(subdetectorName).getDetectorElement().findDescendants(SiTrackerModule.class); - if (modules.size() == 0) { - throw new RuntimeException("No SiTrackerModules found in detector."); - } - int nmodules = modules.size(); - if (nmodules % 2 != 0) { - throw new RuntimeException("Don't know how to do stereo pairing for odd number of modules."); - } - List<int[]> pairs = new ArrayList<int[]>(); - for (int i = 1; i <= (nmodules / 2) - 1; i += 2) { - int[] pair = {i, i + 1}; - if (debug) { - System.out.println("Adding stereo pair: " + pair[0] + ", " + pair[1]); - } - pairs.add(pair); - } - - // Create the Driver. - HPSHelicalTrackHitDriver hthdriver = new HPSHelicalTrackHitDriver(); - hthdriver.addCollection(stripHitsCollectionName); - hthdriver.OutputCollection(hthOutputCollectionName); - hthdriver.HitRelationName(helicalTrackHitRelationsCollectionName); - hthdriver.MCRelationName(helicalTrackMCRelationsCollectionName); - for (int[] pair : pairs) { - hthdriver.setStereoPair(subdetectorName, pair[0], pair[1]); - } - hthdriver.setMaxSeperation(stripMaxSeparation); - hthdriver.setTolerance(stripTolerance); // user parameter? - hthdriver.setTransformToTracking(true); - hthdriver.setDebug(true);
add(hthdriver); //
@@ -201,7 +154,7 @@
stFinal.setInputCollectionName(stInputCollectionName); stFinal.setTrkCollectionName(trackCollectionName); stFinal.setBField(bfield);
- stFinal.setDiagnostics(new SeedTrackerDiagnostics());
+ stFinal.setDiagnostics(new SeedTrackerDiagnostics());
// stFinal.setSectorParams(false); //this doesn't actually seem to do anything stFinal.setSectorParams(1, 10000); add(stFinal);
@@ -231,10 +184,6 @@
// Debug printouts. if (debug) {
- // Check for HelicalTrackHits. - List<TrackerHit> hth = event.get(TrackerHit.class, hthOutputCollectionName); - System.out.println("The HelicalTrackHit collection " + hthOutputCollectionName + " has " + hth.size() + " hits."); -
// Check for Tracks. List<Track> tracks = event.get(Track.class, trackCollectionName); System.out.println("The Track collection " + trackCollectionName + " has " + tracks.size() + " tracks.");
diff -u -r1.4 -r1.5 --- SVTEventDisplay.java 6 May 2012 08:57:38 -0000 1.4 +++ SVTEventDisplay.java 13 May 2012 21:38:20 -0000 1.5 @@ -1,24 +1,14 @@
package org.lcsim.hps.monitoring.svt; import hep.aida.*;
-import hep.physics.vec.BasicHep3Vector;
import hep.physics.vec.Hep3Vector;
-import hep.physics.vec.VecOp; -import java.util.ArrayList;
import java.util.List; import org.lcsim.detector.tracker.silicon.*;
-import org.lcsim.event.CalorimeterHit;
import org.lcsim.event.EventHeader;
-import org.lcsim.event.RawCalorimeterHit;
import org.lcsim.event.RawTrackerHit; import org.lcsim.fit.helicaltrack.HelicalTrackHit; import org.lcsim.geometry.Detector;
-import org.lcsim.geometry.IDDecoder; -import org.lcsim.hps.monitoring.Resettable;
import org.lcsim.hps.recon.ecal.HPSEcalCluster;
-import org.lcsim.hps.recon.ecal.HPSEcalConditions; -import org.lcsim.hps.recon.tracking.HPSFittedRawTrackerHit; -import org.lcsim.hps.recon.tracking.HPSSVTCalibrationConstants;
import org.lcsim.util.Driver; import org.lcsim.util.aida.AIDA;
@@ -26,58 +16,39 @@
* * @author mgraham */
-public class SVTEventDisplay extends Driver implements Resettable {
+public class SVTEventDisplay extends Driver {
- private List<IPlotter> plotters = new ArrayList<IPlotter>();
private AIDA aida = AIDA.defaultInstance();
- private String rawTrackerHitCollectionName = "RawTrackerHitMaker_RawTrackerHits"; - private String helicalTrackHitCollectionName = "HelicalTrackHits";
+ private String helicalTrackHitCollectionName = "HelicalTrackHits";
// String eCalClusterCollectionName = "EcalClusters";
- private String trackerName = "Tracker";
private int eventCount;
- private Detector detector = null;
private IPlotter plotter;
- private List<SiSensor> sensors;
// private ICloud2D cl2D; private IHistogram2D svtDispZX; private IHistogram2D svtDispZY;
- int integralWindow = 0; - IDDecoder dec;
String ecalSubdetectorName = "Ecal"; String ecalCollectionName = "EcalClusters"; double zEcal = 130; protected void detectorChanged(Detector detector) {
- this.detector = detector;
aida.tree().cd("/");
- - sensors = detector.getSubdetector(trackerName).getDetectorElement().findDescendants(SiSensor.class); -
if (detector.getSubdetector(ecalSubdetectorName) == null) { throw new RuntimeException("There is no subdetector called " + ecalSubdetectorName + " in this detector"); }
- // Cache the IDDecoder for the ECal. - dec = detector.getSubdetector(ecalSubdetectorName).getReadout().getIDDecoder(); - -
IAnalysisFactory fac = aida.analysisFactory();
- -
plotter = fac.createPlotterFactory().create("HPS SVT Event Display");
- plotters.add(plotter);
IPlotterStyle style = plotter.style(); style.statisticsBoxStyle().setVisible(false); style.setParameter("hist2DStyle", "colorMap"); style.dataStyle().fillStyle().setParameter("colorMapScheme", "rainbow");
- - // style.dataStyle().fillStyle().
+// style.zAxisStyle().setParameter("scale", "log");
plotter.createRegions(1, 2); svtDispZY = aida.histogram2D("SVT Raw Hits: z vs y", 50, 0, 140, 50, -10, 10);
- svtDispZX = aida.histogram2D("SVT Raw Hits: z vs x", 50, 0, 140, 100, -30, 30);
+ svtDispZX = aida.histogram2D("SVT Raw Hits: z vs x", 50, 0, 140, 100, -35, 35);
// cl2D = aida.cloud2D("SVT Raw Hits: z vs y"); plotter.region(0).plot(svtDispZY);
@@ -89,18 +60,14 @@
// public void setRawTrackerHitCollectionName(String rawTrackerHitCollectionName) { // this.rawTrackerHitCollectionName = rawTrackerHitCollectionName; // }
- - public void setHelicalTrackHitCollectionName(String helicalTrackHitCollectionName) {
+ public void setHelicalTrackHitCollectionName(String helicalTrackHitCollectionName) {
this.helicalTrackHitCollectionName = helicalTrackHitCollectionName; }
-
+
public void process(EventHeader event) { // if (event.hasCollection(RawTrackerHit.class, rawTrackerHitCollectionName)) { if (event.hasCollection(HelicalTrackHit.class, helicalTrackHitCollectionName)) { ++eventCount;
- if (!HPSSVTCalibrationConstants.calibrationLoaded()) { - HPSSVTCalibrationConstants.loadCalibrationConstants(); - }
// aida.histogram2D("SVT Raw Hits: z vs y").reset();
@@ -110,18 +77,19 @@
for (HelicalTrackHit hrth : rawHits) { fillPlots(hrth); }
- - List<HPSEcalCluster> clusters = event.get(HPSEcalCluster.class, ecalCollectionName); - // System.out.println("Number of ECAL clusters="+clusters.size()); - for (HPSEcalCluster cluster : clusters) { - dec.setID(cluster.getSeedHit().getCellID()); - CalorimeterHit seedHit = cluster.getSeedHit();
+ + List<HPSEcalCluster> clusters = event.get(HPSEcalCluster.class, ecalCollectionName); + // System.out.println("Number of ECAL clusters="+clusters.size()); + for (HPSEcalCluster cluster : clusters) { +// dec.setID(cluster.getSeedHit().getCellID()); +// CalorimeterHit seedHit = cluster.getSeedHit();
// System.out.println("z = "+seedHit.getPosition()[2]+" y = "+seedHit.getPosition()[1]);
-// if(cluster.getEnergy()/10>500) - svtDispZY.fill(zEcal, seedHit.getPosition()[1]/10, cluster.getEnergy()/10); - svtDispZY.fill(zEcal, seedHit.getPosition()[0]/10, cluster.getEnergy()/10);
+ if (cluster.getEnergy() > 0) { + svtDispZY.fill(zEcal, cluster.getPosition()[1] / 10, cluster.getEnergy()); + svtDispZX.fill(zEcal, cluster.getPosition()[0] / 10, cluster.getEnergy());
}
- }else{
+ } + } else {
System.out.println("SVTEventDisplay: Event has no HelicalTrackHits"); } }
@@ -139,7 +107,7 @@
// double ped = HPSSVTCalibrationConstants.getPedestal(sensor, strip); // double noise = HPSSVTCalibrationConstants.getNoise(sensor, strip);
-
+
// aida.cloud2D("SVT Raw Hits: z vs y").fill(position.z() / 10.0, position.y() / 10.0); // aida.histogram2D("SVT Raw Hits: z vs y").fill(position.z()/10.0,position.y()/10.0); // aida.histogram2D("SVT Raw Hits: z vs y").fill(position.z()/10.0,position.y()/10.0);
@@ -149,18 +117,18 @@
// maxAdc = adcVal[i] - ped; // } // if(noise<70){
- // if (noise < 70 && !mask(position)) {
+ // if (noise < 70 && !mask(position)) {
// System.out.println(sensor.getName()+" strip # "+strip+" "+position.z()+" " + position.y()); // svtDisp.fill(position.z()/10.0,position.y()/10.0); // svtDispZY.fill(position.z() / 10.0, position.y() / 10.0, maxAdc); // svtDispZX.fill(position.z() / 10.0, position.x() / 10.0, maxAdc);
- - // svtDispZY.fill(position.z() / 10.0, position.y() / 10.0, 1000.0); - // svtDispZX.fill(position.z() / 10.0, position.x() / 10.0, 1000.0); - // } - svtDispZY.fill(hit.z() / 10.0, hit.y() / 10.0, 1000.0); - svtDispZX.fill(hit.z() / 10.0, hit.x() / 10.0, 1000.0); -
+ + // svtDispZY.fill(position.z() / 10.0, position.y() / 10.0, 1000.0); + // svtDispZX.fill(position.z() / 10.0, position.x() / 10.0, 1000.0); + // } + svtDispZY.fill(hit.z() / 10.0, hit.y() / 10.0, 1000.0); + svtDispZX.fill(hit.z() / 10.0, hit.x() / 10.0, 1000.0); +
} private Hep3Vector getGlobalHitPosition(RawTrackerHit hit, SiSensorElectrodes electrodes) {
@@ -173,18 +141,15 @@
double y = pos.y(); double z = pos.z();
- if (z > 300 && z < 320) - if (y > -50 && y < -20)
+ if (z > 300 && z < 320) { + if (y > -50 && y < -20) {
return true;
+ } + }
return false; }
- @Override - public void reset() { - throw new UnsupportedOperationException("Not supported yet."); - } -
public void setEcalCollectionName(String ecalCollectionName) { this.ecalCollectionName = ecalCollectionName; }
diff -u -r1.2 -r1.3 --- SensorOccupancyPlotsDriver.java 3 May 2012 16:59:28 -0000 1.2 +++ SensorOccupancyPlotsDriver.java 13 May 2012 21:38:20 -0000 1.3 @@ -167,12 +167,11 @@
} }
- public void endOfData() { - if (plotter != null) { - plotter.hide(); - } - } -
+// public void endOfData() { +// if (plotter != null) { +// plotter.hide(); +// } +// }
public void reset() { eventCount = 0; resetOccupancyMap();
diff -u -r1.2 -r1.3 --- SVTHitRecoCorrelations.java 11 May 2012 00:33:25 -0000 1.2 +++ SVTHitRecoCorrelations.java 13 May 2012 21:38:20 -0000 1.3 @@ -219,9 +219,6 @@
// } //
- if (!HPSSVTCalibrationConstants.calibrationLoaded()) { - HPSSVTCalibrationConstants.loadCalibrationConstants(); - }
++eventCount; // List<RawTrackerHit> rawHits = event.get(RawTrackerHit.class, rawTrackerHitCollectionName); // List<HPSFittedRawTrackerHit> fittedrawHits = event.get(HPSFittedRawTrackerHit.class, fittedTrackerHitCollectionName);
diff -u -r1.1 -r1.2 --- SVTSimpleEventDisplay.java 10 May 2012 15:55:56 -0000 1.1 +++ SVTSimpleEventDisplay.java 13 May 2012 21:38:20 -0000 1.2 @@ -120,7 +120,7 @@
// Get RawTrackerHit collection from event. List<RawTrackerHit> rawTrackerHits = event.get(RawTrackerHit.class, inputCollection);
- // CLear histograms.
+ // Clear histograms.
for (int module = 0; module < 2; module++) { for (int layer = 1; layer < 11; layer++) { plots[module][layer - 1].reset();
diff -u -r1.12 -r1.13 --- SVTHitPulsePlots.java 12 May 2012 23:09:06 -0000 1.12 +++ SVTHitPulsePlots.java 13 May 2012 21:38:20 -0000 1.13 @@ -35,8 +35,8 @@
private IPlotter plotter3; private IPlotter plotter2; private List<SiSensor> sensors;
- private Map<String, Integer> sensorRegionMap; - private String outputPlots = null;
+ private Map<String, Integer> sensorRegionMap; + private String outputPlots = null;
protected void detectorChanged(Detector detector) { plotterFrame = new AIDAFrame();
@@ -83,7 +83,7 @@
style2.dataStyle().errorBarStyle().setVisible(false); style2.dataStyle().markerStyle().setColor("blue"); plotter2.createRegions(5, 4);
- for (SiSensor sensor : sensors) {
+ for (SiSensor sensor : sensors) {
IHistogram2D adcVsChanPlot = aida.histogram2D(sensor.getName() + "_AdcVsChan", 100, -100, 2000, 640, 0, 639); IProfile pulsePlot = aida.profile1D(sensor.getName() + "_pulse", 6, 0, 24 * 6.0); int region = sensorRegionMap.get(sensor.getName());
@@ -97,8 +97,7 @@
public SVTHitPulsePlots() { }
- -
+
public void setOutputPlots(String output) { this.outputPlots = output; }
@@ -110,9 +109,6 @@
public void process(EventHeader event) { if (event.hasCollection(RawTrackerHit.class, rawTrackerHitCollectionName)) { ++eventCount;
- if (!HPSSVTCalibrationConstants.calibrationLoaded()) { - HPSSVTCalibrationConstants.loadCalibrationConstants(); - }
List<RawTrackerHit> rawHits = event.get(RawTrackerHit.class, rawTrackerHitCollectionName); for (RawTrackerHit hrth : rawHits) { fillPlots(hrth);
@@ -139,13 +135,14 @@
} public void endOfData() {
- plotterFrame.dispose(); - if (outputPlots != null)
+// plotterFrame.dispose(); + if (outputPlots != null) {
try { aida.saveAs(outputPlots); } catch (IOException ex) { Logger.getLogger(TrackingReconstructionPlots.class.getName()).log(Level.SEVERE, null, ex); }
+ }
} private boolean hasAdjacentHit(RawTrackerHit hit) {
@@ -170,10 +167,9 @@
for (int i = 0; i < ns; i++) { aida.histogram2D(sensors.get(i).getName() + "_AdcVsChan").reset(); aida.profile1D(sensors.get(i).getName() + "_pulse").reset();
- }
+ }
}
- -
+
private int computePlotterRegion(SiSensor sensor) { IIdentifierHelper helper = sensor.getIdentifierHelper();
diff -u -r1.2 -r1.3 --- HeavyPhotonLLDriver.java 16 Nov 2011 18:00:03 -0000 1.2 +++ HeavyPhotonLLDriver.java 13 May 2012 21:38:20 -0000 1.3 @@ -65,20 +65,20 @@
HPSHelicalTrackHitDriver hthdriver = new HPSHelicalTrackHitDriver(); hthdriver.addCollection(((HPSTrackerHitDriver) thd).getStripHits1DName());
- hthdriver.OutputCollection("HelicalTrackHits"); - hthdriver.HitRelationName("HelicalTrackHitRelations"); - hthdriver.MCRelationName("HelicalTrackMCRelations");
+ hthdriver.setOutputCollectionName("HelicalTrackHits"); + hthdriver.setHitRelationName("HelicalTrackHitRelations"); + hthdriver.setMCRelationName("HelicalTrackMCRelations");
for (int[] pair : pairs) hthdriver.setStereoPair("Tracker", pair[0], pair[1]); if (detType.contains("Test")) { System.out.println("Setting separation for a Test detector");
- hthdriver.setMaxSeperation(10.01); - hthdriver.setTolerance(0.01);
+ hthdriver.setStripMaxSeparation(10.01); + hthdriver.setStripTolerance(0.01);
} else {
- hthdriver.setMaxSeperation(50.); - hthdriver.setTolerance(0.4);
+ hthdriver.setStripMaxSeparation(50.); + hthdriver.setStripTolerance(0.4);
} hthdriver.setTransformToTracking(true); add(hthdriver);
diff -u -r1.1 -r1.2 --- HPSCalibrationListener.java 12 May 2012 23:09:05 -0000 1.1 +++ HPSCalibrationListener.java 13 May 2012 21:38:20 -0000 1.2 @@ -11,7 +11,7 @@
/** * * @author Sho Uemura <[log in to unmask]>
- * @version $Id: HPSCalibrationListener.java,v 1.1 2012/05/12 23:09:05 meeg Exp $
+ * @version $Id: HPSCalibrationListener.java,v 1.2 2012/05/13 21:38:20 meeg Exp $
*/ public class HPSCalibrationListener implements EtEventListener {
@@ -44,7 +44,6 @@
@Override public void endRun(int seconds, int nevents) {
- throw new UnsupportedOperationException("Not supported yet.");
} //parse specified conditions as a map of times (GMT) to calibration file paths; get the appropriate file
diff -u -r1.3 -r1.4 --- TestRunEventDisplay.lcsim 12 May 2012 23:09:05 -0000 1.3 +++ TestRunEventDisplay.lcsim 13 May 2012 21:38:21 -0000 1.4 @@ -13,9 +13,11 @@
<driver name="EcalRawConverter"/> <driver name="EcalClusterer"/> <driver name="RawTrackerHitMaker"/>
-<!-- <driver name="RawTrackerHitFitterDriver"/> --> -<!-- <driver name="TrackerHitDriver"/>-->
<driver name="EcalEventMonitor"/>
+ <driver name="SVTSimpleEventDisplay"/> + <driver name="RawTrackerHitFitterDriver"/> + <driver name="TrackerHitDriver"/> + <driver name="TrackerReconDriver"/>
<driver name="SVTEventDisplay"/> <driver name="CleanupDriver"/>
@@ -23,9 +25,12 @@
<drivers> <driver name="HPSCalibrationDriver" type="org.lcsim.hps.monitoring.HPSCalibrationDriver"/> <driver name="RunControlDriver" type="org.lcsim.hps.monitoring.RunControlDriver"/>
- <driver name="SVTEventDisplay" type="org.lcsim.hps.monitoring.svt.SVTSimpleEventDisplay">
+ <driver name="SVTSimpleEventDisplay" type="org.lcsim.hps.monitoring.svt.SVTSimpleEventDisplay">
<inputCollection>SVTRawTrackerHits</inputCollection> </driver>
+ <driver name="SVTEventDisplay" + type="org.lcsim.hps.monitoring.svt.SVTEventDisplay"> + </driver>
<driver name="EcalRawConverter" type="org.lcsim.hps.recon.ecal.HPSEcalRawConverterDriver"> <ecalCollectionName>EcalCalHits</ecalCollectionName>
@@ -40,6 +45,12 @@
<fitAlgorithm>Analytic</fitAlgorithm> </driver> <driver name="TrackerHitDriver" type="org.lcsim.hps.users.mgraham.DataTrackerHitDriver"/>
+ <driver name="TrackerReconDriver" + type="org.lcsim.hps.recon.tracking.HPSHelicalTrackHitDriver"> + <debug>false</debug> + <stripMaxSeparation>20.0</stripMaxSeparation> + <stripTolerance>1.0</stripTolerance> + </driver>
<driver name="EcalDaqPlots" type="org.lcsim.hps.monitoring.ecal.EcalDaqPlots"> </driver> <driver name="CleanupDriver"
diff -u -r1.1 -r1.2 --- HeavyPhotonLLDriver.java 7 Jul 2011 20:57:38 -0000 1.1 +++ HeavyPhotonLLDriver.java 13 May 2012 21:38:21 -0000 1.2 @@ -66,20 +66,20 @@
HPSHelicalTrackHitDriver hthdriver = new HPSHelicalTrackHitDriver(); hthdriver.addCollection(((HPSTrackerHitDriver) thd).getStripHits1DName());
- hthdriver.OutputCollection("HelicalTrackHits"); - hthdriver.HitRelationName("HelicalTrackHitRelations"); - hthdriver.MCRelationName("HelicalTrackMCRelations");
+ hthdriver.setOutputCollectionName("HelicalTrackHits"); + hthdriver.setHitRelationName("HelicalTrackHitRelations"); + hthdriver.setMCRelationName("HelicalTrackMCRelations");
for (int[] pair : pairs) hthdriver.setStereoPair("Tracker", pair[0], pair[1]); if (detType.contains("Test")) { System.out.println("Setting separation for a Test detector");
- hthdriver.setMaxSeperation(10.01); - hthdriver.setTolerance(0.01);
+ hthdriver.setStripMaxSeparation(10.01); + hthdriver.setStripTolerance(0.01);
} else {
- hthdriver.setMaxSeperation(50.); - hthdriver.setTolerance(0.4);
+ hthdriver.setStripMaxSeparation(50.); + hthdriver.setStripTolerance(0.4);
} hthdriver.setTransformToTracking(true); add(hthdriver);
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