4 modified files
lcsim/src/org/lcsim/recon/pfa/structural
diff -u -r1.13 -r1.14
--- SetUpDTreeForReclustering.java 4 Feb 2010 17:45:32 -0000 1.13
+++ SetUpDTreeForReclustering.java 19 Mar 2010 20:03:18 -0000 1.14
@@ -8,6 +8,7 @@
import org.lcsim.event.EventHeader;
import org.lcsim.event.Cluster;
import org.lcsim.recon.cluster.directedtree.DirectedTreeDriver;
+import org.lcsim.recon.cluster.nn.NearestNeighborClusterDriver;
import org.lcsim.recon.cluster.mipfinder.ShowerPointFinderDriver;
import org.lcsim.recon.cluster.muonfinder.MuonFinderWrapper;
import org.lcsim.recon.cluster.util.HitNearBarrelEndcapBoundaryDecision;
@@ -198,12 +199,24 @@
mstDriver.registerMetrics(new org.lcsim.recon.cluster.mst.MinimumHitToHitDistance());
add(mstDriver);
} else {
+ if(outputClusterListName.contains("Muon"))
+ {
+ // Don't know how this ever worked for muons!
+ // Fake it with nn
+ FakeDTDriver treeDriver = new FakeDTDriver(5,5,2,0,0.);
+ treeDriver.setInputHitMap(filteredInputHitMapName);
+ treeDriver.setOutputClusterList(outputClusterListName);
+ add(treeDriver);
+ }
+ else
+ {
// Run DTree
DirectedTreeDriver treeDriver = new DirectedTreeDriver();
treeDriver.setInputHitMap(filteredInputHitMapName);
treeDriver.setOutputClusterList(outputClusterListName);
treeDriver.setOutputHitMap(outputHitMapName);
add(treeDriver);
+ }
}
add(new TransientFlagDriver(outputClusterListName));
}
@@ -226,8 +239,7 @@
){
mergeDTreeClustersHCAL.addInputList(clusterListName);
}
- else if( (inputName.compareTo(ci.getDigiCollectionName(CalorimeterType.MUON_BARREL))==0)||
- (inputName.compareTo(ci.getDigiCollectionName(CalorimeterType.MUON_ENDCAP))==0)
+ else if( (inputName.contains("Muon"))
){
mergeDTreeClustersMCAL.addInputList(clusterListName);
}
lcsim/src/org/lcsim/recon/cluster/mipfinder
diff -u -r1.4 -r1.5
--- MIPClusterDriver.java 4 Feb 2010 17:45:33 -0000 1.4
+++ MIPClusterDriver.java 19 Mar 2010 20:03:18 -0000 1.5
@@ -77,7 +77,7 @@
Object from <tt> event</tt>.
@author [log in to unmask]
- @version $Id: MIPClusterDriver.java,v 1.4 2010/02/04 17:45:33 cassell Exp $
+ @version $Id: MIPClusterDriver.java,v 1.5 2010/03/19 20:03:18 cassell Exp $
Modification Log:
-- 01/08/2005 Version 1.0 available in CVS
@@ -151,14 +151,14 @@
List<CalorimeterHit> hits = null;
if ( calType == "EMCal" ) {
- List<CalorimeterHit> barrelHits = event.get(CalorimeterHit.class, ci.getCollectionName(CalorimeterType.EM_BARREL));
- List<CalorimeterHit> endcapHits = event.get(CalorimeterHit.class, ci.getCollectionName(CalorimeterType.EM_ENDCAP));
+ List<CalorimeterHit> barrelHits = event.get(CalorimeterHit.class, ci.getDigiCollectionName(CalorimeterType.EM_BARREL));
+ List<CalorimeterHit> endcapHits = event.get(CalorimeterHit.class, ci.getDigiCollectionName(CalorimeterType.EM_ENDCAP));
hits = new Vector<CalorimeterHit>();
hits.addAll(barrelHits);
hits.addAll(endcapHits);
} else if ( calType == "HCal" ) {
- List<CalorimeterHit> barrelHits = event.get(CalorimeterHit.class, ci.getCollectionName(CalorimeterType.HAD_BARREL));
- List<CalorimeterHit> endcapHits = event.get(CalorimeterHit.class, ci.getCollectionName(CalorimeterType.HAD_ENDCAP));
+ List<CalorimeterHit> barrelHits = event.get(CalorimeterHit.class, ci.getDigiCollectionName(CalorimeterType.HAD_BARREL));
+ List<CalorimeterHit> endcapHits = event.get(CalorimeterHit.class, ci.getDigiCollectionName(CalorimeterType.HAD_ENDCAP));
hits = new Vector<CalorimeterHit>();
hits.addAll(barrelHits);
hits.addAll(endcapHits);
lcsim/src/org/lcsim/recon/cluster/util
diff -u -r1.1 -r1.2
--- CoreReclusterer.java 8 Nov 2007 23:16:00 -0000 1.1
+++ CoreReclusterer.java 19 Mar 2010 20:03:18 -0000 1.2
@@ -10,10 +10,9 @@
package org.lcsim.recon.cluster.util;
import java.util.List;
import java.util.ArrayList;
+import java.util.Collections;
import org.lcsim.event.Cluster;
import org.lcsim.event.CalorimeterHit;
-import org.lcsim.recon.cluster.util.Clusterer;
-import org.lcsim.recon.cluster.util.BasicCluster;
import org.lcsim.recon.cluster.nn.NearestNeighborClusterer;
import hep.physics.vec.Hep3Vector;
import hep.physics.vec.BasicHep3Vector;
@@ -31,6 +30,7 @@
double mipE = .000124;
double thrstepsize = 1.;
Clusterer clusterer;
+ double acc = -1.e-8;
/** Creates a new instance of CoreReclusterer */
public CoreReclusterer()
{
@@ -71,8 +71,6 @@
active.add(c);
int i = 0;
int nactive = active.size();
- int fls = -1;
- int lls = -1;
while(nactive > 0)
{
double hitth = i*thrstepsize*mipE;
@@ -86,9 +84,11 @@
if(h.getRawEnergy() > hitth)hl.add(h);
}
List<Cluster> split = clusterer.createClusters(hl);
- for(int j=0;j<split.size();j++)
+ List<Cluster> temp = new ArrayList<Cluster>();
+ temp.addAll(split);
+ for(int j=0;j<temp.size();j++)
{
- if(split.get(j).getEnergy() < minEcore)split.remove(j);
+ if(temp.get(j).getEnergy() < minEcore)split.remove(temp.get(j));
}
if(split.size() == 0)
{
@@ -105,10 +105,9 @@
}
else
{
- if(fls < 0)fls = i;
- else lls = i;
remove.add(cc);
out.remove(cc);
+ Collections.sort(split, new ClusterESort());
//
// Now build the new clusters from the cores
//
@@ -136,10 +135,11 @@
double[] hpos = h.getPosition();
double mindis = 9999.;
int minc = 0;
+ boolean dbg2 = false;
for(int j=0;j<split.size();j++)
{
- double dissq = getMinDist(hpos,newcl[j]);
- if(dissq < mindis)
+ double dissq = getMinDist(hpos,split.get(j));
+ if( (dissq - mindis)<acc)
{
mindis = dissq;
minc = j;
lcsim/src/org/lcsim/recon/cluster/muonfinder
diff -u -r1.4 -r1.5
--- SimpleMipQualityDecision.java 8 Mar 2010 19:36:39 -0000 1.4
+++ SimpleMipQualityDecision.java 19 Mar 2010 20:03:18 -0000 1.5
@@ -12,13 +12,13 @@
* modified from the code written by Mat.
*
* @author [log in to unmask]
- * @version $Id: SimpleMipQualityDecision.java,v 1.4 2010/03/08 19:36:39 cassell Exp $
+ * @version $Id: SimpleMipQualityDecision.java,v 1.5 2010/03/19 20:03:18 cassell Exp $
*/
public class SimpleMipQualityDecision implements DecisionMakerSingle<Cluster>
{
- boolean removeUpperHit = false;
+ boolean removeUpperHit = true;
public SimpleMipQualityDecision() {
// No user-settable options for now
}
CVSspam 0.2.8