MScatter
class description - source file - inheritance tree
public:
MScatter MScatter()
MScatter MScatter(MScatter&)
virtual void ~MScatter()
void Center_of_gravity(double* P, double* p1, double* p2)
static TClass* Class()
double Dice_phi()
double Dice_tetha(double R)
double Get_energy(double* p)
double Get_gamma(double v)
double Get_invariant_momentum(double* p1, double* p2)
double Get_phi(double* P)
double Get_R(double* p1, double* p2)
double Get_tetha(double* P)
double Get_velocity(double* p1, double* p2)
virtual TClass* IsA() const
void Lorentz(double v, double* p1, double* p2)
void Scatter(double tetha, double phi, double* p1, double* p2)
void Scattering(double* p1, double* p2)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void Turn(double* p1, double* p2, double phi, double tetha)
void Turnback(double* p1, double* p2, double phi, double tetha)
MScatter
Calculates the scattering of two pions. The input values are the two
four momenta of the pions.
To tell the truth - this is not a real class, because it has no data
members. It is just a collection of functions which are needed to
calculate a relativistic scatter process.
On the other hand a lot of usefull functions are members of this 'class':
- some random routines to obtain randomly distibuted angles
- three dimensional turns of coordinate systems of given angles
- reltivistic calculations of center of gravity, total momentum,
velocities, energies and gamma
- lorentz boosts
MScatter()
Constructor. Creates a MScatter object.
~MScatter()
MScatter destructor. Does nothing else.
void Scattering(double p1[4], double p2[4])
Complete scattering.
Calculates everything which is needed for one complete scattering
of two pions with the given four momenta p1 and p2.
double Get_phi(double P[4])
Returns the angle phi between a four vector and the x-axis.
double Get_tetha(double P[4])
Returns the angle tetha between a four vector and the x-axis.
double Get_energy(double p[4])
Calculates with the given four momentum the energy of an particle.
double Get_velocity(double p1[4], double p2[4])
Returns the velocity of the center of mass of an two particle system.
double Get_R(double p1[4], double p2[4])
Calculates R (I can't remember what R is good for.
May be some scattering cross section? The source of this is either
the particle data book or Perkins.)
double Dice_phi(void)
Returns a randomly distributed scatter angle phi.
double Dice_tetha(double R)
Returns a randomly distributed scatter angle tetha.
double Get_gamma(double v)
Calculates gamma for a given velocity.
double Get_invariant_momentum(double p1[4], double p2[4])
Returns the invariant four momentum of a two particle system.
void Scatter(double tetha, double phi, double p1[4], double p2[4])
Calculates the new four momenta after a scattering with the given
angles tetha and phi.
void Center_of_gravity(double P[4], double p1[4], double p2[4])
Calculates the center of gravity P (the sum of two four vetors, p1 and p2).
void Turn(double p1[4], double p2[4], double phi, double tetha)
Turns the x-axis in the direction of the total momentum.
void Turnback(double p1[4], double p2[4], double phi, double tetha)
Turns the coordinate system back in the primal direction.
void Lorentz(double v, double p1[4], double p2[4])
Lorentz transform of two four momenta for a given velocity in
the direction of the x-axis.
Inline Functions
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
MScatter MScatter(MScatter&)
Author: Markus D. Oldenburg
Last update: 09.03.1999
Copyright © MDO Production 1996
ROOT page - Home page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.