fixed fitting issue for boundaries none/none (MUSR-136), and some minor cleanup in PFitter
This commit is contained in:
parent
1688a904f6
commit
6774573f7a
@ -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)
|
||||
|
@ -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++) {
|
||||
|
@ -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
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user