]> git.uio.no Git - u/mrichter/AliRoot.git/blob - RALICE/AliBoost.h
Additional protection (Yu.Belikov)
[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 <math.h>
9  
10 #include "TObject.h"
11
12 #include "Ali4Vector.h" 
13
14 class AliBoost : public TObject
15 {
16  public:
17   AliBoost();                             // Default constructor
18   virtual ~AliBoost();                    // Default destructor
19   AliBoost(const AliBoost& b);            // Copy constructor
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() const;       // Provide the beta 3-vector
23   Double_t GetBeta();                     // Provide norm of beta 3-vector
24   Double_t GetGamma();                    // Provide gamma value
25   void Data(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() const;        // 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,4) // Perform various Lorentz transformations.
37 };
38 #endif