SISCone 3.0.5
|
base class for dynamic coordinates management More...
#include <momentum.h>
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... | |
CSphmomentum & | operator= (const CSphmomentum &v) |
assignment of vectors More... | |
const CSphmomentum | operator+ (const CSphmomentum &v) |
addition of vectors !!! WARNING !!! no updating of eta and phi !!! More... | |
CSphmomentum & | operator+= (const CSphmomentum &v) |
incrementation of vectors !!! WARNING !!! no updating of eta and phi !!! More... | |
CSphmomentum & | operator-= (const CSphmomentum &v) |
decrementation of vectors !!! WARNING !!! no updating of eta and phi !!! More... | |
![]() | |
CSph3vector () | |
default ctor More... | |
CSph3vector (double _px, double _py, double _pz) | |
ctor with initialisation More... | |
~CSph3vector () | |
default dtor More... | |
CSph3vector & | operator= (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... | |
CSph3vector & | operator+= (const CSph3vector &v) |
incrementation of vectors WARNING= norm is not updated More... | |
CSph3vector & | operator-= (const CSph3vector &v) |
decrementation of vectors WARNING= norm is not updated More... | |
CSph3vector & | operator*= (const double &r) |
multiplication by a constant WARNING= norm is not updated More... | |
CSph3vector & | operator/= (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... | |
![]() | |
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... | |
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.
siscone_spherical::CSphmomentum::CSphmomentum | ( | ) |
siscone_spherical::CSphmomentum::CSphmomentum | ( | CSph3vector & | init, |
double | E = 0.0 |
||
) |
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.
siscone_spherical::CSphmomentum::~CSphmomentum | ( | ) |
|
inline |
computes transverse energy
Definition at line 188 of file momentum.h.
References E, siscone_spherical::CSph3vector::perp2(), and siscone_spherical::CSph3vector::pz.
|
inline |
computes transverse energy (squared)
Definition at line 191 of file momentum.h.
References E, siscone_spherical::CSph3vector::perp2(), and siscone_spherical::CSph3vector::pz.
|
inline |
|
inline |
computes m^2
Definition at line 179 of file momentum.h.
References siscone_spherical::CSph3vector::perp2(), and perpmass2().
Referenced by mass().
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.
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.
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.
CSphmomentum & siscone_spherical::CSphmomentum::operator= | ( | const CSphmomentum & | v | ) |
assignment of vectors
Definition at line 224 of file momentum.cpp.
References siscone_spherical::CSph3vector::_norm, siscone_spherical::CSph3vector::_phi, siscone_spherical::CSph3vector::_theta, E, siscone_spherical::CSph3vector::px, siscone_spherical::CSph3vector::py, siscone_spherical::CSph3vector::pz, and siscone_spherical::CSph3vector::ref.
|
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.
|
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().
double siscone_spherical::CSphmomentum::E |
energy
Definition at line 208 of file momentum.h.
Referenced by siscone_spherical::CSphsplit_merge::add_hardest_protocone_to_jets(), CSphmomentum(), Et(), Et2(), siscone_spherical::CSphsplit_merge_ptcomparison::get_difference(), siscone_spherical::CSphsplit_merge_ptcomparison::operator()(), operator+=(), operator-=(), operator=(), perpmass(), perpmass2(), siscone_spherical::CSphsplit_merge::save_contents(), and siscone_spherical::CSphsplit_merge::show().
int siscone_spherical::CSphmomentum::index |
internal particle number
Definition at line 211 of file momentum.h.
Referenced by siscone_spherical::CSphsplit_merge::add_hardest_protocone_to_jets(), siscone_spherical::CSphsplit_merge::add_protocones(), siscone_spherical::CSphvicinity::append_to_vicinity(), and CSphmomentum().
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().