Object representing calorimeter signal towers. More...
#include <CaloTower_v1.h>
Public Types | |
enum | { INVALIDINDEX = -1 } |
Public Member Functions | |
CaloTower_v1 () | |
Default constructor. | |
~CaloTower_v1 () | |
Destructor. | |
void | reset () |
Reset function. | |
void | addEnergy (double energy) |
Add energy. | |
void | setEnergy (double energy) |
Sets the energy. | |
Kinematic accessors (@c IParticle interface) | |
virtual double | pt () const |
transverse momentum | |
virtual double | eta () const |
pseudorapidity $ | |
virtual double | phi () const |
azimuth | |
virtual double | rapidity () const |
rapidity | |
virtual double | m () const |
mass (by convention) | |
virtual double | e () const |
energy | |
virtual const IParticle::FourMom_t & | p4 () const |
Four-momentum representation. | |
Implementations of the other @c IParticle interface methods | |
virtual Type::ObjectType | type () const |
object type - presently Type::Other (FIXME) |
Object representing calorimeter signal towers.
!
This object represents calorimeter energy towers located on a regular grid in azimuth and pseudorapidity. The grid is associated with the xAOD::CaloTowerContainer_v1
. Due to the minimalistic underlying storage model, xAOD::CaloTower_v1
objects are only completely described if allocated in its container.
General kinematic features --------------------------
Kinematic features of calorimeter towers are (1) they are massless, and (2) their direction is given by the center of the bin they represent. This means that for any given shower never changes, only its energy content is dynamic.
The full four-momentum of the calorimeter tower is calculated from its energy and direction { /// (E,,) (E=p,p_{x},p_{y},p_{z}) /// }
Formally, this can be considered a massless pseudoparticle. If the net energy of the tower is negative, no physically meaningful four-momentum can be constructed (see below), rather the tower is represented by .
Treatment of negative energy towers -----------------------------------
Negative energy towers cannot provide a four-momentum, but still contain valuable data. The direction are independent of the value and sign of the tower energy, as towers are located at a fixed location in this space. The tower energy is provided independent of its sign as well. This means the xAOD::CaloTower_v1::e()
, xAOD::CaloTower_v1::eta()
, and xAOD::CaloTower_v1::phi()
methods return correct information. In addition, the xAOD::CaloTower_v1::m()
and xAOD::CaloTower_v1::rapidity()
methods provide meaningful information as well, with rapidity due to tower mass .
xAOD::CaloTower_v1::CaloTower_v1 | ( | ) |
Default constructor.
Constructs empty xAOD::CaloTower_v1
object.
void xAOD::CaloTower_v1::addEnergy | ( | double | energy | ) |
Add energy.
[in] | energy | value added to tower energy |
void xAOD::CaloTower_v1::reset | ( | ) |
Reset function.
Sets the tower energy to zero. Indices/directions associated with this object are not changed.
void xAOD::CaloTower_v1::setEnergy | ( | double | energy | ) |
Sets the energy.
[in] | energy | value to which the tower energy will be set to |