-Float_t AliTPCseed::CookdEdxNorm(Double_t low, Double_t up, Int_t type, Int_t i1, Int_t i2, AliTPCCalPad * gainMap){
+Float_t AliTPCseed::CookdEdxNorm(Double_t low, Double_t up, Int_t type, Int_t i1, Int_t i2, AliTPCCalPad * gainMap, Bool_t posNorm){
//
// calculates dedx using the cluster
// normalization parametrization taken from AliTPCClusterParam
//
AliTPCClusterParam * parcl = AliTPCClusterParam::Instance();
+ if (!parcl) parcl = AliTPCcalibDB::Instance()->GetClusterParam();
if (!parcl) return 0;
Float_t amp[160];
Int_t indexes[160];
corr = parcl->Qnorm(ipad,type,dr,ty,tz);
}
amp[ncl]=charge/corr;
-
+ if (posNorm){
+ //
+ //
+ //
+ corr = parcl->QnormPos(ipad,type, cluster->GetPad(),cluster->GetTimeBin(), cluster->GetZ(),
+ cluster->GetSigmaY2(),cluster->GetSigmaZ2(),cluster->GetMax(),cluster->GetQ());
+ amp[ncl]/=corr;
+ }
+
+
amp[ncl] *= 2.0; // put mean value to channel 50
if (ipad==0) {
amp[ncl] /= 0.65; // this we will take form OCDB
const TBits& GetClusterMap() const { return fClusterMap; };
const TBits& GetSharedMap() const { return fSharedMap; };
- Float_t CookdEdxNorm(Double_t low=0.05, Double_t up=0.70, Int_t type=0, Int_t i1=0, Int_t i2=159, AliTPCCalPad * gainMap = 0);
+ Float_t CookdEdxNorm(Double_t low=0.05, Double_t up=0.70, Int_t type=0, Int_t i1=0, Int_t i2=159, AliTPCCalPad * gainMap = 0, Bool_t posNorm=kFALSE);
private:
// AliTPCseed & operator = (const AliTPCseed &)