Author: [log in to unmask]
Date: Wed Aug 5 12:49:28 2015
New Revision: 3338
Log:
Added new plots to the Moller MC analysis.
Modified:
java/trunk/users/src/main/java/org/hps/users/kmccarty/ParticleMCAnalysisDriver.java
Modified: java/trunk/users/src/main/java/org/hps/users/kmccarty/ParticleMCAnalysisDriver.java
=============================================================================
--- java/trunk/users/src/main/java/org/hps/users/kmccarty/ParticleMCAnalysisDriver.java (original)
+++ java/trunk/users/src/main/java/org/hps/users/kmccarty/ParticleMCAnalysisDriver.java Wed Aug 5 12:49:28 2015
@@ -22,6 +22,9 @@
private IHistogram1D allPlot = aida.histogram1D("MC Analysis/Electron Energy Distribution", 110, 0, 2.2);
private IHistogram1D electronPlot = aida.histogram1D("MC Analysis/Electron Energy Distribution", 110, 0, 2.2);
private IHistogram1D positronPlot = aida.histogram1D("MC Analysis/Positron Energy Distribution", 110, 0, 2.2);
+ private IHistogram1D momentumXPlot = aida.histogram1D("MC Analysis/Particle x-Momentum Distribution", 110, 0.0, 1.1);
+ private IHistogram1D momentumYPlot = aida.histogram1D("MC Analysis/Particle y-Momentum Distribution", 110, 0.0, 1.1);
+ private IHistogram1D momentumZPlot = aida.histogram1D("MC Analysis/Particle z-Momentum Distribution", 110, 0.0, 1.1);
private IHistogram1D anglePlot = aida.histogram1D("MC Analysis/Positron\\Electron Pair Angle Distribution", 90, 0, 180);
private IHistogram1D momentumSumPlot = aida.histogram1D("MC Analysis/Positron\\Electron Momentum Sum Distribution", 220, 0, 2.2);
private IHistogram2D momentumPlot = aida.histogram2D("MC Analysis/Particle Momentum Distribution", 110, 0.0, 1.1, 110, 0.0, 1.1);
@@ -56,6 +59,11 @@
if(particle.getCharge() > 0) {
chargedParticles++;
}
+
+ // Get the particle momentum in each direction.
+ momentumXPlot.fill(particle.getMomentum().x());
+ momentumYPlot.fill(particle.getMomentum().y());
+ momentumZPlot.fill(particle.getMomentum().z());
// Populate the general momentum plot.
allPlot.fill(particle.getMomentum().magnitude());
@@ -96,7 +104,8 @@
// Calculate the sum of the sum of the vector components, squared.
double sum = 0;
for(int i = 0; i < 3; i++) {
- sum += ((v1.v()[i] + v2.v()[i]) * (v1.v()[i] + v2.v()[i]));
+ double elementSum = v1.v()[i] + v2.v()[i];
+ sum += (elementSum * elementSum);
}
// Return the square root of the sum.
|