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 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 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
|
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 formatting of the ASCII fit output file for long parameter names (MUSR-142)
|
||||||
FIXED time window frame bug in musrview (MUSR-138)
|
FIXED time window frame bug in musrview (MUSR-138)
|
||||||
FIXED calculation of LF relaxation functions for big static widths (MUSR-139)
|
FIXED calculation of LF relaxation functions for big static widths (MUSR-139)
|
||||||
|
@ -543,19 +543,15 @@ Bool_t PFitter::SetParameters()
|
|||||||
} else { // add free parameter
|
} else { // add free parameter
|
||||||
// check if boundaries are given
|
// check if boundaries are given
|
||||||
if (fParams[i].fNoOfParams > 5) { // boundaries 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 &&
|
if (fParams[i].fLowerBoundaryPresent &&
|
||||||
fParams[i].fUpperBoundaryPresent) { // upper and lower boundaries given
|
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,
|
fMnUserParams.Add(fParams[i].fName.Data(), fParams[i].fValue, fParams[i].fStep,
|
||||||
fParams[i].fLowerBoundary, fParams[i].fUpperBoundary);
|
fParams[i].fLowerBoundary, fParams[i].fUpperBoundary);
|
||||||
} else if (fParams[i].fLowerBoundaryPresent &&
|
} else if (fParams[i].fLowerBoundaryPresent &&
|
||||||
!fParams[i].fUpperBoundaryPresent) { // lower boundary limited
|
!fParams[i].fUpperBoundaryPresent) { // lower boundary limited
|
||||||
//cout << endl << ">> lower only";
|
|
||||||
fMnUserParams.Add(fParams[i].fName.Data(), fParams[i].fValue, fParams[i].fStep);
|
fMnUserParams.Add(fParams[i].fName.Data(), fParams[i].fValue, fParams[i].fStep);
|
||||||
fMnUserParams.SetLowerLimit(fParams[i].fName.Data(), fParams[i].fLowerBoundary);
|
fMnUserParams.SetLowerLimit(fParams[i].fName.Data(), fParams[i].fLowerBoundary);
|
||||||
} else { // upper boundary limited
|
} else { // upper boundary limited
|
||||||
//cout << endl << ">> upper only";
|
|
||||||
fMnUserParams.Add(fParams[i].fName.Data(), fParams[i].fValue, fParams[i].fStep);
|
fMnUserParams.Add(fParams[i].fName.Data(), fParams[i].fValue, fParams[i].fStep);
|
||||||
fMnUserParams.SetUpperLimit(fParams[i].fName.Data(), fParams[i].fUpperBoundary);
|
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
|
// check if there is an unused parameter, if so, fix it
|
||||||
for (UInt_t i=0; i<fParams.size(); i++) {
|
for (UInt_t i=0; i<fParams.size(); i++) {
|
||||||
|
@ -2167,6 +2167,10 @@ Bool_t PMsrHandler::HandleFitParameterEntry(PMsrLines &lines)
|
|||||||
error = true;
|
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