27-may-2001 NvE New class AliEvent introduced and RALICELinkDef.h & co. updated accor...
[u/mrichter/AliRoot.git] / RALICE / AliBoost.h
1 #ifndef ALIBOOST_H
2 #define ALIBOOST_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 // $Id$
7
8 #include <iostream.h>
9 #include <math.h>
10  
11 #include "TObject.h"
12
13 #include "Ali4Vector.h" 
14
15 class AliBoost : public TObject
16 {
17  public:
18   AliBoost();                             // Default constructor
19   ~AliBoost();                            // Default destructor
20   void SetBeta(Ali3Vector b);             // Set boost parameters by beta 3-vector
21   void Set4Momentum(Ali4Vector& p);       // Set boost parameters by 4-momentum
22   Ali3Vector GetBetaVector();             // Provide the beta 3-vector
23   Double_t GetBeta();                     // Provide norm of beta 3-vector
24   Double_t GetGamma();                    // Provide gamma value
25   void Info(TString f="car");             // Print boost parameter info in coord. frame f
26   Ali4Vector Boost(Ali4Vector& v);        // Perform Lorentz boost on 4-vector v
27   Ali4Vector Inverse(Ali4Vector& v);      // Perform inverse Lorentz boost on 4-vector v
28   Double_t GetResultError();              // Provide error on scalar result
29  
30  protected:
31   Ali3Vector fBeta;  // The beta 3-vector
32   Double_t fGamma;   // The gamma factor
33   Double_t fDgamma;  // Error on the gamma value
34   Double_t fDresult; // Error on scalar result
35  
36  ClassDef(AliBoost,1) // Perform various Lorentz transformations.
37 };
38 #endif