Print

Print


Commit in lcsim/src/org/lcsim/contrib/uiowa/structural on MAIN
TestFragmentIdentifier.java+39-31.5 -> 1.6
Add more plots

lcsim/src/org/lcsim/contrib/uiowa/structural
TestFragmentIdentifier.java 1.5 -> 1.6
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           ;
 
 }
CVSspam 0.2.8