#include "AliTPCCorrection.h"
#include <TVectorD.h>
#include <TMatrixFfwd.h>
+#include <THn.h>
class AliTPCCorrectionLookupTable : public AliTPCCorrection {
void CreateLookupTable(AliTPCCorrection &tpcCorr, Float_t stepSize=5.);
void CreateLookupTableSinglePhi(AliTPCCorrection &tpcCorr, Int_t iPhi, Float_t stepSize=5.);
+ void CreateLookupTableFromResidualDistortion(THn &resDist);
+ void CreateResidual(AliTPCCorrection *distortion, AliTPCCorrection* correction);
+
void MergePhiTables(const char* files);
void SetFillCorrection(Bool_t fill) { fFillCorrection=fill; }
const TVectorD& GetLimitsPhi() const { return fLimitsPhi; }
const TVectorD& GetLimitsZ() const { return fLimitsZ; }
+ void SetCorrScaleFactor(Float_t val) { fCorrScaleFactor = val; }
+ Float_t GetCorrScaleFactor() const { return fCorrScaleFactor; }
+
private:
// sizes of lookup tables
Int_t fNR; // number of rows (r) used for lookup table
Int_t fNPhi; // number of phi slices used for lookup table
Int_t fNZ; // number of columns (z) used for lookup table
+
+ Float_t fCorrScaleFactor; // overall scaling factor for the correction
+
Bool_t fFillCorrection; // whether to also fill the correction tables
//
TVectorD fLimitsR; // bin limits in row direction
const Float_t xref[3], Float_t xret[3]);
AliTPCCorrectionLookupTable(const AliTPCCorrectionLookupTable &corr);
AliTPCCorrectionLookupTable& operator= (const AliTPCCorrectionLookupTable &corr);
- ClassDef(AliTPCCorrectionLookupTable,2); // TPC corrections dumped into a lookup table
+
+ ClassDef(AliTPCCorrectionLookupTable,3); // TPC corrections dumped into a lookup table
};