Print

Print


Commit in lcsim/src/org/lcsim/recon/muon on MAIN
MuonCalSegmentFinder.java+17-101.8 -> 1.9
changes to check with wired

lcsim/src/org/lcsim/recon/muon
MuonCalSegmentFinder.java 1.8 -> 1.9
diff -u -r1.8 -r1.9
--- MuonCalSegmentFinder.java	8 Jan 2006 15:18:55 -0000	1.8
+++ MuonCalSegmentFinder.java	27 Jan 2006 20:33:44 -0000	1.9
@@ -1,9 +1,10 @@
 package org.lcsim.recon.muon;
 
+import hep.physics.vec.BasicHep3Vector;
+import hep.physics.vec.Hep3Vector;
 import java.util.Vector;
 import java.util.List;
 import java.util.Map;
-import java.util.HashMap;
 import org.lcsim.geometry.*;
 import org.lcsim.util.step.TrackStepper;  //  C.M. Stepper
 import org.lcsim.event.EventHeader;
@@ -13,7 +14,6 @@
 import org.lcsim.geometry.layer.LayerStack;
 import org.lcsim.geometry.layer.LayerSlice;
 import org.lcsim.event.CalorimeterHit;
-import org.lcsim.recon.cluster.directedtree.MyTools;
 
 /**
  * Muon Segment Finder for muon calorimeter
@@ -31,8 +31,8 @@
         super(det, subdetectorName);
         
         // Set the nearest neighbor cuts to default values
-        setPhiNNCut(2);
-        setThetaNNCut(2);
+        setPhiNNCut(0);//2
+        setThetaNNCut(0);//2
        
 	// getting info from the coil
 	MultiLayerTracker coilsub = (MultiLayerTracker)det.getSubdetectors().get("SolenoidCoilBarrel");
@@ -202,6 +202,8 @@
 	System.out.println("Problem: rpVect2="+rpVect[2]+", zmax="+zmax+", nr="+nr);
         while (Math.abs(rpVect[2]) < zmax && nr < nLayers )
         {
+           Hep3Vector v = new BasicHep3Vector(rpVect[0],rpVect[1],rpVect[2]);
+           hitPos.add(v);
 //             // Add cell to list            
 // 	    int iphi = xyzToPhiBin(rpVect);
 // 	    int itheta = xyzToThetaBin(rpVect);
@@ -212,16 +214,16 @@
 // 	    Long cellid = encoder.getID();
 
 	    // more general way
-	    long virtualID = segm.findCellContainingXYZ( rpVect );
+//	    long virtualID = segm.findCellContainingXYZ( rpVect );
 	    // this works for projective geometries only
 // 	    assert cellid == virtualID
 // 		: "*** virtual cell problem: "
 // 		+" cellID="+MyTools.printID(cellid)
 // 		+", virtualID="+MyTools.printID(virtualID);
 
- 	    System.out.println("adding virtual hit: cellid="
-			       +MyTools.printID(virtualID));
-	    cellList.add(virtualID);
+//	    System.out.println("adding virtual hit: cellid="
+//			       +MyTools.printID(virtualID));
+//	    cellList.add(virtualID);
 
 	    if(stpr.getStopTkELow())break; // C.M.
 	    // Go on to the next layer
@@ -237,14 +239,19 @@
         // Save number of layers track passed through
         
         numLayersHit = nr;
-        
+        rpVect=stpr.getNewRp();
+        if((nr==nLayers)|| (rpVect[2]>=zmax))
+        {
+           Hep3Vector v = new BasicHep3Vector(rpVect[0],rpVect[1],rpVect[2]);
+           hitPos.add(v);   
+        }
         // Now match the cells on this list to calorimeter hits
         
         //		HistogramFolder.setDefaultFolder("/MUDet");		// C.M.-27Jan03- Folder
         
         Map<Long,CalorimeterHit> muhits = dataMgr.getCollHitMap(muonName);
 	System.out.println("# muon hits: "+muhits.size());
-	matchHitsFast( segm, dataMgr.getCollHitMap(muonName), true );
+//	matchHitsFast( segm, dataMgr.getCollHitMap(muonName), true );
         //		HistogramFolder.setDefaultFolder("..");			// C.M.-27Jan03- Folder
     }
    
CVSspam 0.2.8