lcsim/src/org/lcsim/contrib/uiowa/structural
diff -u -r1.2 -r1.3
--- ExamplePFA.java 1 Oct 2005 01:35:41 -0000 1.2
+++ ExamplePFA.java 14 Oct 2005 17:53:34 -0000 1.3
@@ -11,10 +11,6 @@
public class ExamplePFA extends Driver
{
- public ExamplePFA() {
- this(false);
- }
-
public ExamplePFA(boolean writeLikelihood)
{
// Begin with a big-scale cluster set, made with the MST:
@@ -55,29 +51,37 @@
add(remapTracks);
// Find clumps within clusters
+ ClumpFinder findClumps = new ClumpFinder("MSTCluster linked", "Track segments linked", "Clumps");
+ add(findClumps);
// Run likelihood structural analysis
- if (false) {
- ClusterAssociator assoc = null;
+ if (true) {
+ ClusterAssociator assoc = new ClusterEnergyAssociator();
if (writeLikelihood) {
// Obtain and write likelihood histograms
+ System.out.println("ExamplePFA: I will obtain and write out likelihood histograms.");
LikelihoodEvaluator eval = new LikelihoodEvaluator();
- LikelihoodFindingStructuralDriver likelihoodWriter = new LikelihoodFindingStructuralDriver(eval, assoc);
+ eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackDOCA(), 10, 0.0, 50.0, false, true);
+ ////eval.addLikelihoodQuantityTrackToTrack(new ClusterToClusterMinDistance(), 5, 0.0, 250.0, false, true);
+ //eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackPOCAInCalorimeter(), 2, -0.5, 1.5, false, false);
+ eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackSmallestDistanceToPOCA(), 5, 0.0, 50.0, false, true);
+ //eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackIntermediateHitsCount(), 10, -0.5, 9.5, false, true);
+ //eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackIntermediateHitsFraction(), 11, -0.05, 1.05, false, false);
+ eval.addLikelihoodQuantityTrackToClump(new TrackToClumpDOCA(), 5, 0.0, 250.0, false, true);
+ eval.addLikelihoodQuantityTrackToClump(new ClusterToClusterMinDistance(), 5, 0.0, 250.0, false, true);
+ eval.addLikelihoodQuantityClumpToClump(new ClumpToClumpDOCA(), 5, 0.0, 500.0, false, true);
+ eval.addLikelihoodQuantityClumpToClump(new ClusterToClusterMinDistance(), 5, 0.0, 500.0, false, true);
+ LikelihoodFindingStructuralDriver likelihoodWriter = new LikelihoodFindingStructuralDriver(eval, assoc, "MSTCluster linked", "Track segments linked", "Clumps");
+ likelihoodWriter.setIgnoreClusterDecision(new ClusterSizeDecision(10));
add(likelihoodWriter);
+ Driver checkpoint = new LikelihoodEvaluatorCheckpointDriver(eval, 10);
+ add(checkpoint);
} else {
// Use pre-existing likelihood histograms to check clusters
+ System.out.println("ExamplePFA: I will read in likelihood histograms and use them to make clusters.");
LikelihoodEvaluator eval = LikelihoodEvaluator.readFromFile("likelihood.bin");
- eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackDOCA(), 10, 0.0, 5.0, false, true);
- eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackPOCAInCalorimeter(), 2, -0.5, 1.5, false, false);
- eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackSmallestDistanceToPOCA(), 5, 0.0, 5.0, false, true);
- eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackIntermediateHitsCount(), 10, -0.5, 9.5, false, true);
- eval.addLikelihoodQuantityTrackToTrack(new TrackToTrackIntermediateHitsFraction(), 11, -0.05, 1.05, false, false);
- eval.addLikelihoodQuantityTrackToClump(new TrackToClumpDOCA(), 5, 0.0, 25.0, false, true);
- eval.addLikelihoodQuantityTrackToClump(new ClusterToClusterMinDistance(), 5, 0.0, 25.0, false, true);
- eval.addLikelihoodQuantityClumpToClump(new ClumpToClumpDOCA(), 5, 0.0, 50.0, false, true);
- eval.addLikelihoodQuantityClumpToClump(new ClusterToClusterMinDistance(), 5, 0.0, 50.0, false, true);
-
- LikelihoodLinkPlotterDriver likelihoodPlotter = new LikelihoodLinkPlotterDriver(eval, 0.5, 0.5, 0.5, assoc);
+ LikelihoodLinkPlotterDriver likelihoodPlotter = new LikelihoodLinkPlotterDriver(eval, 0.5, 0.5, 0.5, assoc, "MSTCluster linked", "Track segments linked", "Clumps", "MapClustersToSkeletons");
+ likelihoodPlotter.setIgnoreClusterDecision(new ClusterSizeDecision(10));
likelihoodPlotter.initPlots("likelihoodPerformance.aida");
add(likelihoodPlotter);
}