TH1::Fit's Quite mode not always quiet

Hi,

I have a question about the “Q” quiet mode when performing a fit with the “E” (“Perform better Errors estimation using Minos technique”) option. When doing this I sometimes see the following output:

NEW MINIMUM FOUND. GO BACK TO MINIMIZATION STEP.

                                              V                                                    
                                              V
                                              V
                                        VVVVVVV                            
                                          VVVVV                                  
                                            VVV  
                                              V

I am wondering if there is a way to suppress this output. If not, is this a bug, or is it a desired feature?

Cheers,
Orin

The message is important because a new better minimum is found.
However, I agree, if you ask the quite mode it should be suppressed.
I would be grateful if you send me a script reproducing this so I can investigate it further,

Best Regards

Lorenzo

Here is a script:
//////////////FitTest.C
using namespace std;

Double_t f(Double_t *x,Double_t *par)
{
Double_t f = par[0] + ( par[3] / ( 1 + ( TMath::Exp((-x[0]+par[1])/par[2]) ) ) );
return f;
}

FitTest() {
TH1F* h = new TH1F(“test”,“test”,100,0,2000);
TRandom rnd(1255960411);
for(int i=0; i<1000; ++i) h->Fill( rnd.Uniform(0,2000) );
TF1 f1(“f1”, &f, 700, 1000, 4);
f1.SetParameters(2, 1830, 20, 17);
h->Fit(“f1”,“BRQE”);
}
////////////////

Running with root 5.25/02:

root FitTest.C
root [0]
Processing FitTest.C…
NEW MINIMUM FOUND. GO BACK TO MINIMIZATION STEP.
=================================================
V
V
V
VVVVVVV
VVVVV
VVV
V

TCanvas::MakeDefCanvas: created default TCanvas with name c1
(int)0

Cheers,
Orin

Thank you very much for the example program. I see also other several problem running this example.
The Migrad minimization returns an invalid Hesse (it is not positive defined) and then Minos finds a new minimum. The fit result parameter reported are also non those after Minos and a new minimization, but the failed one from Hesse. It is also wrong that the return status of TH1::Fit is zero. If we suppress all error message we should at least return a status code.
I will try to fix these other problems too.

Best Regards

Lorenzo

was any solution found for this question?
i am having the same problem.

You can quiet it by making Minuit’s output use the regular ROOT error message system, then setting the right ignore level.

See here a bug report on JIRA (that I should have first posted about there on ROOT Talk): https://sft.its.cern.ch/jira/browse/ROOT-6926

And here on my personal wiki: (open both articles with the tag “error”). Unfortunately I can’t link directly because TiddlyWiki permalink syntax messes up the phpBB tag syntax.
http://www.phas.ubc.ca/~jfcaron/ROOTTricks.html

Jean-François

Thank you, it did the trick.