]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIMAGF_H | |
2 | #define ALIMAGF_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 "TNamed.h" | |
9 | ||
10 | enum Field_t {kUndef=1, kConst=1, kConMesh=2, kDipoMap=3}; | |
11 | ||
12 | class AliMagF : public TNamed { | |
13 | ||
14 | public: | |
15 | AliMagF(){} | |
16 | AliMagF(const char *name, const char *title, const Int_t integ, | |
17 | const Float_t factor = 1., const Float_t fmax = 10.); | |
18 | virtual ~AliMagF() {} | |
19 | virtual void Field(Float_t *x, Float_t *b); | |
20 | virtual Int_t Type() const {return fType;} | |
21 | virtual Float_t Max() const {return fMax;} | |
22 | virtual Int_t Map() const {return fMap;} | |
23 | virtual Int_t Integ() const {return fInteg;} | |
24 | virtual Float_t Factor() const {return fFactor;} | |
25 | virtual void ReadField() {} | |
26 | virtual void SetDebug(Int_t level=0) {fDebug=level;} | |
27 | virtual Float_t SolenoidField() {return 2.;} | |
28 | ||
29 | virtual Int_t GetDebug() const {return fDebug;} | |
30 | ||
31 | protected: | |
32 | Int_t fMap; // Field Map identifier | |
33 | Int_t fType; // Mag Field type | |
34 | Int_t fInteg; // Integration method as indicated in Geant | |
35 | Float_t fFactor; // Multiplicative factor | |
36 | Float_t fMax; // Max Field as indicated in Geant | |
37 | Int_t fDebug; // Debug flag | |
38 | ||
39 | ClassDef(AliMagF,1) //Base class for all Alice MagField | |
40 | }; | |
41 | ||
42 | //ZDC part ------------------------------------------------------------------- | |
43 | ||
44 | const Float_t kG1=20.443; | |
45 | const Float_t kFDIP=-37.96; | |
46 | const Float_t kFCORN2=-9.14; | |
47 | // | |
48 | // ZBEG Beginning of the inner triplet | |
49 | // D1BEG Beginning of separator dipole 1 | |
50 | // D2BEG Beginning of separator dipole 2 | |
51 | // CORBEG Corrector dipole beginning (because of dimuon arm) | |
52 | // | |
53 | const Float_t kCORBEG2=19216.,kCOREND2=kCORBEG2+170., kCOR2RA2=4.5*4.5; | |
54 | // | |
55 | const Float_t kZBEG=2300.; | |
56 | const Float_t kZ1BEG=kZBEG+ 0.,kZ1END=kZ1BEG+630.,kZ1RA2=3.5*3.5; | |
57 | const Float_t kZ2BEG=kZBEG+ 880.,kZ2END=kZ2BEG+550.,kZ2RA2=3.5*3.5; | |
58 | const Float_t kZ3BEG=kZBEG+1530.,kZ3END=kZ3BEG+550.,kZ3RA2=3.5*3.5; | |
59 | const Float_t kZ4BEG=kZBEG+2430.,kZ4END=kZ4BEG+630.,kZ4RA2=3.5*3.5; | |
60 | const Float_t kD1BEG=5838.3 ,kD1END=kD1BEG+945.,kD1RA2=4.5*4.5; | |
61 | const Float_t kD2BEG=12147.6 ,kD2END=kD2BEG+945.,kD2RA2=4.5*4.5; | |
62 | // | |
63 | const Float_t kXCEN1D2=-9.7 ,kYCEN1D2=0.; | |
64 | const Float_t kXCEN2D2=9.7 ,kYCEN2D2=0.; | |
65 | ||
66 | //ZDC part ------------------------------------------------------------------- | |
67 | ||
68 | #endif |