lcsim/src/org/lcsim/contrib/uiowa/structural
diff -u -r1.5 -r1.6
--- TestFragmentIdentifier.java 9 Jan 2006 20:50:09 -0000 1.5
+++ TestFragmentIdentifier.java 12 Jan 2006 22:23:03 -0000 1.6
@@ -19,7 +19,7 @@
* Test the performance of a FragmentIdentifier by
* comparing it to another, cheating FragmentIdentifier.
*
- * @version $Id: TestFragmentIdentifier.java,v 1.5 2006/01/09 20:50:09 mcharles Exp $
+ * @version $Id: TestFragmentIdentifier.java,v 1.6 2006/01/12 22:23:03 mcharles Exp $
*/
public class TestFragmentIdentifier implements FragmentIdentifier
@@ -71,6 +71,18 @@
m_HCAL_hdistToParentWhenFragFrag = m_histoFactory.createCloud1D("distToParentWhenCorrect (test=frag, cheat=frag) HCAL");
m_HCAL_hdistToParentWhenNonFrag = m_histoFactory.createCloud1D("distToParentWhenWrong (test=nonfrag, cheat=frag) HCAL");
+ m_HCAL_hnumHitsWhenFrag = m_histoFactory.createCloud1D("numHits (cheat=frag) HCAL");
+ m_HCAL_hnumHitsWhenNon = m_histoFactory.createCloud1D("numHits (cheat=nonfrag) HCAL");
+ m_HCAL_hdocaWhenFrag = m_histoFactory.createCloud1D("doca (cheat=frag) HCAL");
+ m_HCAL_hdocaWhenNon = m_histoFactory.createCloud1D("doca (cheat=nonfrag) HCAL");
+
+
+ m_HCAL_hdistToParentWhenFragFrag_vs_numHits = m_histoFactory.createCloud2D("distToParentWhenCorrect vs # hits(test=frag, cheat=frag) HCAL");
+ m_HCAL_hdistToParentWhenNonFrag_vs_numHits = m_histoFactory.createCloud2D("distToParentWhenWrong vs # hits (test=nonfrag, cheat=frag) HCAL");
+
+ m_HCAL_hdistToParentWhenFragFrag_vs_numHits_parentECAL = m_histoFactory.createCloud2D("distToParentWhenCorrect vs # hits(test=frag, cheat=frag) HCAL, parent ECAL");
+ m_HCAL_hdistToParentWhenNonFrag_vs_numHits_parentECAL = m_histoFactory.createCloud2D("distToParentWhenWrong vs # hits (test=nonfrag, cheat=frag) HCAL, parent ECAL");
+
} catch (IOException ioe1) {
ioe1.printStackTrace();
@@ -116,6 +128,14 @@
doca = MiscUtilities.findDOCAToPoint(linePosAndDir[0], linePosAndDir[1], originPoint);
}
+ if (cheat_isFragment) {
+ m_HCAL_hnumHitsWhenFrag.fill(numHits);
+ if (numHits>=4) { m_HCAL_hdocaWhenFrag.fill(doca); }
+ } else {
+ m_HCAL_hnumHitsWhenNon.fill(numHits);
+ if (numHits>=4) { m_HCAL_hdocaWhenNon.fill(doca); }
+ }
+
if (test_isFragment && cheat_isFragment) {
m_hnumHitsWhenFragFrag.fill(numHits);
if (numHits>=4) { m_hdocaWhenFragFrag.fill(doca); m_hnumHitsVsDocaWhenFragFrag.fill(numHits,doca); }
@@ -156,14 +176,20 @@
Hep3Vector[] parentPosAndDir = MiscUtilities.getPositionAndDirection(parent);
Hep3Vector[] linePosAndDir = MiscUtilities.getPositionAndDirection(clus);
if (parentPosAndDir != null && linePosAndDir != null && parentPosAndDir[0] != null && linePosAndDir[0] != null) {
- Hep3Vector displacement = VecOp.sub(parentPosAndDir[0], linePosAndDir[0]);
- double distance = displacement.magnitude();
+ //Hep3Vector displacement = VecOp.sub(parentPosAndDir[0], linePosAndDir[0]);
+ //double distance = displacement.magnitude();
+ double distance = MiscUtilities.distance(parent, clus);
+ boolean parentECAL = ! (isHCAL(parent));
if (test_isFragment) {
m_hdistToParentWhenFragFrag.fill(distance);
if (hcal) { m_HCAL_hdistToParentWhenFragFrag.fill(distance); }
+ if (hcal) { m_HCAL_hdistToParentWhenFragFrag_vs_numHits.fill(distance, numHits); }
+ if (hcal && parentECAL) { m_HCAL_hdistToParentWhenFragFrag_vs_numHits_parentECAL.fill(distance, numHits); }
} else {
m_hdistToParentWhenNonFrag.fill(distance);
if (hcal) { m_HCAL_hdistToParentWhenNonFrag.fill(distance); }
+ if (hcal) { m_HCAL_hdistToParentWhenNonFrag_vs_numHits.fill(distance, numHits); }
+ if (hcal && parentECAL) { m_HCAL_hdistToParentWhenNonFrag_vs_numHits_parentECAL.fill(distance, numHits); }
}
}
}
@@ -253,5 +279,15 @@
ICloud1D m_HCAL_hdistToParentWhenFragFrag;
ICloud1D m_HCAL_hdistToParentWhenNonFrag;
+ ICloud2D m_HCAL_hdistToParentWhenFragFrag_vs_numHits;
+ ICloud2D m_HCAL_hdistToParentWhenNonFrag_vs_numHits;
+
+ ICloud2D m_HCAL_hdistToParentWhenFragFrag_vs_numHits_parentECAL;
+ ICloud2D m_HCAL_hdistToParentWhenNonFrag_vs_numHits_parentECAL;
+
+ ICloud1D m_HCAL_hnumHitsWhenFrag ;
+ ICloud1D m_HCAL_hnumHitsWhenNon ;
+ ICloud1D m_HCAL_hdocaWhenFrag ;
+ ICloud1D m_HCAL_hdocaWhenNon ;
}