When trying to fit my 2D histogram using RooFit I cannot get the fit to converge. I get the following error:
Info in : VariableMetricBuilder: Stop the minimization - reached machine accuracy limit
Info in : Edm is smaller than machine accuracy : machineLimit = 0.0464087
Info in : Current Edm is : edm = 0.00333633
Info in : Required Edm is : edmval = 0.001
After looking into this error I saw that one way around this is to raise the tolerance by running Minuit2 directly with RooMinuit::setEps(Double_t eps)
But I am new to RooFit and have been using the fitTo function:
GJfit = simpdf.fitTo(obs,
ROOT.RooFit.Extended(True),
ROOT.RooFit.SumW2Error(True),
ROOT.RooFit.Strategy(2),
ROOT.RooFit.Save(),
ROOT.RooFit.Minimizer('Minuit2', 'migrad'),
ROOT.RooFit.PrintLevel(1),
)
In order to perform my fit. Is there a way to change the tolerance of the fit for the fitTo function or do I need to learn how to use Minuit2 directly?