siscone is hosted by Hepforge, IPPP Durham

The SISCone Jet Algorithm

Version 3.0.6



SISCone 3.0.6
siscone_spherical::CSphmomentum Class Reference

base class for dynamic coordinates management More...

#include <momentum.h>

Inheritance diagram for siscone_spherical::CSphmomentum:
Collaboration diagram for siscone_spherical::CSphmomentum:

Public Member Functions

 CSphmomentum ()
 default ctor More...
 
 CSphmomentum (CSph3vector &init, double E=0.0)
 init from a 3-vect More...
 
 CSphmomentum (double _px, double _py, double _pz, double _E)
 ctor with initialisation More...
 
 ~CSphmomentum ()
 ctor with detailed initialisation More...
 
double mass () const
 computes m More...
 
double mass2 () const
 computes m^2 More...
 
double perpmass () const
 transverse mass, mt = sqrt(pt^2+m^2) = sqrt(E^2 - pz^2) More...
 
double perpmass2 () const
 transverse mass squared, mt^2 = pt^2+m^2 = E^2 - pz^2 More...
 
double Et () const
 computes transverse energy More...
 
double Et2 () const
 computes transverse energy (squared) More...
 
CSphmomentumoperator= (const CSphmomentum &v)
 assignment of vectors More...
 
const CSphmomentum operator+ (const CSphmomentum &v)
 addition of vectors !!! WARNING !!! no updating of eta and phi !!! More...
 
CSphmomentumoperator+= (const CSphmomentum &v)
 incrementation of vectors !!! WARNING !!! no updating of eta and phi !!! More...
 
CSphmomentumoperator-= (const CSphmomentum &v)
 decrementation of vectors !!! WARNING !!! no updating of eta and phi !!! More...
 
- Public Member Functions inherited from siscone_spherical::CSph3vector
 CSph3vector ()
 default ctor More...
 
 CSph3vector (double _px, double _py, double _pz)
 ctor with initialisation More...
 
 ~CSph3vector ()
 default dtor More...
 
CSph3vectoroperator= (const CSph3vector &v)
 assignment of vectors More...
 
const CSph3vector operator+ (const CSph3vector &v)
 addition of vectors WARNING= norm is not updated More...
 
const CSph3vector operator- (const CSph3vector &v)
 subtraction of vectors WARNING= norm is not updated More...
 
const CSph3vector operator/ (const double &r)
 division by a constant WARNING= norm is not updated More...
 
CSph3vectoroperator+= (const CSph3vector &v)
 incrementation of vectors WARNING= norm is not updated More...
 
CSph3vectoroperator-= (const CSph3vector &v)
 decrementation of vectors WARNING= norm is not updated More...
 
CSph3vectoroperator*= (const double &r)
 multiplication by a constant WARNING= norm is not updated More...
 
CSph3vectoroperator/= (const double &r)
 division by a constant WARNING= norm is not updated More...
 
double perp () const
 computes pT More...
 
double perp2 () const
 computes pT^2 More...
 
double norm () const
 3-vect norm More...
 
double norm2 () const
 3-vect norm squared More...
 
double phi () const
 3-vect azimuthal angle More...
 
double theta () const
 3-vect polar angle More...
 
void build_norm ()
 build the spatial normfrom 4-momentum info !!! WARNING !!! !!! computing the norm is the only time-consuming !!! !!! information we need in all computations. More...
 
void build_thetaphi ()
 just a useful tool to store theta and phi locally (in _theta and _phi) in case you need repeated access More...
 
void get_angular_directions (CSph3vector &angular_dir1, CSph3vector &angular_dir2)
 for this direction, compute the two reference directions used to measure angles More...
 

Public Attributes

double E
 energy More...
 
int parent_index
 particle number in the parent list More...
 
int index
 internal particle number More...
 
- Public Attributes inherited from siscone_spherical::CSph3vector
double px
 x-momentum More...
 
double py
 y-momentum More...
 
double pz
 z-momentum More...
 
double _norm
 particle spatial norm (available ONLY after a call to build_norm) More...
 
double _theta
 particle theta angle (available ONLY after a call to build_thetaphi) More...
 
double _phi
 particle phi angle (available ONLY after a call to build_thetaphi) More...
 
siscone::Creference ref
 reference number for the vector More...
 

Detailed Description

base class for dynamic coordinates management

