mag. field and geometry initialised from GRP
[u/mrichter/AliRoot.git] / LHC / AliLhcProcessIBS.h
1 #ifndef ALILHCPROCESSIBS_H
2 #define ALILHCPROCESSIBS_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 //
9 // Realisation of AliLhcProcess for the fast simulation of the
10 // Intra Beam Scattering process
11 // in transverse and longitudinal direction.
12 // Author: Andreas Morsch
13 // andreas.morsch@cern.ch
14 //
15
16 #include "AliLhcProcess.h"
17 class TList;
18 class AliLhcBeam;
19
20 class AliLhcProcessIBS : public AliLhcProcess
21 {
22  public:
23     AliLhcProcessIBS(AliLHC* lhc, const char* name, const char* title);
24     AliLhcProcessIBS(const AliLhcProcessIBS& ibs);
25     virtual ~AliLhcProcessIBS();
26     virtual void SetCrossSection(Float_t sig) {fCrossSection = sig*1.e-24;}
27     virtual void Init();
28     virtual void Evolve(Float_t dt);
29     virtual void  SetMonitor(Int_t n);
30     virtual void  Record();
31     virtual void  DrawPlots();
32     AliLhcProcessIBS & operator=(const AliLhcProcessIBS & rhs);
33  protected:
34     Float_t fCrossSection; // Interaction cross section 
35     TList * fIRegions;     // Interaction Regions
36     AliLhcBeam* fBeam[2];  // Beams
37     Float_t fR[2];           // elem. ion radius
38     Float_t fE[2];           // ion radius
39     Float_t fTaux;           // transverse time constant 
40     Float_t fTaue;           // longitudinal time constant       
41     Float_t* fTauxArray;     // [fNmax]
42     Float_t* fTaueArray;     // [fNmax]
43     
44 //
45     ClassDef(AliLhcProcessIBS,1) // LHC Process: Intra Beam Scattering
46 };
47
48 #endif