slight performance increase.
This commit is contained in:
parent
b0d9111039
commit
6da091c96b
@ -41,6 +41,8 @@ PRunNonMusr::PRunNonMusr() : PRunBase()
|
|||||||
{
|
{
|
||||||
fNoOfFitBins = 0;
|
fNoOfFitBins = 0;
|
||||||
fPacking = 1;
|
fPacking = 1;
|
||||||
|
fStartTimeBin = 0;
|
||||||
|
fEndTimeBin = 0;
|
||||||
|
|
||||||
fHandleTag = kEmpty;
|
fHandleTag = kEmpty;
|
||||||
|
|
||||||
@ -105,14 +107,12 @@ Double_t PRunNonMusr::CalcChiSquare(const std::vector<Double_t>& par)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// calculate chi square
|
// calculate chi square
|
||||||
Double_t x;
|
Double_t x(1.0);
|
||||||
for (UInt_t i=0; i<fData.GetValue()->size(); i++) {
|
for (UInt_t i=fStartTimeBin; i<=fEndTimeBin; i++) {
|
||||||
x = fData.GetX()->at(i);
|
x = fData.GetX()->at(i);
|
||||||
if ((x>=fFitStartTime) && (x<=fFitEndTime)) {
|
|
||||||
diff = fData.GetValue()->at(i) - fTheory->Func(x, par, fFuncValues);
|
diff = fData.GetValue()->at(i) - fTheory->Func(x, par, fFuncValues);
|
||||||
chisq += diff*diff / (fData.GetError()->at(i)*fData.GetError()->at(i));
|
chisq += diff*diff / (fData.GetError()->at(i)*fData.GetError()->at(i));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return chisq;
|
return chisq;
|
||||||
}
|
}
|
||||||
@ -279,6 +279,17 @@ Bool_t PRunNonMusr::PrepareFitData()
|
|||||||
fNoOfFitBins++;
|
fNoOfFitBins++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// get start/end bin
|
||||||
|
const PDoubleVector *xx = fData.GetX();
|
||||||
|
fStartTimeBin = 0;
|
||||||
|
fEndTimeBin = xx->size()-1;
|
||||||
|
for (UInt_t i=0; i<xx->size(); i++) {
|
||||||
|
if (xx->at(i) < fFitStartTime)
|
||||||
|
fStartTimeBin = i;
|
||||||
|
if (xx->at(i) < fFitEndTime)
|
||||||
|
fEndTimeBin = i;
|
||||||
|
}
|
||||||
|
|
||||||
return success;
|
return success;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user