Commit in java/trunk/users/src/main/java/org/hps/users/omoreno on MAIN
ExtrapolationAnalysis.java+101-48801 -> 802
Added several plots to ExtrapolationAnalysis.

java/trunk/users/src/main/java/org/hps/users/omoreno
ExtrapolationAnalysis.java 801 -> 802
--- java/trunk/users/src/main/java/org/hps/users/omoreno/ExtrapolationAnalysis.java	2014-07-18 20:54:52 UTC (rev 801)
+++ java/trunk/users/src/main/java/org/hps/users/omoreno/ExtrapolationAnalysis.java	2014-07-18 23:51:39 UTC (rev 802)
@@ -61,49 +61,69 @@
 		//--- Plots of residuals at scoring plane ---//
 		//-------------------------------------------//
 		plotter = PlotUtils.setupPlotter("Residuals at Scoring plane", 3, 2);
-		PlotUtils.setup1DRegion(plotter, "Top tracks - Bend plane residuals at scoring plane", 0,
-				"((x Extrapolated track position) - (x Scoring plane position)) (mm)",
-				aida.histogram1D("Top tracks - Bend plane residual at scoring plane", 60, -30, 30));
-		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Bend plane residuals at scoring plane", 1,
-				"((x Extrapolated track position) - (x Scoring plane position)) (mm)",
-				aida.histogram1D("Bottom tracks - Bend plane residuals at scoring plane", 60, -30, 30));
-		PlotUtils.setup1DRegion(plotter, "Top tracks - Non-bend plane residuals at scoring plane", 2,
-				"((y Extrapolated track position) - (y Scoring plane position)) (mm)",
-				aida.histogram1D("Top tracks - Non-bend plane residuals at scoring plane", 30, -15, 15));
-		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Non-bend plane residuals at scoring plane", 3,
-				"((y Extrapolated track position) - (y Scoring plane position)) (mm)",
-				aida.histogram1D("Bottom tracks - Non-bend plane residuals at scoring plane", 30, -15, 15));
-		PlotUtils.setup1DRegion(plotter, "Top tracks - z residuals at scoring plane", 4, 
-				"((z Extrapolated track position) - (z Scoring plane position)) (mm)",
-				aida.histogram1D("Top tracks - z residuals at scoring plane", 10, -5, 5));
-		PlotUtils.setup1DRegion(plotter, "Bottom tracks - z residuals at scoring plane", 5, 
-				"((z Extrapolated track position) - (z Scoring plane position)) (mm)",
-				aida.histogram1D("Bottom tracks - z residuals at scoring plane", 10, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - Bend plane residuals at scoring plane", 0, "x_{ep} - x_{sp} (mm)",
+				aida.histogram1D("Top electron tracks - Bend plane residual at scoring plane", 60, -30, 30));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - Bend plane residuals at scoring plane", 0, "x_{ep} - x_{sp} (mm)",
+				aida.histogram1D("Top positron tracks - Bend plane residual at scoring plane", 60, -30, 30));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Bend plane residuals at scoring plane", 1, "x_{ep} - x_{sp} (mm)",
+				aida.histogram1D("Bottom electron tracks - Bend plane residuals at scoring plane", 60, -30, 30));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Bend plane residuals at scoring plane", 1, "x_{ep} - x_{sp} (mm)",
+				aida.histogram1D("Bottom positron tracks - Bend plane residuals at scoring plane", 60, -30, 30));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - Non-bend plane residuals at scoring plane", 2,"y_{ep} - y_{sp} (mm)", 
+				aida.histogram1D("Top electron tracks - Non-bend plane residuals at scoring plane", 30, -15, 15));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - Non-bend plane residuals at scoring plane", 2,"y_{ep} - y_{sp} (mm)", 
+				aida.histogram1D("Top positron tracks - Non-bend plane residuals at scoring plane", 30, -15, 15));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Non-bend plane residuals at scoring plane", 3,"y_{ep} - y_{sp} (mm)", 
+				aida.histogram1D("Bottom electron tracks - Non-bend plane residuals at scoring plane", 30, -15, 15));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Non-bend plane residuals at scoring plane", 3,"y_{ep} - y_{sp} (mm)", 
+				aida.histogram1D("Bottom positron tracks - Non-bend plane residuals at scoring plane", 30, -15, 15));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - z residuals at scoring plane", 4, "z_{ep} - z_{sp} (mm)",
+				aida.histogram1D("Top electron tracks - z residuals at scoring plane", 10, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - z residuals at scoring plane", 4, "z_{ep} - z_{sp} (mm)",
+				aida.histogram1D("Top positron tracks - z residuals at scoring plane", 10, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - z residuals at scoring plane", 5, "z_{ep} - z_{sp} (mm)",
+				aida.histogram1D("Bottom electron tracks - z residuals at scoring plane", 10, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - z residuals at scoring plane", 5, "z_{ep} - z_{sp} (mm)",
+				aida.histogram1D("Bottom positron tracks - z residuals at scoring plane", 10, -5, 5));
 		plotters.add(plotter);	
 		
 		//--- Plots of residuals at target ---//
 		//------------------------------------//
 		plotter = PlotUtils.setupPlotter("Residuals at target", 3, 2);
-		PlotUtils.setup1DRegion(plotter, "Top tracks - Bend plane residuals at target", 0,
-				"((x Extrapolated track position) - (x Scoring plane position)) (mm)",
-				aida.histogram1D("Top tracks - Bend plane residual at target", 50, -5, 5));
-		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Bend plane residuals at target", 1,
-				"((x Extrapolated track position) - (x Scoring plane position)) (mm)",
-				aida.histogram1D("Bottom tracks - Bend plane residuals at target", 50, -5, 5));
-		PlotUtils.setup1DRegion(plotter, "Top tracks - Non-bend plane residuals at target", 2,
-				"((y Extrapolated track position) - (y Scoring plane position)) (mm)",
-				aida.histogram1D("Top tracks - Non-bend plane residuals at target", 50, -5, 5));
-		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Non-bend plane residuals at target", 3,
-				"((y Extrapolated track position) - (y Scoring plane position)) (mm)",
-				aida.histogram1D("Bottom tracks - Non-bend plane residuals at target", 50, -5, 5));
-		PlotUtils.setup1DRegion(plotter, "Top tracks - z residuals at target", 4, 
-				"((z Extrapolated track position) - (z Scoring plane position)) (mm)",
-				aida.histogram1D("Top tracks - z residuals at target", 50, -5, 5));
-		PlotUtils.setup1DRegion(plotter, "Bottom tracks - z residuals at target", 5, 
-				"((z Extrapolated track position) - (z Scoring plane position)) (mm)",
-				aida.histogram1D("Bottom tracks - z residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - Bend plane residuals at target", 0, "x_{ep} - x_{sp} (mm)",
+				aida.histogram1D("Top electron tracks - Bend plane residual at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - Bend plane residuals at target", 0, "x_{ep} - x_{sp} (mm)",
+				aida.histogram1D("Top positron tracks - Bend plane residual at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Bend plane residuals at target", 1, "x_{ep} - x_{sp} (mm)",
+				aida.histogram1D("Bottom electron tracks - Bend plane residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Bend plane residuals at target", 1, "x_{ep} - x_{sp} (mm)",
+				aida.histogram1D("Bottom positron tracks - Bend plane residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - Non-bend plane residuals at target", 2, "y_{ep} - y_{sp} (mm)",
+				aida.histogram1D("Top electron tracks - Non-bend plane residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - Non-bend plane residuals at target", 2, "y_{ep} - y_{sp} (mm)",
+				aida.histogram1D("Top positron tracks - Non-bend plane residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Non-bend plane residuals at target", 3, "y_{ep} - y_{sp} (mm)",
+				aida.histogram1D("Bottom electron tracks - Non-bend plane residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - Non-bend plane residuals at target", 3, "y_{ep} - y_{sp} (mm)",
+				aida.histogram1D("Bottom positron tracks - Non-bend plane residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - z residuals at target", 4, "z_{ep} - z_{sp} (mm)",
+				aida.histogram1D("Top electron tracks - z residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Top tracks - z residuals at target", 4, "z_{ep} - z_{sp} (mm)",
+				aida.histogram1D("Top positron tracks - z residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - z residuals at target", 5, "z_{ep} - z_{sp} (mm)",
+				aida.histogram1D("Bottom electron tracks - z residuals at target", 50, -5, 5));
+		PlotUtils.setup1DRegion(plotter, "Bottom tracks - z residuals at target", 5, "z_{ep} - z_{sp} (mm)",
+				aida.histogram1D("Bottom positron tracks - z residuals at target", 50, -5, 5));
 		plotters.add(plotter);	
 		
+		//--- Plot of residuals at scoring plane vs momentum ---//
+		//------------------------------------------------------//
+		plotter = PlotUtils.setupPlotter("Residuals vs Momentum at scoring plane", 1, 1);
+		PlotUtils.setup2DRegion(plotter, "Bend plane residuals vs momentum at scoring plane", 0, 
+				"", "",
+				aida.histogram2D("Bend plane residuals at scoring plane", 5, 0, 2.5, 60, -30, 30));
+		plotters.add(plotter);
+		
 		for(IPlotter iPlotter : plotters){
 			iPlotter.show(); 
 		}
@@ -122,6 +142,13 @@
 			// Get the track
 			Track track = (Track) trackToScoringPlaneHitRelation.getFrom();
 			
+			// Get the track momentum
+			/*
+			double[] momentum = track.getTrackStates().get(0).getMomentum();
+			double p = Math.sqrt(momentum[0]*momentum[0] + momentum[1]*momentum[1] + momentum[2]*momentum[2]);
+			this.printVerbose("Track momentum: " + p);
+			*/
+			
 			// Get the corresponding scoring plane hit
 			SimTrackerHit scoringPlaneHit = (SimTrackerHit) trackToScoringPlaneHitRelation.getTo();
 			Hep3Vector scoringPlaneHitPosition = scoringPlaneHit.getPositionVec();
@@ -144,13 +171,26 @@
 			double deltaZ = trackPositionAtScoringPlane.z() - scoringPlaneHitPosition.z();
 		
 			if(track.getTrackerHits().get(0).getPosition()[2] > 0){
-				aida.histogram1D("Top tracks - Bend plane residual at scoring plane").fill(deltaX);
-				aida.histogram1D("Top tracks - Non-bend plane residuals at scoring plane").fill(deltaY);
-				aida.histogram1D("Top tracks - z residuals at scoring plane").fill(deltaZ);
+				if(track.getTrackStates().get(0).getOmega() > 0){
+					aida.histogram1D("Top positron tracks - Bend plane residual at scoring plane").fill(deltaX);
+					aida.histogram1D("Top positron tracks - Non-bend plane residuals at scoring plane").fill(deltaY);
+					aida.histogram1D("Top positron tracks - z residuals at scoring plane").fill(deltaZ);	
+				} else { 
+					aida.histogram1D("Top electron tracks - Bend plane residual at scoring plane").fill(deltaX);
+					aida.histogram1D("Top electron tracks - Non-bend plane residuals at scoring plane").fill(deltaY);
+					aida.histogram1D("Top electron tracks - z residuals at scoring plane").fill(deltaZ);	
+				}
+				//aida.histogram2D("Bend plane residuals at scoring plane").fill(p, deltaX);
 			} else { 
-				aida.histogram1D("Bottom tracks - Bend plane residuals at scoring plane").fill(deltaX);
-				aida.histogram1D("Bottom tracks - Non-bend plane residuals at scoring plane").fill(deltaY);
-				aida.histogram1D("Bottom tracks - z residuals at scoring plane").fill(deltaZ);
+				if(track.getTrackStates().get(0).getOmega() > 0){
+					aida.histogram1D("Bottom positron tracks - Bend plane residuals at scoring plane").fill(deltaX);
+					aida.histogram1D("Bottom positron tracks - Non-bend plane residuals at scoring plane").fill(deltaY);
+					aida.histogram1D("Bottom positron tracks - z residuals at scoring plane").fill(deltaZ);
+				} else { 
+					aida.histogram1D("Bottom electron tracks - Bend plane residuals at scoring plane").fill(deltaX);
+					aida.histogram1D("Bottom electron tracks - Non-bend plane residuals at scoring plane").fill(deltaY);
+					aida.histogram1D("Bottom electron tracks - z residuals at scoring plane").fill(deltaZ);
+				}
 			}
 		}
 		
@@ -175,13 +215,26 @@
 			double deltaZ = trackPositionAtOrigin.z() - particle.getOriginZ();
 			
 			if(track.getTrackerHits().get(0).getPosition()[2] > 0){
-				aida.histogram1D("Top tracks - Bend plane residual at target").fill(deltaX);
-				aida.histogram1D("Top tracks - Non-bend plane residuals at target").fill(deltaY);
-				aida.histogram1D("Top tracks - z residuals at target").fill(deltaZ);
+				if(track.getTrackStates().get(0).getOmega() > 0){
+					aida.histogram1D("Top positron tracks - Bend plane residual at target").fill(deltaX);
+					aida.histogram1D("Top positron tracks - Non-bend plane residuals at target").fill(deltaY);
+					aida.histogram1D("Top positron tracks - z residuals at target").fill(deltaZ);
+				} else { 
+					aida.histogram1D("Top electron tracks - Bend plane residual at target").fill(deltaX);
+					aida.histogram1D("Top electron tracks - Non-bend plane residuals at target").fill(deltaY);
+					aida.histogram1D("Top electron tracks - z residuals at target").fill(deltaZ);
+				}
 			} else { 
-				aida.histogram1D("Bottom tracks - Bend plane residuals at target").fill(deltaX);
-				aida.histogram1D("Bottom tracks - Non-bend plane residuals at target").fill(deltaY);
-				aida.histogram1D("Bottom tracks - z residuals at target").fill(deltaZ);
+				
+				if(track.getTrackStates().get(0).getOmega() > 0){
+					aida.histogram1D("Bottom positron tracks - Bend plane residuals at target").fill(deltaX);
+					aida.histogram1D("Bottom positron tracks - Non-bend plane residuals at target").fill(deltaY);
+					aida.histogram1D("Bottom positron tracks - z residuals at target").fill(deltaZ);
+				} else { 
+					aida.histogram1D("Bottom electron tracks - Bend plane residuals at target").fill(deltaX);
+					aida.histogram1D("Bottom electron tracks - Non-bend plane residuals at target").fill(deltaY);
+					aida.histogram1D("Bottom electron tracks - z residuals at target").fill(deltaZ);
+				}
 			}
 		}
 	}
SVNspam 0.1