lcsim-contrib/src/main/java/org/lcsim/contrib/Cassell/recon/analysis
diff -u -r1.1.1.1 -r1.2
--- ClusterPurityPlots.java 10 Dec 2008 22:03:06 -0000 1.1.1.1
+++ ClusterPurityPlots.java 4 Nov 2010 15:06:05 -0000 1.2
@@ -51,6 +51,27 @@
int itype = pt.mapTypeToRType(pt.getType(p));
double clE = c.getEnergy();
double purity = ccc.getMaxParticleE()/clE;
+ double pi0pur = purity;
+ if(p.getMass() == 0.)
+ {
+ MCParticle parent = p.getParents().get(0);
+ if(parent.getPDGID() == 111)
+ {
+ Map<MCParticle,Double> pemap = ccc.getEmap()[0];
+ double E = 0.;
+ for(MCParticle pp:pemap.keySet())
+ {
+ if(pp.getParents().size() > 0)
+ {
+ if(pp.getParents().get(0) == parent)
+ {
+ E += pemap.get(pp);
+ }
+ }
+ }
+ pi0pur = E/clE;
+ }
+ }
double meanEperhit = clE/c.getCalorimeterHits().size();
if((clE > .5)&&(c.getCalorimeterHits().size() > 2))
aida.cloud2D(pre+"/"+rtype[itype]+"/meanEperhit vs E",nmax).fill(clE,meanEperhit);
@@ -68,6 +89,10 @@
aida.histogram1D(pre+"/"+rtype[itype]+"/Max contributor Purity", 101, 0., 1.01).fill(purity);
aida.histogram1D(pre+"/All clusters/Max contributor wted Purity", 101, 0., 1.01).fill(purity,clE);
aida.histogram1D(pre+"/"+rtype[itype]+"/Max contributor wted Purity", 101, 0., 1.01).fill(purity,clE);
+ aida.histogram1D(pre+"/All clusters/Max contributor Purity2", 101, 0., 1.01).fill(pi0pur);
+ aida.histogram1D(pre+"/"+rtype[itype]+"/Max contributor Purity2", 101, 0., 1.01).fill(pi0pur);
+ aida.histogram1D(pre+"/All clusters/Max contributor wted Purity2", 101, 0., 1.01).fill(pi0pur,clE);
+ aida.histogram1D(pre+"/"+rtype[itype]+"/Max contributor wted Purity2", 101, 0., 1.01).fill(pi0pur,clE);
int ebin = 0;
for(int i=0;i<binEmax.length;i++)
{