Print

Print


Commit in lcsim/src/org/lcsim/contrib/uiowa/MuonFinder on MAIN
MuonFinder.java+18-41.10 -> 1.11
use original hit to remove upper hit in Muon detector

lcsim/src/org/lcsim/contrib/uiowa/MuonFinder
MuonFinder.java 1.10 -> 1.11
diff -u -r1.10 -r1.11
--- MuonFinder.java	15 Oct 2008 00:51:33 -0000	1.10
+++ MuonFinder.java	17 Oct 2008 00:31:39 -0000	1.11
@@ -44,7 +44,7 @@
     EventHeader m_event;
 
     protected HelixExtrapolator m_findCluster = new org.lcsim.recon.pfa.identifier.LocalHelixExtrapolator();
-    protected boolean useMuonhits = false;
+    protected boolean useMuonhits = true;
 
     public MuonFinder(String tracklist, String inCal, String inMu, String outMap, String outMapTrackToClusters){
         _inCal = inCal;
@@ -52,6 +52,11 @@
         _outHitMap = outMap;
         _tracklist = tracklist;
 	_outMapTrackToClusters = outMapTrackToClusters;
+        org.lcsim.contrib.uiowa.CalorimeterHitTimeCutDecision dec = new org.lcsim.contrib.uiowa.CalorimeterHitTimeCutDecision(100);
+        add(new ListFilterDriver(dec, "MuonBarrHits", "CorrMuonBarrHits", CalorimeterHit.class));
+        add(new ListFilterDriver(dec, "MuonEndcapHits", "CorrMuonEndcapHits", CalorimeterHit.class));
+        add(new SubsetFlagDriver("CorrMuonBarrHits"));
+        add(new SubsetFlagDriver("CorrMuonEndcapHits"));
     }
 
     public void process(EventHeader event)
@@ -75,8 +80,8 @@
             calhits.addAll(allHitsEcalEndcap);
             calhits.addAll(allHitsHcalBarrel);
             calhits.addAll(allHitsHcalEndcap);
-            List<CalorimeterHit> allHitsMUBarrel = event.get(CalorimeterHit.class, "MuonBarrDigiHits");
-            List<CalorimeterHit> allHitsMUEndcap = event.get(CalorimeterHit.class, "MuonEndcapDigiHits");
+            List<CalorimeterHit> allHitsMUBarrel = event.get(CalorimeterHit.class, "CorrMuonBarrHits");
+            List<CalorimeterHit> allHitsMUEndcap = event.get(CalorimeterHit.class, "CorrMuonEndcapHits");
             mudethits.addAll(allHitsMUBarrel);
             mudethits.addAll(allHitsMUEndcap);
         }else{
@@ -301,13 +306,22 @@
 
         for(Track tr : outputmap.keySet()){
             BasicCluster tmpClus = new BasicCluster();
+            BasicCluster muonClus = new BasicCluster();
+            Cluster calmip = mipmap.get(tr);
             for(Cluster clus : outputmap.get(tr)){
                 for(CalorimeterHit hit : clus.getCalorimeterHits()){
+                    if(calmip != clus) { muonClus.addHit(hit); }
                     tmpClus.addHit(hit);
                     muonclustershits.add(hit);
                 }
             }
-            MuonMapTrackToCluster.put(tr,tmpClus);
+          
+            //Check Quality for mip in Muon Detector only 
+            SimpleMipQualityDecision check = new SimpleMipQualityDecision();
+            boolean passesCheck = check.valid(muonClus);
+            if(passesCheck) {
+                MuonMapTrackToCluster.put(tr,tmpClus);
+            }
         }
 
         HitMap muonMap = new HitMap(muonclustershits); 
CVSspam 0.2.8