MScatter


class description - source file - inheritance tree

class MScatter : public TObject


    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)

Data Members


Class Description

 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.