((AliCorrectionMatrix2D &)c).Copy(*this);
}
+//____________________________________________________________________
+AliCorrectionMatrix2D &AliCorrectionMatrix2D::operator=(const AliCorrectionMatrix2D &c)
+{
+ // assigment operator
+
+ if (this != &c)
+ ((AliCorrectionMatrix2D &) c).Copy(*this);
+
+ return *this;
+}
+
//____________________________________________________________________
AliCorrectionMatrix2D::AliCorrectionMatrix2D(const Char_t* name, const Char_t* title,
Int_t nBinX, Float_t Xmin, Float_t Xmax,
}
//____________________________________________________________________
-TH1F* AliCorrectionMatrix2D::Get1DCorrection(Char_t* opt)
+TH1F* AliCorrectionMatrix2D::Get1DCorrection(Char_t* opt, Float_t min, Float_t max)
{
//
// integrate the correction over one variable
TH1D* gene1D = 0;
if (strcmp(opt,"x")==0) {
- meas1D = GetMeasuredHistogram()->ProjectionX();
- gene1D = GetGeneratedHistogram()->ProjectionX();
+ Int_t binMin = GetMeasuredHistogram()->GetYaxis()->FindBin(min);
+ Int_t binMax = GetMeasuredHistogram()->GetYaxis()->FindBin(max);
+
+ if (min==0 && max==0) {
+ meas1D = GetMeasuredHistogram()->ProjectionX();
+ gene1D = GetGeneratedHistogram()->ProjectionX();
+ }
+ else {
+ AliDebug(AliLog::kDebug+1, Form("Getting 1D map. Including y-bins %d to %d \n", binMin, binMax));
+
+ meas1D = GetMeasuredHistogram()->ProjectionX("pm",binMin,binMax);
+ gene1D = GetGeneratedHistogram()->ProjectionX("pg",binMin,binMax);
+ }
}
if (strcmp(opt,"y")==0) {
- meas1D = GetMeasuredHistogram()->ProjectionY();
- gene1D = GetGeneratedHistogram()->ProjectionY();
+ Int_t binMin = GetMeasuredHistogram()->GetXaxis()->FindBin(min);
+ Int_t binMax = GetMeasuredHistogram()->GetXaxis()->FindBin(max);
+
+ if (min==0 && max==0) {
+ meas1D = GetMeasuredHistogram()->ProjectionY();
+ gene1D = GetGeneratedHistogram()->ProjectionY();
+ }
+ else {
+ AliDebug(AliLog::kDebug+1, Form("Getting 1D map. Including x-bins %d to %d \n", binMin, binMax));
+
+ meas1D = GetMeasuredHistogram()->ProjectionY("pm", binMin, binMax);
+ gene1D = GetGeneratedHistogram()->ProjectionY("pg", binMin, binMax);
+ }
}
gene1D->Sumw2();