SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -u -r1.9 -r1.10
--- CalorimeterHitPlots.java 20 Aug 2005 05:24:18 -0000 1.9
+++ CalorimeterHitPlots.java 20 Aug 2005 20:47:58 -0000 1.10
@@ -31,6 +31,7 @@
ICloud1D mcpSingleContribPDG;
ICloud1D hitCorrectedEnergy;
ICloud2D hitRawVsCorrectedEnergy;
+ ICloud1D mcpMissing;
List<SimCalorimeterHit> hits;
@@ -56,6 +57,7 @@
mcpSingleContribPDG = aida.cloud1D(makePlotName("MCParticle Single Contribution PDGID"));
hitCorrectedEnergy = aida.cloud1D(makePlotName("Hit Corrected Energy"));
hitRawVsCorrectedEnergy = aida.cloud2D(makePlotName("Hit Raw vs Corrected Energy"));
+ mcpMissing = aida.cloud1D(makePlotName("Missing MCParticle Contribution"));
}
public void fill()
@@ -74,10 +76,16 @@
EventHeader.LCMetaData metadata = eventHeader.getMetaData(hits);
IDDecoder decoder = metadata.getIDDecoder();
SegmentationBase segmentation = (SegmentationBase)decoder;
-
+ int mcpMissingCount = 0;
for ( SimCalorimeterHit hit : hits)
{
decoder.setID(hit.getCellID());
+
+ /* missing mcp? */
+ if ( hit.getMCParticleCount() == 0 )
+ {
+ mcpMissingCount += 1;
+ }
/* segmentation plots */
if ( segmentation instanceof ProjectiveCylinder ||
@@ -119,14 +127,20 @@
{
MCParticle mcp = hit.getMCParticle(i);
int pdg = mcp.getPDGID();
+
+ /* PDG of MCP */
mcpPDG.fill(pdg);
}
if (nmcp == 1)
{
+ /* PDG of single MCP contrib */
mcpSingleContribPDG.fill(hit.getMCParticle(0).getPDGID());
}
}
+
+ /* missing MCP */
+ mcpMissing.fill(mcpMissingCount);
}
}
}
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -u -r1.2 -r1.3
--- TrackerHitPlots.java 20 Aug 2005 20:40:20 -0000 1.2
+++ TrackerHitPlots.java 20 Aug 2005 20:47:59 -0000 1.3
@@ -8,6 +8,7 @@
import java.util.List;
import hep.aida.ICloud1D;
+import org.lcsim.event.EventHeader.LCMetaData;
import org.lcsim.event.SimTrackerHit;
/**