]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliMagF.cxx
AliTPCcalibCalib.cxx - use also alignmnet - not implemented yet
[u/mrichter/AliRoot.git] / STEER / AliMagF.cxx
index c32309ee256209ab5f9617ce3688a2fd6403481a..b8b03c7e3098b909e6a7abb1b8791012b800748b 100644 (file)
@@ -38,7 +38,7 @@ const UShort_t AliMagF::fgkPolarityConvention = kConvLHC;
  positive L3  current -> positive Bz
  positive Dip current -> positive Bx
  3) kConvLHC : defined by LHC
- positive L3  current -> negative Bz
+ positive L3  current -> positive Bz
  positive Dip current -> negative Bx
  
  Note: only "negative Bz(L3) with postive Bx(Dipole)" and its inverse was mapped in 2005. Hence 
@@ -73,10 +73,8 @@ AliMagF::AliMagF():
 }
 
 //_______________________________________________________________________
-AliMagF::AliMagF(const char *name, const char* title, Int_t integ, 
-                Double_t factorSol, Double_t factorDip, 
-                Double_t fmax, BMap_t maptype, const char* path,
-                BeamType_t bt, Double_t be):
+AliMagF::AliMagF(const char *name, const char* title, Double_t factorSol, Double_t factorDip, 
+                BMap_t maptype, BeamType_t bt, Double_t be,Int_t integ, Double_t fmax, const char* path):
   TVirtualMagField(name),
   fMeasuredMap(0),
   fMapType(maptype),
@@ -109,6 +107,11 @@ AliMagF::AliMagF(const char *name, const char* title, Int_t integ,
   }
   if (fInteg == 0) fPrecInteg = 0;
   //
+  if (fBeamEnergy<=0 && fBeamType!=kNoBeamField) {
+    if      (fBeamType == kBeamTypepp) fBeamEnergy = 7000.; // max proton energy
+    else if (fBeamType == kBeamTypeAA) fBeamEnergy = 2750;  // max PbPb energy
+    AliInfo("Maximim possible beam energy for requested beam is assumed");
+  } 
   const char* parname = 0;
   //  
   if      (fMapType == k2kG) parname = fDipoleOFF ? "Sol12_Dip0_Hole":"Sol12_Dip6_Hole";
@@ -239,7 +242,7 @@ AliMagF& AliMagF::operator=(const AliMagF& src)
 //_______________________________________________________________________
 void AliMagF::InitMachineField(BeamType_t btype, Double_t benergy)
 {
-  if (btype==kNoBeamField || benergy<1.) {
+  if (btype==kNoBeamField) {
     fQuadGradient = fDipoleField = fCCorrField = fACorr1Field = fACorr2Field = 0.;
     return;
   }
@@ -496,7 +499,7 @@ AliMagF* AliMagF::CreateFieldMap(Float_t l3Cur, Float_t diCur, Int_t convention,
   // LHC and DCS08 conventions have opposite dipole polarities
   if ( GetPolarityConvention() != convention) sclDip = -sclDip;
   //
-  return new AliMagF("MagneticFieldMap", ttl, 2, sclL3, sclDip, 10., map, path,btype,beamenergy);
+  return new AliMagF("MagneticFieldMap", ttl,sclL3,sclDip,map,btype,beamenergy,2,10.,path);
   //
 }