Check duplicate issues.
Description
If one runs fitting several times fixing/releasing parameters with the same Fitter object and each time prints the FitResult, at some point all parameters are printed as "fixed", even though they are free. This did not happen in ROOT 5, because the result object was recreated on each fitting run, so maps holding the information were recreated. In ROOT 6 the object is updated, but the fFixedParams, fBoundParams are not updated in the process. Furthermore, fFixedParams and fBoundParams are maps, while it seems it would be simpler and more correct if these were std::vector<bool> with the size of the number of parameters, with values updated in FitResult::FillResult() and FitResult::Update() (not sure when one or the other function is called).
Reproducer
I guess Description is sufficient in this case.
ROOT version
at least 6.28 to 6.38
Installation method
irrelevant
Operating system
irrelevant
Additional context
No response
Check duplicate issues.
Description
If one runs fitting several times fixing/releasing parameters with the same Fitter object and each time prints the FitResult, at some point all parameters are printed as "fixed", even though they are free. This did not happen in ROOT 5, because the result object was recreated on each fitting run, so maps holding the information were recreated. In ROOT 6 the object is updated, but the
fFixedParams,fBoundParamsare not updated in the process. Furthermore,fFixedParamsandfBoundParamsare maps, while it seems it would be simpler and more correct if these werestd::vector<bool>with the size of the number of parameters, with values updated inFitResult::FillResult()andFitResult::Update()(not sure when one or the other function is called).Reproducer
I guess Description is sufficient in this case.
ROOT version
at least 6.28 to 6.38
Installation method
irrelevant
Operating system
irrelevant
Additional context
No response