//-----------------------------------------------------------------
// This funtion calculates dE/dX within the "low" and "up" cuts.
//-----------------------------------------------------------------
+ // CookdEdxAnalytical(Double_t low, Double_t up, Int_t type, Int_t i1, Int_t i2, Int_t returnVal)
AliTPCParam *param = AliTPCcalibDB::Instance()->GetParameters();
+
Int_t row0 = param->GetNRowLow();
Int_t row1 = row0+param->GetNRowUp1();
Int_t row2 = row1+param->GetNRowUp2();
+ const AliTPCRecoParam * recoParam = AliTPCcalibDB::Instance()->GetTransform()->GetCurrentRecoParam();
+ Int_t useTot = 0;
+ if (recoParam) useTot = (recoParam->GetUseTotCharge())? 0:1;
//
//
//
- fDEDX[0] = CookdEdxNorm(low,up,0 ,i1 ,i2, kTRUE,kFALSE,2,0);
- fDEDX[1] = CookdEdxNorm(low,up,0 ,0 ,row0,kTRUE,kFALSE,2,0);
- fDEDX[2] = CookdEdxNorm(low,up,0 ,row0,row1,kTRUE,kFALSE,2,0);
- fDEDX[3] = CookdEdxNorm(low,up,0 ,row1,row2,kTRUE,kFALSE,2,0);
+ fDEDX[0] = CookdEdxAnalytical(low,up,useTot ,i1 ,i2, 0);
+ fDEDX[1] = CookdEdxAnalytical(low,up,useTot ,0 ,row0, 0);
+ fDEDX[2] = CookdEdxAnalytical(low,up,useTot ,row0,row1, 0);
+ fDEDX[3] = CookdEdxAnalytical(low,up,useTot ,row1,row2, 0);
//
- fSDEDX[0] = CookdEdxNorm(low,up,0 ,i1 ,i2, kTRUE,kFALSE,2,1);
- fSDEDX[1] = CookdEdxNorm(low,up,0 ,0 ,row0,kTRUE,kFALSE,2,1);
- fSDEDX[2] = CookdEdxNorm(low,up,0 ,row0,row1,kTRUE,kFALSE,2,1);
- fSDEDX[3] = CookdEdxNorm(low,up,0 ,row1,row2,kTRUE,kFALSE,2,1);
+ fSDEDX[0] = CookdEdxAnalytical(low,up,useTot ,i1 ,i2, 1);
+ fSDEDX[1] = CookdEdxAnalytical(low,up,useTot ,0 ,row0, 1);
+ fSDEDX[2] = CookdEdxAnalytical(low,up,useTot ,row0,row1, 1);
+ fSDEDX[3] = CookdEdxAnalytical(low,up,useTot ,row1,row2, 1);
//
- fNCDEDX[0] = TMath::Nint(CookdEdxNorm(low,up,0 ,i1 ,i2, kTRUE,kFALSE,2,2));
- fNCDEDX[1] = TMath::Nint(CookdEdxNorm(low,up,0 ,0 ,row0,kTRUE,kFALSE,2,2));
- fNCDEDX[2] = TMath::Nint(CookdEdxNorm(low,up,0 ,row0,row1,kTRUE,kFALSE,2,2));
- fNCDEDX[3] = TMath::Nint(CookdEdxNorm(low,up,0 ,row1,row2,kTRUE,kFALSE,2,2));
+ fNCDEDX[0] = TMath::Nint(CookdEdxAnalytical(low,up,useTot ,i1 ,i2, 2));
+ fNCDEDX[1] = TMath::Nint(CookdEdxAnalytical(low,up,useTot ,0 ,row0, 2));
+ fNCDEDX[2] = TMath::Nint(CookdEdxAnalytical(low,up,useTot ,row0,row1, 2));
+ fNCDEDX[3] = TMath::Nint(CookdEdxAnalytical(low,up,useTot ,row1,row2, 2));
SetdEdx(fDEDX[0]);
return fDEDX[0];
if (padNorm==1){
//taken from OCDB
- if (type==0 && parcl->fQpadTnorm) corrPadType = (*parcl->fQpadTnorm)[ipad];
- if (type==1 && parcl->fQpadTnorm) corrPadType = (*parcl->fQpadMnorm)[ipad];
+ if (type==0 && parcl->QpadTnorm()) corrPadType = (*parcl->QpadTnorm())[ipad];
+ if (type==1 && parcl->QpadMnorm()) corrPadType = (*parcl->QpadMnorm())[ipad];
}
if (padNorm==2){
UInt_t runNumber = 1;
Float_t corrTimeGain = 1;
AliTPCTransform * trans = AliTPCcalibDB::Instance()->GetTransform();
- if (trans) {
+ const AliTPCRecoParam * recoParam = AliTPCcalibDB::Instance()->GetTransform()->GetCurrentRecoParam();
+ if (trans && recoParam->GetUseGainCorrectionTime()>0) {
runNumber = trans->GetCurrentRunNumber();
- //AliTPCcalibDB::Instance()->SetRun(runNumber);
+ //AliTPCcalibDB::Instance()->SetRun(runNumber);
TObjArray * timeGainSplines = AliTPCcalibDB::Instance()->GetTimeGainSplinesRun(runNumber);
if (timeGainSplines) {
UInt_t time = trans->GetCurrentTimeStamp();
UInt_t runNumber = 1;
Float_t corrTimeGain = 1;
AliTPCTransform * trans = AliTPCcalibDB::Instance()->GetTransform();
- if (trans) {
+ const AliTPCRecoParam * recoParam = AliTPCcalibDB::Instance()->GetTransform()->GetCurrentRecoParam();
+ if (trans && recoParam->GetUseGainCorrectionTime()>0) {
runNumber = trans->GetCurrentRunNumber();
//AliTPCcalibDB::Instance()->SetRun(runNumber);
TObjArray * timeGainSplines = AliTPCcalibDB::Instance()->GetTimeGainSplinesRun(runNumber);