fixed fitting issue for boundaries none/none (MUSR-136), and some minor cleanup in PFitter

This commit is contained in:
nemu 2010-08-31 06:02:06 +00:00
parent 1688a904f6
commit 6774573f7a
3 changed files with 5 additions and 5 deletions

View File

@ -19,6 +19,7 @@ NEW integration of a few external musrfit plug-ins into the standard build proce
NEW default estimates for 'data' and 'background' entries in RUN blocks
NEW directory with some msr- and data-files for quick testing of new musrfit installations
NEW option to musrt0: the key 'T' will set the t0 cursor to the maximum of the histogram
FIXED fitting issue for boundaries none/none (MUSR-136)
FIXED formatting of the ASCII fit output file for long parameter names (MUSR-142)
FIXED time window frame bug in musrview (MUSR-138)
FIXED calculation of LF relaxation functions for big static widths (MUSR-139)

View File

@ -543,19 +543,15 @@ Bool_t PFitter::SetParameters()
} else { // add free parameter
// check if boundaries are given
if (fParams[i].fNoOfParams > 5) { // boundaries given
//cout << endl << ">> name=" << fParams[i].fName.Data() << ", lower=" << fParams[i].fLowerBoundaryPresent << ", upper=" << fParams[i].fUpperBoundaryPresent;
if (fParams[i].fLowerBoundaryPresent &&
fParams[i].fUpperBoundaryPresent) { // upper and lower boundaries given
//cout << endl << ">> lower and upper";
fMnUserParams.Add(fParams[i].fName.Data(), fParams[i].fValue, fParams[i].fStep,
fParams[i].fLowerBoundary, fParams[i].fUpperBoundary);
} else if (fParams[i].fLowerBoundaryPresent &&
!fParams[i].fUpperBoundaryPresent) { // lower boundary limited
//cout << endl << ">> lower only";
fMnUserParams.Add(fParams[i].fName.Data(), fParams[i].fValue, fParams[i].fStep);
fMnUserParams.SetLowerLimit(fParams[i].fName.Data(), fParams[i].fLowerBoundary);
} else { // upper boundary limited
//cout << endl << ">> upper only";
fMnUserParams.Add(fParams[i].fName.Data(), fParams[i].fValue, fParams[i].fStep);
fMnUserParams.SetUpperLimit(fParams[i].fName.Data(), fParams[i].fUpperBoundary);
}
@ -564,7 +560,6 @@ Bool_t PFitter::SetParameters()
}
}
}
//cout << endl;
// check if there is an unused parameter, if so, fix it
for (UInt_t i=0; i<fParams.size(); i++) {

View File

@ -2167,6 +2167,10 @@ Bool_t PMsrHandler::HandleFitParameterEntry(PMsrLines &lines)
error = true;
}
}
// check for lower-/upper-boundaries = none/none
if (!param.fLowerBoundary && !param.fUpperBoundary)
param.fNoOfParams = 5; // since there are no real boundaries present
}
}