This class contains the information for particle or group of particles management. It is adapted to use spherical geometry, where, for our purposes, the only time-consuming operation we need is the computation of the norm. To compute it once-and-for-all and store it in a local variable, you should call the 'build_norm' method. On top of that, the angle phi is computed from the x-axis and theta from the "north pole".

Definition at line 158 of file momentum.h.

Constructor & Destructor Documentation

◆ CSphmomentum() [1/3]

siscone_spherical::CSphmomentum::CSphmomentum ( )

default ctor

Definition at line 194 of file momentum.cpp.

References E, and index.

◆ CSphmomentum() [2/3]

siscone_spherical::CSphmomentum::CSphmomentum ( CSph3vector init,
double  E = 0.0 
)

init from a 3-vect

Definition at line 211 of file momentum.cpp.

References E.

◆ CSphmomentum() [3/3]

siscone_spherical::CSphmomentum::CSphmomentum ( double  _px,
double  _py,
double  _pz,
double  _E 
)

ctor with initialisation

Definition at line 201 of file momentum.cpp.

References siscone_spherical::CSph3vector::build_thetaphi(), and E.

◆ ~CSphmomentum()

siscone_spherical::CSphmomentum::~CSphmomentum ( )

ctor with detailed initialisation

default dtor

Definition at line 218 of file momentum.cpp.

Member Function Documentation

◆ Et()

double siscone_spherical::CSphmomentum::Et ( ) const
inline

computes transverse energy

Definition at line 188 of file momentum.h.

References E, siscone_spherical::CSph3vector::perp2(), and siscone_spherical::CSph3vector::pz.

◆ Et2()

double siscone_spherical::CSphmomentum::Et2 ( ) const
inline

computes transverse energy (squared)

Definition at line 191 of file momentum.h.

References E, siscone_spherical::CSph3vector::perp2(), and siscone_spherical::CSph3vector::pz.

◆ mass()

double siscone_spherical::CSphmomentum::mass ( ) const
inline

computes m

Definition at line 176 of file momentum.h.

References mass2().

◆ mass2()

double siscone_spherical::CSphmomentum::mass2 ( ) const
inline

computes m^2

Definition at line 179 of file momentum.h.

References siscone_spherical::CSph3vector::perp2(), and perpmass2().

Referenced by mass().

◆ operator+()

const CSphmomentum siscone_spherical::CSphmomentum::operator+ ( const CSphmomentum v)

addition of vectors !!! WARNING !!! no updating of eta and phi !!!

Definition at line 241 of file momentum.cpp.

◆ operator+=()

CSphmomentum & siscone_spherical::CSphmomentum::operator+= ( const CSphmomentum v)

incrementation of vectors !!! WARNING !!! no updating of eta and phi !!!

Definition at line 249 of file momentum.cpp.

References E, siscone_spherical::CSph3vector::px, siscone_spherical::CSph3vector::py, siscone_spherical::CSph3vector::pz, and siscone_spherical::CSph3vector::ref.

◆ operator-=()

CSphmomentum & siscone_spherical::CSphmomentum::operator-= ( const CSphmomentum v)

decrementation of vectors !!! WARNING !!! no updating of eta and phi !!!

Definition at line 263 of file momentum.cpp.

References E, siscone_spherical::CSph3vector::px, siscone_spherical::CSph3vector::py, siscone_spherical::CSph3vector::pz, and siscone_spherical::CSph3vector::ref.

◆ operator=()

◆ perpmass()

double siscone_spherical::CSphmomentum::perpmass ( ) const
inline

transverse mass, mt = sqrt(pt^2+m^2) = sqrt(E^2 - pz^2)

Definition at line 182 of file momentum.h.

References E, and siscone_spherical::CSph3vector::pz.

◆ perpmass2()

double siscone_spherical::CSphmomentum::perpmass2 ( ) const
inline

transverse mass squared, mt^2 = pt^2+m^2 = E^2 - pz^2

Definition at line 185 of file momentum.h.

References E, and siscone_spherical::CSph3vector::pz.

Referenced by mass2().

Member Data Documentation

◆ E

◆ index

◆ parent_index

int siscone_spherical::CSphmomentum::parent_index

particle number in the parent list

Definition at line 210 of file momentum.h.

Referenced by siscone_spherical::CSphsplit_merge::add_hardest_protocone_to_jets(), and siscone_spherical::CSphsplit_merge::add_protocones().


The documentation for this class was generated from the following files:

The SISCone project has been developed by Gavin Salam and Gregory Soyez
Documentation generated on Tue Jun 20 2023 18:08:37 for SISCone by  Doxygen 1.9.4