class AliTRDCalibraMode;
class AliTRDCalibraVector;
class AliTRDCalibraVdriftLinearFit;
+class AliTRDCalibraExbAltFit;
class AliTRDcluster;
class AliTRDtrackV1;
-class AliTRDtrack;
class AliTRDseedV1;
class AliTRDgeometry;
class AliTRDCalDet;
// Functions for initialising and filling with AliTRDtrackV1
Bool_t Init2Dhistos(Int_t nboftimebin = -1);
Bool_t InitCalDet();
- Bool_t UpdateHistograms(const AliTRDtrack *t);
Bool_t UpdateHistogramsV1(const AliTRDtrackV1 *t);
// Process events DAQ
void SetVector2d(Bool_t vector2d = kTRUE) { fVector2d = vector2d; }
void SetLinearFitterOn(Bool_t linearfitteron = kTRUE) { fLinearFitterOn = linearfitteron;}
void SetLinearFitterDebugOn(Bool_t debug = kTRUE) { fLinearFitterDebugOn = debug; }
+ void SetExbAltFitOn(Bool_t fiton = kTRUE) { fExbAltFitOn = fiton;}
+ void SetFirstRunGain(Int_t firstRunGain) { fFirstRunGain = firstRunGain; }
void SetVersionGainUsed(Int_t versionGainUsed) { fVersionGainUsed = versionGainUsed; }
void SetSubVersionGainUsed(Int_t subVersionGainUsed) { fSubVersionGainUsed = subVersionGainUsed; }
+ void SetFirstRunGainLocal(Int_t firstRunGainLocal) { fFirstRunGainLocal = firstRunGainLocal; }
void SetVersionGainLocalUsed(Int_t versionGainLocalUsed) { fVersionGainLocalUsed = versionGainLocalUsed; }
void SetSubVersionGainLocalUsed(Int_t subVersionGainLocalUsed) { fSubVersionGainLocalUsed = subVersionGainLocalUsed; }
+ void SetFirstRunVdrift(Int_t firstRunVdrift) { fFirstRunVdrift = firstRunVdrift; }
void SetVersionVdriftUsed(Int_t versionVdriftUsed) { fVersionVdriftUsed = versionVdriftUsed; }
void SetSubVersionVdriftUsed(Int_t subVersionVdriftUsed) { fSubVersionVdriftUsed = subVersionVdriftUsed; }
-
+ void SetFirstRunExB(Int_t firstRunExB) { fFirstRunExB = firstRunExB; }
+ void SetVersionExBUsed(Int_t versionExBUsed) { fVersionExBUsed = versionExBUsed; }
+ void SetSubVersionExBUsed(Int_t subVersionExBUsed) { fSubVersionExBUsed = subVersionExBUsed; }
+
Bool_t GetPH2dOn() const { return fPH2dOn; }
Bool_t GetCH2dOn() const { return fCH2dOn; }
TProfile2D *GetPRF2d() const { return fPRF2d; }
TObjArray GetLinearFitterArray() const { return fLinearFitterArray; }
TLinearFitter *GetLinearFitter(Int_t detector, Bool_t force=kFALSE);
- AliTRDCalibraVdriftLinearFit *GetVdriftLinearFit() const { return fLinearVdriftFit; }
+ AliTRDCalibraVdriftLinearFit *GetVdriftLinearFit() const { return fLinearVdriftFit; }
+ AliTRDCalibraExbAltFit *GetExbAltFit() const { return fExbAltFit; }
// How to fill the 2D
Bool_t fVector2d; // Chose to fill vectors
Bool_t fLinearFitterOn; // Method with linear fit for drift velocity
Bool_t fLinearFitterDebugOn; // Method with linear fit for drift velocity
+ Bool_t fExbAltFitOn; // Enable parabolic fit for exb
// How to fill the 2D
Float_t fRelativeScale; // Scale of the deposited charge
Float_t fMaxCluster; // Max amplitude of one cluster
Short_t fNbMaxCluster; // Number of tb at the end
// Back correction
+ Int_t fFirstRunGain; // FirstRunGain
Int_t fVersionGainUsed; // VersionGainUsed
Int_t fSubVersionGainUsed; // SubVersionGainUsed
+ Int_t fFirstRunGainLocal; // FirstRunGainLocal
Int_t fVersionGainLocalUsed; // VersionGainUsed
Int_t fSubVersionGainLocalUsed;// SubVersionGainUsed
+ Int_t fFirstRunVdrift; // FirstRunVdrift
Int_t fVersionVdriftUsed; // VersionVdriftUsed
Int_t fSubVersionVdriftUsed; // SubVersionVdriftUsed
+ Int_t fFirstRunExB; // FirstRunExB
+ Int_t fVersionExBUsed; // VersionExBUsed
+ Int_t fSubVersionExBUsed; // SubVersionExBUsed
// Calibration mode
AliTRDCalibraMode *fCalibraMode; // Calibration mode
TH2I *fCH2d; // 2D deposited charge
TObjArray fLinearFitterArray; // TObjArray of Linear Fitters for the detectors
AliTRDCalibraVdriftLinearFit *fLinearVdriftFit; // Info Linear Fit
+ AliTRDCalibraExbAltFit *fExbAltFit; // ExB parabolic fit (alternative to vdrift linear fit)
// Current calib object: to correct for the database used
AliTRDCalDet *fCalDetGain; // Current calib object gain
// Calibration with AliTRDtrackV1
void FillTheInfoOfTheTrackPH();
void FillTheInfoOfTheTrackCH(Int_t nbclusters);
- Bool_t FindP1TrackPHtracklet(const AliTRDtrack *t, Int_t index0, Int_t index1);
Bool_t FindP1TrackPHtrackletV1(const AliTRDseedV1 *tracklet, Int_t nbclusters);
- Bool_t HandlePRFtracklet(const AliTRDtrack *t, Int_t index0, Int_t index1);
Bool_t HandlePRFtrackletV1(const AliTRDseedV1 *tracklet, Int_t nbclusters);
void ResetfVariablestracklet();
void StoreInfoCHPHtrack(const AliTRDcluster *cl,const Double_t dqdl,const Int_t *group,const Int_t row,const Int_t col,const AliTRDcluster *cls=0x0);