Print

Print


Commit in hps-java/src/main/java/org/lcsim/hps/monitoring/svt on MAIN
TrackingReconstructionPlots.java+77-141.5 -> 1.6
Added raw track parameters plot. Added plot of the fitted amplitude of hits on tracks.

hps-java/src/main/java/org/lcsim/hps/monitoring/svt
TrackingReconstructionPlots.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- TrackingReconstructionPlots.java	11 May 2012 16:18:04 -0000	1.5
+++ TrackingReconstructionPlots.java	14 May 2012 17:56:49 -0000	1.6
@@ -31,6 +31,9 @@
 import org.lcsim.recon.tracking.seedtracker.SeedTrack;
 import org.lcsim.util.Driver;
 import org.lcsim.util.aida.AIDA;
+import org.lcsim.event.LCIOParameters.ParameterName;
+import org.lcsim.hps.recon.tracking.*;
+import org.lcsim.hps.recon.tracking.HPSSVTCalibrationConstants.ChannelConstants;
 
 /**
  *
@@ -57,6 +60,7 @@
     private String outputPlots = null;
     IPlotter plotter;
     IPlotter plotter2;
+    IPlotter plotter22;
     IPlotter plotter3;
     IPlotter plotter3_1;
     IPlotter plotter3_2;
@@ -66,7 +70,10 @@
     double zEcal = 130;
     IHistogram1D trkPx;
     IHistogram1D nTracks;
-
+    
+    HPSShaperFitAlgorithm _shaper = new DumbShaperFit();
+    
+    
     protected void detectorChanged(Detector detector) {
         this.detector = detector;
         aida.tree().cd("/");
@@ -94,22 +101,44 @@
         plotter.region(2).plot(trkPz);
         plotter.region(3).plot(trkChi2);
 
-
+        
+        IHistogram1D trkd0 = aida.histogram1D("d0 ", 25, -100.0, 100.0);
+        IHistogram1D trkphi = aida.histogram1D("phi ", 25, -2.0*Math.PI, 2.0*Math.PI);
+        IHistogram1D trkomega = aida.histogram1D("omega ", 25, -0.01, 0.01);
+        IHistogram1D trklam = aida.histogram1D("tan(lambda) ", 25, -0.3,0.3);
+        IHistogram1D trkz0 = aida.histogram1D("z0 ", 25, -100.0, 100.0);
+
+        plotter22 = fac.createPlotterFactory().create("HPS Track Params");
+        plotter22.setTitle("Track parameters");
+        plotterFrame.addPlotter(plotter22);
+        IPlotterStyle style22 = plotter22.style();
+        style22.dataStyle().fillStyle().setColor("yellow");
+        style22.dataStyle().errorBarStyle().setVisible(false);
+        plotter22.createRegions(2, 3);
+        plotter22.region(0).plot(trkd0);
+        plotter22.region(1).plot(trkphi);
+        plotter22.region(2).plot(trkomega);
+        plotter22.region(3).plot(trklam);
+        plotter22.region(4).plot(trkz0);
+        
+        
         plotter2 = fac.createPlotterFactory().create("HPS Tracking Plots");
         plotter2.setTitle("Other");
         plotterFrame.addPlotter(plotter2);
         IPlotterStyle style2 = plotter2.style();
         style2.dataStyle().fillStyle().setColor("yellow");
         style2.dataStyle().errorBarStyle().setVisible(false);
-        plotter2.createRegions(2, 2);
-        IHistogram1D xAtConverter = aida.histogram1D("X (mm) @ Z=-60cm", 25, -20, 20);
-        IHistogram1D yAtConverter = aida.histogram1D("Y (mm) @ Z=-60cm", 25, -50, 50);
+        plotter2.createRegions(2, 3);
+        IHistogram1D xAtConverter = aida.histogram1D("X (mm) @ Z=-60cm", 25, -50, 50);
+        IHistogram1D yAtConverter = aida.histogram1D("Y (mm) @ Z=-60cm", 50, -50, 100);
         IHistogram1D nHits = aida.histogram1D("Hits per Track", 2, 4, 6);
+        IHistogram1D amp = aida.histogram1D("Amp (HitOnTrack)", 35, 0, 3500);
         nTracks = aida.histogram1D("Tracks per Event", 3, 0, 3);
         plotter2.region(0).plot(xAtConverter);
-        plotter2.region(1).plot(yAtConverter);
-        plotter2.region(2).plot(nHits);
-        plotter2.region(3).plot(nTracks);
+        plotter2.region(3).plot(yAtConverter);
+        plotter2.region(1).plot(nHits);
+        plotter2.region(4).plot(nTracks);
+        plotter2.region(2).plot(amp);
 
 
         plotter3 = fac.createPlotterFactory().create("HPS Residual Plots");
@@ -120,11 +149,11 @@
         style3.dataStyle().errorBarStyle().setVisible(false);
         plotter3.createRegions(5, 2);
 
-        double minResidY = -1;
-        double maxResidY = 1;
+        double minResidY = -5;
+        double maxResidY = 5;
 
-        double minResidX = -25;
-        double maxResidX = 25;
+        double minResidX = -50;
+        double maxResidX = 50;
 
         IHistogram1D mod1ResX = aida.histogram1D("Module 1 Residual X(mm)", 25, minResidX, maxResidX);
         IHistogram1D mod1ResY = aida.histogram1D("Module 1 Residual Y(mm)", 25, minResidY, maxResidY);
@@ -424,7 +453,6 @@
             aida.histogram1D("Track Chi2").fill(trk.getChi2());
 
             aida.histogram1D("Hits per Track").fill(trk.getTrackerHits().size());
-
             SeedTrack stEle = (SeedTrack) trk;
             SeedCandidate seedEle = stEle.getSeedCandidate();
             HelicalTrackFit ht = seedEle.getHelix();
@@ -433,6 +461,17 @@
 
             aida.histogram1D("X (mm) @ Z=-60cm").fill(slt.getYZAtX(zAtConverter)[1]);  //remember the tracker-->jlab 
             aida.histogram1D("Y (mm) @ Z=-60cm").fill(slt.getYZAtX(zAtConverter)[0]);  //coordinate swap...
+            
+         
+            aida.histogram1D("d0 ").fill(trk.getTrackParameter(ParameterName.d0.ordinal()));
+            aida.histogram1D("phi ").fill(trk.getTrackParameter(ParameterName.phi0.ordinal()));
+            aida.histogram1D("omega ").fill(trk.getTrackParameter(ParameterName.omega.ordinal()));
+            aida.histogram1D("tan(lambda) ").fill(trk.getTrackParameter(ParameterName.tanLambda.ordinal()));
+            aida.histogram1D("z0 ").fill(trk.getTrackParameter(ParameterName.z0.ordinal()));
+
+            
+            
+            
             List<TrackerHit> hitsOnTrack = trk.getTrackerHits();
             for (TrackerHit hit : hitsOnTrack) {
                 HelicalTrackHit htc = (HelicalTrackHit) hit;
@@ -457,7 +496,9 @@
 //                System.out.println("Measured X " + hit.getPosition()[1] + "; Track X = " + yTr);
 //                System.out.println("Measured Y " + hit.getPosition()[2] + "; Track Y = " + zTr);
 //                System.out.println(htc.getCorrectedCovMatrix().toString());
-
+               
+                
+                
                 aida.histogram1D(modNum + "Residual X(mm)").fill(hit.getPosition()[1] - yTr);//these hits should be rotated track hits already
                 aida.histogram1D(modNum + "Residual Y(mm)").fill(hit.getPosition()[2] - zTr);//these hits should be rotated track hits already
                 
@@ -474,6 +515,20 @@
                 
                 
                 
+                    List<RawTrackerHit> rawHits = hit.getRawHits();
+                    for(RawTrackerHit rawHit : rawHits){
+                        
+                        ChannelConstants constants = HPSSVTCalibrationConstants.getChannelConstants((SiSensor) rawHit.getDetectorElement(), rawHit.getIdentifierFieldValue("strip"));
+                        HPSShapeFitParameters fit = _shaper.fitShape(rawHit, constants);
+                        double amp = fit.getAmp();
+                        aida.histogram1D("Amp (HitOnTrack)").fill(amp);
+                    }
+
+                
+                
+                
+                
+                
             }
             List<HPSEcalCluster> clusters = event.get(HPSEcalCluster.class, ecalCollectionName);
 //            System.out.println("Number of ECAL clusters=" + clusters.size());
@@ -657,5 +712,13 @@
         aida.histogram1D("Energy Over Momentum").reset();
         aida.histogram1D("deltaX").reset();
         aida.histogram1D("deltaY").reset();
+        
+        aida.histogram1D("Amp (HitOnTrack)").reset();
+        
+        aida.histogram1D("d0 ").reset();
+        aida.histogram1D("phi ").reset();
+        aida.histogram1D("omega ").reset();
+        aida.histogram1D("tan(lambda) ").reset();
+        aida.histogram1D("z0 ").reset();
     }
 }
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