SISCone  2.0.6
Public Member Functions | Public Attributes | List of all members
siscone_spherical::CSph3vector Class Reference

base class for managing the spatial part of Cmomentum (defined after) More...

#include <momentum.h>

Inheritance diagram for siscone_spherical::CSph3vector:
Inheritance graph
[legend]
Collaboration diagram for siscone_spherical::CSph3vector:
Collaboration graph
[legend]

Public Member Functions

 CSph3vector ()
 default ctor
 
 CSph3vector (double _px, double _py, double _pz)
 ctor with initialisation
 
 ~CSph3vector ()
 default dtor
 
CSph3vectoroperator= (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
 
CSph3vectoroperator+= (const CSph3vector &v)
 incrementation of vectors WARNING= norm is not updated
 
CSph3vectoroperator-= (const CSph3vector &v)
 decrementation of vectors WARNING= norm is not updated
 
CSph3vectoroperator*= (const double &r)
 multiplication by a constant WARNING= norm is not updated
 
CSph3vectoroperator/= (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. More...
 
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 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
 

Detailed Description

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.

Member Function Documentation

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.

References _norm, and norm().

Referenced by siscone_spherical::CSphvicinity::append_to_vicinity(), and CSph3vector().


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 Sat Oct 24 2015 19:36:14 for SISCone by  Doxygen 1.8.9.1