}
//_______________________________________________________________________
-void AliMagF::Field(Float_t*, Float_t *b)
+void AliMagF::Field(Float_t*, Float_t *b) const
{
//
// Method to return the field in one point -- dummy in this case
AliMagF(const char *name, const char *title, Int_t integ,
Float_t factor = 1., Float_t fmax = 10.);
virtual ~AliMagF() {}
- virtual void Field(Float_t *x, Float_t *b);
+ virtual void Field(Float_t *x, Float_t *b) const;
virtual Int_t Type() const {return fType;}
virtual Float_t Max() const {return fMax;}
virtual Int_t Map() const {return fMap;}
}
//________________________________________
-void AliMagFC::Field(Float_t *x, Float_t *b)
+void AliMagFC::Field(Float_t *x, Float_t *b) const
{
//
// Method to return the field in a point
}
-void AliMagFC::ZDCField(Float_t *x, Float_t *b)
+void AliMagFC::ZDCField(Float_t *x, Float_t *b) const
{
//This is the ZDC part
Float_t rad2=x[0]*x[0]+x[1]*x[1];
AliMagFC(const char *name, const char *title, Int_t integ,
Float_t factor, Float_t fmax);
virtual ~AliMagFC() {}
- virtual void Field(Float_t *x, Float_t *b);
+ virtual void Field(Float_t *x, Float_t *b) const;
virtual void ReadField() {}
- virtual void ZDCField(Float_t *x, Float_t *b);
+ virtual void ZDCField(Float_t *x, Float_t *b) const;
ClassDef(AliMagFC,1) //Class for all Alice Constant MagField
};
}
//_______________________________________________________________________
-void AliMagFCM::Field(Float_t *x, Float_t *b)
+void AliMagFCM::Field(Float_t *x, Float_t *b) const
{
//
// Method to calculate the magnetic field
Float_t factor, Float_t fmax);
AliMagFCM(const AliMagFCM &mag);
virtual ~AliMagFCM() {delete fB;}
- virtual void Field(Float_t *x, Float_t *b);
+ virtual void Field(Float_t *x, Float_t *b) const;
virtual void ReadField();
virtual void SetSolenoidField(Float_t field = 2.) {fSolenoid = field;}
virtual Float_t SolenoidField() const {return fSolenoid;}
}
//_______________________________________________________________________
-void AliMagFDM::Field(Float_t *xfi, Float_t *b)
+void AliMagFDM::Field(Float_t *xfi, Float_t *b) const
{
//
// Main routine to compute the field in a point
}
//_______________________________________________________________________
-Int_t AliMagFDM::FZ(Double_t temp, Float_t *Ar,
- Float_t delu, Int_t ik,Int_t nk) const
+Int_t AliMagFDM::FZ(Double_t temp, const Float_t *Ar,
+ const Float_t delu, Int_t ik, const Int_t nk) const
{
//
// Quest of a point position at x,y,z (Cartensian) and R,Phi,z (Polar) axises
//_______________________________________________________________________
Double_t AliMagFDM::Ba(Int_t kaai,Double_t zaa1, Double_t zaa2,
Double_t alf1, Double_t alf2, Double_t alf3,
- Int_t kaa, Int_t maa)
+ Int_t kaa, Int_t maa) const
{
//
// Calculation of field componet for case (keps <r0<= fRdel) at a given axis
//_______________________________________________________________________
Double_t AliMagFDM::Bb(Double_t z1,Double_t z2, Double_t y1,Double_t y2,
- Double_t x1,Double_t x2, Int_t kv, Int_t k, Int_t l, Int_t m)
+ Double_t x1,Double_t x2, Int_t kv, Int_t k, Int_t l, Int_t m) const
{
//
// Calculation of field componet at a given axis (general case)
AliMagFDM(const char *name, const char *title, Int_t integ,
Float_t factor, Float_t fmax);
virtual ~AliMagFDM(){}
- virtual void Field(Float_t *x, Float_t *b);
+ virtual void Field(Float_t *x, Float_t *b) const;
virtual void ReadField();
virtual void SetSolenoidField(Float_t field = 2.) {fSolenoid = field;}
virtual Float_t SolenoidField() const {return fSolenoid;}
- Int_t FZ(Double_t u, Float_t *Ar, Float_t du, Int_t ki, Int_t nu) const;
- Double_t Ba(Int_t kai, Double_t za1, Double_t za2, Double_t al1, Double_t al2, Double_t al3, Int_t ka, Int_t ma);
- Double_t Bb(Double_t z1, Double_t z2, Double_t y1, Double_t y2, Double_t x1, Double_t x2, Int_t kvr, Int_t k, Int_t l, Int_t m);
+ Int_t FZ(Double_t u, const Float_t *Ar, const Float_t du, Int_t ki, const Int_t nu) const;
+ Double_t Ba(Int_t kai, Double_t za1, Double_t za2, Double_t al1, Double_t al2, Double_t al3, Int_t ka, Int_t ma) const;
+ Double_t Bb(Double_t z1, Double_t z2, Double_t y1, Double_t y2, Double_t x1, Double_t x2, Int_t kvr, Int_t k, Int_t l, Int_t m) const;
protected:
}
//_______________________________________________________________________
-void AliMagFMaps::Field(Float_t *x, Float_t *b)
+void AliMagFMaps::Field(Float_t *x, Float_t *b) const
{
//
// Method to calculate the magnetic field
- if (!fFieldRead) ReadField();
+ // if (!fFieldRead) ReadField();
//
// Field Maps have been calculated for the coordinate system in which
Int_t l3 = 1);
AliMagFMaps(const AliMagFMaps &mag);
virtual ~AliMagFMaps();
- virtual void Field(Float_t *x, Float_t *b);
+ virtual void Field(Float_t *x, Float_t *b) const;
AliFieldMap* FieldMap(Int_t i) {return fFieldMap[i];}
virtual void ReadField();
virtual Float_t SolenoidField() const;