]>
Commit | Line | Data |
---|---|---|
aee8290b | 1 | #ifndef ALIMAGFCM_H |
2 | #define ALIMAGFCM_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 "AliMagF.h" | |
9 | ||
10 | class AliMagFCM : public AliMagF | |
11 | { | |
12 | //Alice Magnetic Field with constan mesh | |
13 | ||
14 | public: | |
15 | AliMagFCM(){} | |
16 | AliMagFCM(const char *name, const char *title, const Int_t integ, const Int_t map, | |
17 | const Float_t factor, const Float_t fmax); | |
18 | AliMagFCM(const AliMagFCM &mag); | |
19 | virtual ~AliMagFCM() {delete fB;} | |
20 | virtual void Field(Float_t *x, Float_t *b); | |
21 | virtual void ReadField(); | |
22 | virtual void Copy(AliMagFCM &magf) const; | |
23 | virtual AliMagFCM & operator=(const AliMagFCM &magf); | |
24 | ||
25 | Float_t Bx(const Int_t ix, const Int_t iy, const Int_t iz) { | |
26 | return (*fB)(3*(iz*(fXn*fYn)+iy*fXn+ix)); | |
27 | } | |
28 | Float_t By(const Int_t ix, const Int_t iy, const Int_t iz) { | |
29 | return (*fB)(3*(iz*(fXn*fYn)+iy*fXn+ix)+1); | |
30 | } | |
31 | Float_t Bz(const Int_t ix, const Int_t iy, const Int_t iz) { | |
32 | return (*fB)(3*(iz*(fXn*fYn)+iy*fXn+ix)+2); | |
33 | } | |
34 | ||
35 | protected: | |
36 | ||
37 | Float_t fXbeg; // Start of mesh in x | |
38 | Float_t fYbeg; // Start of mesh in y | |
39 | Float_t fZbeg; // Start of mesh in z | |
40 | Float_t fXdel; // Mesh step in x | |
41 | Float_t fYdel; // Mesh step in y | |
42 | Float_t fZdel; // Mesh step in z | |
43 | Double_t fXdeli; // Inverse of Mesh step in x | |
44 | Double_t fYdeli; // Inverse of Mesh step in y | |
45 | Double_t fZdeli; // Inverse of Mesh step in z | |
46 | Int_t fXn; // Number of mesh points in x | |
47 | Int_t fYn; // Number of mesh points in y | |
48 | Int_t fZn; // Number of mesh points in z | |
49 | TVector *fB; // Field map | |
50 | ||
51 | ClassDef(AliMagFCM,1) //Class for all Alice MagField with Constant Mesh | |
52 | }; | |
53 | ||
54 | #endif |