1 #ifndef ALIGENCOSMICSPARAM_H
2 #define ALIGENCOSMICSPARAM_H
3 /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 // Generator for muons according to kinematic parametrizations at ALICE
7 // (not at the surface).
8 // Origin: andrea.dainese@lnl.infn.it
12 #include "AliGenerator.h"
14 class AliGenCosmicsParam : public AliGenerator
19 virtual ~AliGenCosmicsParam() {}
20 virtual void Generate();
22 void SetParamMI() { fParamMI=kTRUE; fParamACORDE=kFALSE; return; }
23 void SetParamACORDE() { fParamMI=kFALSE; fParamACORDE=kTRUE; return; }
24 void SetYOrigin(Float_t y=600.) { fYOrigin=y; return; }
25 void SetMaxAngleWRTVertical(Float_t max=45.) {
26 if(max<0. || max>90.) AliFatal("angle must be in [0,pi/2]");
27 fMaxAngleWRTVertical=max; return; }
28 void SetBkG(Float_t b) { fBkG=b; return; }
29 void SetInACORDE(Bool_t onlyACORDE4ITS=kFALSE)
30 { fACORDE=kTRUE; fACORDE4ITS=onlyACORDE4ITS; return; }
31 void SetInTPC() { fTPC=kTRUE; return; }
32 void SetInITS() { fITS=kTRUE; return; }
33 void SetInSPDinner() { fSPDinner=kTRUE; return; }
34 void SetInSPDouter() { fSPDouter=kTRUE; return; }
35 void SetInSDDinner() { fSDDinner=kTRUE; return; }
36 void SetInSDDouter() { fSDDouter=kTRUE; return; }
37 void SetInSSDinner() { fSSDinner=kTRUE; return; }
38 void SetInSSDouter() { fSSDouter=kTRUE; return; }
42 Bool_t IntersectCylinder(Float_t r,Float_t z,Int_t pdg,
43 Float_t o[3],Float_t p[3]) const;
44 Bool_t IntersectACORDE(Int_t pdg,
45 Float_t o[3],Float_t p[3]) const;
46 Bool_t fParamMI; // parametrization from M.Ivanov
47 Bool_t fParamACORDE; // parametrization from AliGenACORDE
48 // (parametrized at ALICE y)
49 Float_t fYOrigin; // y of muon origin
50 Float_t fMaxAngleWRTVertical; // maximum angle between momentum and y axis
51 Float_t fBkG; // field in kGauss
52 Bool_t fTPC; // acceptance cuts
53 Bool_t fITS; // acceptance cuts
54 Bool_t fSPDinner; // acceptance cuts
55 Bool_t fSPDouter; // acceptance cuts
56 Bool_t fSDDinner; // acceptance cuts
57 Bool_t fSDDouter; // acceptance cuts
58 Bool_t fSSDinner; // acceptance cuts
59 Bool_t fSSDouter; // acceptance cuts
60 Bool_t fACORDE; // acceptance cuts
61 Bool_t fACORDE4ITS; // acceptance cuts
63 ClassDef(AliGenCosmicsParam,3) // parametrized cosmics generator