SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -u -r1.11 -r1.12
--- MCParticlePlots.java 24 Aug 2005 07:42:03 -0000 1.11
+++ MCParticlePlots.java 1 Sep 2005 17:44:07 -0000 1.12
@@ -12,6 +12,7 @@
import java.util.HashMap;
import static java.lang.Math.sqrt;
import hep.aida.ICloud1D;
+import hep.aida.ICloud2D;
import hep.aida.IHistogram1D;
import hep.aida.IHistogram2D;
import hep.physics.vec.VecOp;
@@ -80,7 +81,7 @@
mcpCosTheta = aida.cloud1D(makePlotName("Final State Momentum CosTheta"));
mcpPhi = aida.cloud1D(makePlotName("Final State Momentum Phi"));
mcpVtxToEPDist = aida.cloud1D(makePlotName("Vertex to Endpoint Distance"));
- mcpVtxToEPDistLTMeV = aida.histogram1D(makePlotName("Vertex to Endpoint Distance for kE < 1 MeV"), 500, 0., 2000.0);
+ mcpVtxToEPDistLTMeV = aida.histogram1D(makePlotName("Vertex to Endpoint Distance for kE < 1 MeV"), 200, 0., 100.0);
mcpVtxToEPDistGTMeV = aida.histogram1D(makePlotName("Vertex to Endpoint Distance for kE > 1 MeV"), 200, 0., 24000.0);
mcpKE = aida.histogram1D(makePlotName("Kinetic Energy"), 200, 0.0, 10.0);
mcpNoEndPoint = aida.cloud1D(makePlotName("No End Point"));
@@ -213,6 +214,20 @@
aida.cloud2D(makePlotName(particleName + ": Endpoint R vs Z")).fill(
HitUtil.getCylindricalRadius(particle.getEndPoint().v()),
particle.getEndPoint().z());
+
+ /* E vs E in EP daughters */
+ double dauE = 0.;
+ for ( MCParticle dau : particle.getDaughters() )
+ {
+ if ( !dau.getSimulatorStatus().vertexIsNotEndpointOfParent() ) {
+ dauE += dau.getEnergy();
+ }
+ }
+ if ( dauE > 0 )
+ {
+ aida.cloud2D(makePlotName(particleName + ": Final State Particle Energy vs Total Energy of Endpoint Daughters")).fill(
+ particle.getEnergy(), dauE);
+ }
}
/* increment particle count */
@@ -226,7 +241,7 @@
else
{
particleCounts.put(particleName, 1);
- }
+ }
}
tree.cd("..");
}