SISCone 3.0.5
|
base class for managing the spatial part of Cmomentum (defined after) More...
#include <momentum.h>
Public Member Functions | |
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 | 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 managing the spatial part of Cmomentum (defined after)
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 54 of file momentum.h.
siscone_spherical::CSph3vector::CSph3vector | ( | ) |
default ctor
Definition at line 43 of file momentum.cpp.
References _norm, _phi, _theta, px, py, pz, and ref.
Referenced by get_angular_directions().
siscone_spherical::CSph3vector::CSph3vector | ( | double | _px, |
double | _py, | ||
double | _pz | ||
) |
ctor with initialisation
Definition at line 51 of file momentum.cpp.
References build_norm(), px, py, pz, and ref.
siscone_spherical::CSph3vector::~CSph3vector | ( | ) |
default dtor
Definition at line 64 of file momentum.cpp.
void siscone_spherical::CSph3vector::build_norm | ( | ) |
build the spatial normfrom 4-momentum info !!! WARNING !!! !!! computing the norm is the only time-consuming !!! !!! information we need in all computations.
!!! !!! use this whenever you need repeated access !!! !!! to the norm to store it in the local variable !!!
Definition at line 148 of file momentum.cpp.
Referenced by siscone_spherical::CSphvicinity::append_to_vicinity(), and CSph3vector().
void siscone_spherical::CSph3vector::build_thetaphi | ( | ) |
just a useful tool to store theta and phi locally (in _theta and _phi) in case you need repeated access
Definition at line 153 of file momentum.cpp.
References _phi, _theta, phi(), and theta().
Referenced by siscone_spherical::CSphsplit_merge::add_hardest_protocone_to_jets(), siscone_spherical::CSphsplit_merge::add_protocones(), and siscone_spherical::CSphmomentum::CSphmomentum().
void siscone_spherical::CSph3vector::get_angular_directions | ( | CSph3vector & | angular_dir1, |
CSph3vector & | angular_dir2 | ||
) |
for this direction, compute the two reference directions used to measure angles
Definition at line 161 of file momentum.cpp.
References CSph3vector(), px, py, and pz.
Referenced by siscone_spherical::CSphvicinity::build().
|
inline |
|
inline |
CSph3vector & siscone_spherical::CSph3vector::operator*= | ( | const double & | r | ) |
multiplication by a constant WARNING= norm is not updated
Definition at line 127 of file momentum.cpp.
const CSph3vector siscone_spherical::CSph3vector::operator+ | ( | const CSph3vector & | v | ) |
addition of vectors WARNING= norm is not updated
Definition at line 86 of file momentum.cpp.
CSph3vector & siscone_spherical::CSph3vector::operator+= | ( | const CSph3vector & | v | ) |
incrementation of vectors WARNING= norm is not updated
Definition at line 107 of file momentum.cpp.
const CSph3vector siscone_spherical::CSph3vector::operator- | ( | const CSph3vector & | v | ) |
subtraction of vectors WARNING= norm is not updated
Definition at line 93 of file momentum.cpp.
CSph3vector & siscone_spherical::CSph3vector::operator-= | ( | const CSph3vector & | v | ) |
decrementation of vectors WARNING= norm is not updated
Definition at line 117 of file momentum.cpp.
const CSph3vector siscone_spherical::CSph3vector::operator/ | ( | const double & | r | ) |
division by a constant WARNING= norm is not updated
Definition at line 100 of file momentum.cpp.
CSph3vector & siscone_spherical::CSph3vector::operator/= | ( | const double & | r | ) |
CSph3vector & siscone_spherical::CSph3vector::operator= | ( | const CSph3vector & | v | ) |
|
inline |
|
inline |
computes pT^2
Definition at line 100 of file momentum.h.
Referenced by siscone_spherical::CSphmomentum::Et(), siscone_spherical::CSphmomentum::Et2(), siscone_spherical::CSphmomentum::mass2(), and perp().
|
inline |
|
inline |
double siscone_spherical::CSph3vector::_norm |
particle spatial norm (available ONLY after a call to build_norm)
Definition at line 135 of file momentum.h.
Referenced by siscone_spherical::CSphvicinity::append_to_vicinity(), siscone_spherical::CSphvicinity::build(), build_norm(), CSph3vector(), operator/=(), operator=(), and siscone_spherical::CSphmomentum::operator=().
double siscone_spherical::CSph3vector::_phi |
particle phi angle (available ONLY after a call to build_thetaphi)
Definition at line 137 of file momentum.h.
Referenced by siscone_spherical::CSphsplit_merge::add_hardest_protocone_to_jets(), siscone_spherical::CSphsplit_merge::add_protocones(), build_thetaphi(), CSph3vector(), siscone_spherical::CSphborder_store::CSphborder_store(), siscone_spherical::CSphstable_cones::get_stable_cones(), operator=(), and siscone_spherical::CSphmomentum::operator=().
double siscone_spherical::CSph3vector::_theta |
particle theta angle (available ONLY after a call to build_thetaphi)
Definition at line 136 of file momentum.h.
Referenced by siscone_spherical::CSphsplit_merge::add_hardest_protocone_to_jets(), siscone_spherical::CSphsplit_merge::add_protocones(), build_thetaphi(), CSph3vector(), siscone_spherical::CSphborder_store::CSphborder_store(), siscone_spherical::CSphstable_cones::get_stable_cones(), operator=(), and siscone_spherical::CSphmomentum::operator=().
double siscone_spherical::CSph3vector::px |
x-momentum
Definition at line 131 of file momentum.h.
Referenced by CSph3vector(), get_angular_directions(), norm(), norm2(), operator*=(), operator+=(), siscone_spherical::CSphmomentum::operator+=(), operator-=(), siscone_spherical::CSphmomentum::operator-=(), operator/=(), operator=(), siscone_spherical::CSphmomentum::operator=(), perp2(), phi(), siscone_spherical::CSphsplit_merge::save_contents(), and siscone_spherical::CSphsplit_merge::show().
double siscone_spherical::CSph3vector::py |
y-momentum
Definition at line 132 of file momentum.h.
Referenced by CSph3vector(), get_angular_directions(), norm(), norm2(), operator*=(), operator+=(), siscone_spherical::CSphmomentum::operator+=(), operator-=(), siscone_spherical::CSphmomentum::operator-=(), operator/=(), operator=(), siscone_spherical::CSphmomentum::operator=(), perp2(), phi(), siscone_spherical::CSphsplit_merge::save_contents(), and siscone_spherical::CSphsplit_merge::show().
double siscone_spherical::CSph3vector::pz |
z-momentum
Definition at line 133 of file momentum.h.
Referenced by CSph3vector(), siscone_spherical::CSphmomentum::Et(), siscone_spherical::CSphmomentum::Et2(), get_angular_directions(), norm(), norm2(), operator*=(), operator+=(), siscone_spherical::CSphmomentum::operator+=(), operator-=(), siscone_spherical::CSphmomentum::operator-=(), operator/=(), operator=(), siscone_spherical::CSphmomentum::operator=(), siscone_spherical::CSphmomentum::perpmass(), siscone_spherical::CSphmomentum::perpmass2(), siscone_spherical::CSphsplit_merge::save_contents(), siscone_spherical::CSphsplit_merge::show(), and theta().
siscone::Creference siscone_spherical::CSph3vector::ref |
reference number for the vector
Definition at line 142 of file momentum.h.
Referenced by CSph3vector(), siscone_spherical::sph_hash_cones::insert(), siscone_spherical::CSphsplit_merge_ptcomparison::operator()(), siscone_spherical::CSphmomentum::operator+=(), siscone_spherical::CSphmomentum::operator-=(), operator=(), and siscone_spherical::CSphmomentum::operator=().