Class ClusterMaker


class ClusterMaker
derived from Algorithm

ClusterMaking is currently defined as a process which uses Cells from the TES and forms Clusters from them. The strategy employed is to sum all Cells in a given R-cone around an initiator.
[Note: This might be more correctly called pre-jet formation as the R-cones are of jet size and therefore this algorithm does not really correspond to the normal notion of forming clusters from,say, adjacent energy deposits.]


Inner Class Summary
 private classClusterMaker.PreCluster
          for accumulating weighted kinematic quantities

Field Summary
 private Cluster *lnkCluster
           
 private std::stringm_inputLocation
          TES input Cell location
 private KinematicHelperm_kinehelp
          Help with common kinematic operations
 private doublem_minClusterET
          Minimum eT which a candidate cluster must have to be retained
 private doublem_minInitiatorET
          Minimun eT needed for a Cell to initiate a new Cluster
 private std::stringm_outputLocation
          TES output Cluster location
 private doublem_rConeBarrel
          R-cone size for summation of Cells within barrel region
 private doublem_rConeForward
          R-cone size for summation of Cells within forward regions
 private TesIO *m_TesIO
          helper class to deal with TES I/O

Constructor Summary
ClusterMaker(const std::string & name, ISvcLocator * pSvcLocator)
          Standard Athena-Atlfast Constructor

Destructor Summary
 virtual ~ClusterMaker()
          Default Destructor

Method Summary
 StatusCodeexecute()
          Standard Athena-Algorithm method
 StatusCodefinalize()
          Standard Athena-Algorithm method
 StatusCodeinitialize()
          Standard Athena-Algorithm method
 private voidmakeClusters(MsgStream & log, CellCollection * , ClusterCollection * )
          Strategy for making clusters from cells
 private doublerCone()
          Looks up R-cone size according to position of initiator.

Field Detail

lnkCluster

private Cluster * lnkCluster
label output
supplierCardinality 0..*

m_inputLocation

private std::string m_inputLocation
TES input Cell location

m_kinehelp

private KinematicHelper m_kinehelp
Help with common kinematic operations

m_minClusterET

private double m_minClusterET
Minimum eT which a candidate cluster must have to be retained

m_minInitiatorET

private double m_minInitiatorET
Minimun eT needed for a Cell to initiate a new Cluster

m_outputLocation

private std::string m_outputLocation
TES output Cluster location

m_rConeBarrel

private double m_rConeBarrel
R-cone size for summation of Cells within barrel region

m_rConeForward

private double m_rConeForward
R-cone size for summation of Cells within forward regions

m_TesIO

private TesIO * m_TesIO
helper class to deal with TES I/O
supplierCardinality 1
Constructor Detail

ClusterMaker

public ClusterMaker(const std::string & name, ISvcLocator * pSvcLocator)
Standard Athena-Atlfast Constructor
Method Detail

~ClusterMaker

public virtual ~ClusterMaker()
Default Destructor
Method Detail

execute

public StatusCode execute()
Standard Athena-Algorithm method

finalize

public StatusCode finalize()
Standard Athena-Algorithm method

initialize

public StatusCode initialize()
Standard Athena-Algorithm method

makeClusters

private void makeClusters(MsgStream & log, CellCollection * , ClusterCollection * )
Strategy for making clusters from cells

rCone

private double rCone()
Looks up R-cone size according to position of initiator.

Association Links

to Class Atlfast::KinematicHelper

Help with common kinematic operations

to Class Atlfast::TesIO

helper class to deal with TES I/O

Supplier Cardinality 1

to Class Atlfast::Cluster

Label output
Supplier Cardinality 0..*

Dependency Links

to Class Atlfast::Cell

link dependency