public class FixedConeClusterer extends Object implements Clusterer
Modifier and Type | Class and Description |
---|---|
static class |
FixedConeClusterer.FixedConeDistanceMetric |
Modifier and Type | Field and Description |
---|---|
FixedConeClusterPropertyCalculator |
_clusterPropertyCalculator |
private double[] |
_coneFunc |
private double[] |
_cutFunc |
private FixedConeClusterer.FixedConeDistanceMetric |
_dm |
private double[] |
_layerEnergy |
private double |
_minEnergy |
private int |
_numLayers |
private double |
_radius |
private boolean |
_radiusSetFlag |
private double |
_samplingFraction |
private double |
_seedEnergy |
private static double |
PI |
private static double |
TWOPI |
Constructor and Description |
---|
FixedConeClusterer(double radius,
double seed,
double minE)
Constructor with default distance metric (dot-product method)
|
FixedConeClusterer(double seed,
double minE,
double[] coneFunc,
double[] cutFunc,
FixedConeClusterer.FixedConeDistanceMetric distMetric)
Constructor
|
FixedConeClusterer(double radius,
double seed,
double minE,
FixedConeClusterer.FixedConeDistanceMetric distMetric) |
FixedConeClusterer(double seed,
double minE,
FixedConeClusterer.FixedConeDistanceMetric distMetric) |
Modifier and Type | Method and Description |
---|---|
List<Cluster> |
createClusters(List<CalorimeterHit> in)
Make clusters from the input list
|
List<Cluster> |
createClusters(Map<Long,CalorimeterHit> in)
Make clusters from the input map
|
double |
dTheta(Cluster c1,
Cluster c2)
Calculate the angle between two Clusters
|
void |
resolve(BaseCluster c1,
double coneR1,
BaseCluster c2,
double coneR2)
Given two overlapping clusters, assign cells to nearest axis.
|
void |
setMinE(double minE) |
void |
setPredictFunc(double[] coneFunc,
double[] cutFunc) |
void |
setRadius(double radius) |
void |
setSeed(double seed) |
String |
toString() |
private double _radius
private double _seedEnergy
private double _minEnergy
private int _numLayers
private double _samplingFraction
private double[] _layerEnergy
private boolean _radiusSetFlag
private double[] _coneFunc
private double[] _cutFunc
private static final double PI
private static final double TWOPI
public FixedConeClusterPropertyCalculator _clusterPropertyCalculator
private FixedConeClusterer.FixedConeDistanceMetric _dm
public FixedConeClusterer(double seed, double minE, double[] coneFunc, double[] cutFunc, FixedConeClusterer.FixedConeDistanceMetric distMetric)
radius
- The cone radius in q-f spaceseed
- The minimum energy for a cone seed cell (in GeV)minE
- The minimum energy for a cluster (in GeV)distMetric
- The distance metric:
0 for dot-product method,
1 for R2 = (d phi)2 + (d(cos theta))2
(simplified version of dot-product method)
2 for R2 = (d phi)2 + (d theta)2
(backwards compatibility mode with old FixedConeClusterer implementation
Anything else will be assumed to be 0.public FixedConeClusterer(double seed, double minE, FixedConeClusterer.FixedConeDistanceMetric distMetric)
public FixedConeClusterer(double radius, double seed, double minE, FixedConeClusterer.FixedConeDistanceMetric distMetric)
public FixedConeClusterer(double radius, double seed, double minE)
radius
- The cone radius in q-f spaceseed
- The minimum energy for a cone seed cell (in GeV)minE
- The minimum energy for a cluster (in GeV)public void setPredictFunc(double[] coneFunc, double[] cutFunc)
public void setRadius(double radius)
public void setSeed(double seed)
public void setMinE(double minE)
public List<Cluster> createClusters(Map<Long,CalorimeterHit> in)
createClusters
in interface Clusterer
public List<Cluster> createClusters(List<CalorimeterHit> in)
createClusters
in interface Clusterer
public double dTheta(Cluster c1, Cluster c2)
c1
- First Clusterc2
- Second Clusterpublic void resolve(BaseCluster c1, double coneR1, BaseCluster c2, double coneR2)
c1
- First Clusterc2
- Second ClusterCopyright © 2016 Linear Collider Detector (LCD). All rights reserved.