]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliMagFC.h
Removing the hard-wired particle masses (B. Hippolyte)
[u/mrichter/AliRoot.git] / STEER / AliMagFC.h
CommitLineData
aee8290b 1#ifndef ALIMAGFC_H
2#define ALIMAGFC_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
60378f15 4*See cxx source for full Copyright notice */
aee8290b 5
6/* $Id$ */
7
0742d588 8//-------------------------------------------------------------------------
9// Constant magnetic field class
10// Used by AliRun class
11// Author:
12//-------------------------------------------------------------------------
13
aee8290b 14#include "AliMagF.h"
15
60378f15 16enum BeamType_t {kBeamTypeAA, kBeamTypepp};
aee8290b 17class AliMagFC : public AliMagF
18{
19 //Alice Constant Magnetic Field
20
21public:
60378f15 22 AliMagFC();
d0f1ee3b 23 AliMagFC(const char *name, const char *title, Int_t integ,
24 Float_t factor, Float_t fmax);
0cd61c1d 25 virtual ~AliMagFC(){}
611fa94a 26 virtual void Field(const float *x, float *b) const;
27 virtual void Field(const double *x, double *b) const;
aee8290b 28 virtual void ReadField() {}
611fa94a 29 virtual void ZDCField(const float *x, float *b) const;
30 virtual void ZDCField(const double *x, double *b) const;
e21c5d70 31 virtual void SetBeamType(BeamType_t type) {fBeamType = type;}
32 virtual void SetBeamEnergy(Float_t energy) {fBeamEnergy = energy;}
c28c3a0b 33 virtual void SetCompensatorMagnet(Bool_t flag) {fCompensator = flag;}
60378f15 34
35private:
36 Bool_t fCompensator; // Flag for compensator magnetic field (kTrue -> ON)
37 BeamType_t fBeamType; // Beam type: A-A (fBeamType=0) or p-p (fBeamType=1)
38 Float_t fBeamEnergy; // Beam energy in GeV
27bf203e 39 mutable Float_t fQuadGradient;// Gradient field for inner triplet quadrupoles
40 mutable Float_t fDipoleField; // Field value for D1 and D2 dipoles
41 mutable Float_t fCCorrField; // Side C 2nd compensator field
42 mutable Float_t fACorr1Field; // Side A 1st compensator field
43 mutable Float_t fACorr2Field; // Side A 2nd compensator field
60378f15 44
45 ClassDef(AliMagFC,3) //Class for all Alice Constant MagField
aee8290b 46};
47
575c700d 48
60378f15 49// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ZDC part %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
575c700d 50
53cc0d31 51// ************************ LHC optics v6.5 *****************************
60378f15 52// ---- Position of the magnetic elements of LHC beam optics ----
53// -> SIDE C
54static const Float_t kCCorrBegin = -1972.5, kCCorrEnd = kCCorrBegin - 153., kCCorrSqRadius = 4.5*4.5;
5ba7c883 55//
60378f15 56static const Float_t kCTripletBegin = -2296.5;
57static const Float_t kCQ1Begin = kCTripletBegin, kCQ1End = kCQ1Begin-637., kCQ1SqRadius = 3.5*3.5;
58static const Float_t kCQ2Begin = kCTripletBegin-908.5, kCQ2End = kCQ2Begin-550., kCQ2SqRadius = 3.5*3.5;
59static const Float_t kCQ3Begin = kCTripletBegin-1558.5, kCQ3End = kCQ3Begin-550., kCQ3SqRadius = 3.5*3.5;
60static const Float_t kCQ4Begin = kCTripletBegin-2400., kCQ4End = kCQ4Begin-637., kCQ4SqRadius = 3.5*3.5;
5ba7c883 61//
60378f15 62static const Float_t kCD1Begin = -5838.3, kCD1End = kCD1Begin-945., kCD1SqRadius = 4.5*4.5;
63static const Float_t kCD2Begin = -12167.8, kCD2End = kCD2Begin-945., kCD2SqRadius = 4.5*4.5;
64static const Float_t kCD2XCentre1 = -9.7;
65static const Float_t kCD2XCentre2 = 9.7;
5ba7c883 66//
60378f15 67// -> SIDE A
68// NB -> kACorr1Begin = 919. to be checked
69static const Float_t kACorr1Begin = 919., kACorr1End = kACorr1Begin+260., kCCorr1SqRadius = 4.*4.;
70static const Float_t kACorr2Begin = 1972.5, kACorr2End = kACorr2Begin+153., kCCorr2SqRadius = 4.5*4.5;
71static const Float_t kATripletBegin = 2296.5;
72static const Float_t kAQ1Begin = kATripletBegin, kAQ1End = kAQ1Begin+637., kAQ1SqRadius = 3.5*3.5;
73static const Float_t kAQ2Begin = kATripletBegin+908.5, kAQ2End = kAQ2Begin+550., kAQ2SqRadius = 3.5*3.5;
74static const Float_t kAQ3Begin = kATripletBegin+1558.5, kAQ3End = kAQ3Begin+550., kAQ3SqRadius = 3.5*3.5;
75static const Float_t kAQ4Begin = kATripletBegin+2400., kAQ4End = kAQ4Begin+637., kAQ4SqRadius = 3.5*3.5;
5ba7c883 76//
60378f15 77static const Float_t kAD1Begin = 5838.3, kAD1End = kAD1Begin+945., kAD1SqRadius = 3.375*3.375;
78static const Float_t kAD2Begin = 12167.8, kAD2End = kAD2Begin+945., kAD2SqRadius = 3.75*3.75;
79static const Float_t kAD2XCentre1 = -9.4;
80static const Float_t kAD2XCentre2 = 9.4;
5ba7c883 81
60378f15 82// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ZDC part %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
575c700d 83
aee8290b 84#endif
60378f15 85