fgInstance = new AliTRDcalibDB();
}
+ //cout << "Run id = " << fRun << endl;
return fgInstance;
}
//
return dynamic_cast<const AliTRDCalMonitoring *> (GetCachedCDBObject(kIDMonitoringData));
-
+
}
//_____________________________________________________________________________
-Float_t AliTRDcalibDB::GetOmegaTau(Float_t vdrift)
+Float_t AliTRDcalibDB::GetOmegaTau(Float_t vdrift, Float_t bz)
{
//
// Returns omega*tau (tan(Lorentz-angle)) for a given drift velocity <vd>
// However, currently it is in use by simulation and reconstruction.
//
- AliTRDCommonParam *commonParam = AliTRDCommonParam::Instance();
- if (!commonParam) {
- return -1;
- }
-
- Float_t fieldAbs = TMath::Abs(commonParam->GetField());
- Float_t fieldSgn = 1.0;
- if (fieldAbs > 0.0) {
- fieldSgn = commonParam->GetField() / fieldAbs;
- }
+ //AliTRDCommonParam *commonParam = AliTRDCommonParam::Instance();
+ //if (!commonParam) {
+ // return -1;
+ //}
+
+ //Float_t fieldAbs = TMath::Abs(commonParam->GetField());
+ //Float_t fieldSgn = 1.0;
+ //if (fieldAbs > 0.0) {
+ // fieldSgn = commonParam->GetField() / fieldAbs;
+ //}
+ Float_t fieldAbs = TMath::Abs(bz);
+ Float_t fieldSgn = (bz > 0.0)? 1.0 : -1.0;
const Int_t kNb = 5;
Float_t p0[kNb] = { 0.004810, 0.007412, 0.010252, 0.013409, 0.016888 };
const AliTRDCalPIDLQ *GetPIDLQObject();
// Related functions, these depend on calibration data
- static Float_t GetOmegaTau(Float_t vdrift);
+ static Float_t GetOmegaTau(Float_t vdrift, Float_t bz);
Int_t PadResponse(Double_t signal, Double_t dist, Int_t plane, Double_t *pad) const;
protected:
return;
}
- Float_t field = commonParam->GetField();
+ //Float_t field = commonParam->GetField();
+
+ /**/
+ Double_t x[3] = { 0.0, 0.0, 0.0 };
+ Double_t b[3];
+ gAlice->Field(x,b); // b[] is in kilo Gauss
+ Float_t field = b[2] * 0.1; // Tesla
+ /**/
+
+
fDiffLastVdrift = vdrift;
// DiffusionL
+ p3T[ibT] * vdrift*vdrift*vdrift;
// OmegaTau
- fOmegaTau = calibration->GetOmegaTau(vdrift);
-
+ fOmegaTau = calibration->GetOmegaTau(vdrift, field);
+ cout << fOmegaTau << "\t" << field << endl;
+
// Lorentzfactor
if (commonParam->ExBOn()) {
fLorentzFactor = 1.0 / (1.0 + fOmegaTau*fOmegaTau);