SISCone 3.0.5
|
base class for dynamic coordinates management More...
#include <momentum.h>
Public Member Functions | |
CSphmomentum () | |
default ctor | |
CSphmomentum (CSph3vector &init, double E=0.0) | |
init from a 3-vect | |
CSphmomentum (double _px, double _py, double _pz, double _E) | |
ctor with initialisation | |
~CSphmomentum () | |
ctor with detailed initialisation | |
double | mass () const |
computes m | |
double | mass2 () const |
computes m^2 | |
double | perpmass () const |
transverse mass, mt = sqrt(pt^2+m^2) = sqrt(E^2 - pz^2) | |
double | perpmass2 () const |
transverse mass squared, mt^2 = pt^2+m^2 = E^2 - pz^2 | |
double | Et () const |
computes transverse energy | |
double | Et2 () const |
computes transverse energy (squared) | |
CSphmomentum & | operator= (const CSphmomentum &v) |
assignment of vectors | |
const CSphmomentum | operator+ (const CSphmomentum &v) |
addition of vectors !!! WARNING !!! no updating of eta and phi !!! | |
CSphmomentum & | operator+= (const CSphmomentum &v) |
incrementation of vectors !!! WARNING !!! no updating of eta and phi !!! | |
CSphmomentum & | operator-= (const CSphmomentum &v) |
decrementation of vectors !!! WARNING !!! no updating of eta and phi !!! | |
![]() | |
CSph3vector () | |
default ctor | |
CSph3vector (double _px, double _py, double _pz) | |
ctor with initialisation | |
~CSph3vector () | |
default dtor | |
CSph3vector & | operator= (const CSph3vector &v) |
assignment of vectors | |
const CSph3vector | operator+ (const CSph3vector &v) |
addition of vectors WARNING= norm is not updated | |
const CSph3vector | operator- (const CSph3vector &v) |
subtraction of vectors WARNING= norm is not updated | |
const CSph3vector | operator/ (const double &r) |
division by a constant WARNING= norm is not updated | |
CSph3vector & | operator+= (const CSph3vector &v) |
incrementation of vectors WARNING= norm is not updated | |
CSph3vector & | operator-= (const CSph3vector &v) |
decrementation of vectors WARNING= norm is not updated | |
CSph3vector & | operator*= (const double &r) |
multiplication by a constant WARNING= norm is not updated | |
CSph3vector & | operator/= (const double &r) |
division by a constant WARNING= norm is not updated | |
double | perp () const |
computes pT | |
double | perp2 () const |
computes pT^2 | |
double | norm () const |
3-vect norm | |
double | norm2 () const |
3-vect norm squared | |
double | phi () const |
3-vect azimuthal angle | |
double | theta () const |
3-vect polar angle | |
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. | |
void | build_thetaphi () |
just a useful tool to store theta and phi locally (in _theta and _phi) in case you need repeated access | |
void | get_angular_directions (CSph3vector &angular_dir1, CSph3vector &angular_dir2) |
for this direction, compute the two reference directions used to measure angles | |
Public Attributes | |
double | E |
energy | |
int | parent_index |
particle number in the parent list | |
int | index |
internal particle number | |
![]() | |
double | px |
x-momentum | |
double | py |
y-momentum | |
double | pz |
z-momentum | |
double | _norm |
particle spatial norm (available ONLY after a call to build_norm) | |
double | _theta |
particle theta angle (available ONLY after a call to build_thetaphi) | |
double | _phi |
particle phi angle (available ONLY after a call to build_thetaphi) | |
siscone::Creference | ref |
reference number for the vector | |
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(), CSphmomentum(), 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().