PyROOT problem in minuit minimization

Hello all!

Does anyone know what does it mean when, after running the simplex and migrad minimization , what happens if it stops without ending and the correlation coefficient matrix is all zero?

Thank you in advance!

my last lines:

     FCN=0 FROM MIGRAD    STATUS=CONVERGED      76 CALLS          98 TOTAL
                     EDM=0    STRATEGY= 1      ERROR MATRIX ACCURATE
  EXT PARAMETER                                   STEP         FIRST
  NO.   NAME      VALUE            ERROR          SIZE      DERIVATIVE
   2  AN1          3.50000e+00   3.39038e+00   4.00187e-03 -4.33187e-307
   3  B1           3.00000e-01   1.55896e+00   1.11311e-03 -1.55740e-306
   4  D01          5.00000e-01   6.99781e-01   2.02450e-03 -8.56291e-307
   5  AN2          0.00000e+00   constant
   6  B2           1.00000e-02   6.48821e+00   3.18387e-04 -5.44482e-306
   7  D02          5.00000e-01   5.55649e-01   2.12858e-02 -8.14421e-308
   8  ANg          0.00000e+00   constant
   9  Bg           0.00000e+00   constant
  10  D0g          1.00000e+00   1.49338e-02   1.00167e-02 -1.73066e-307
 EXTERNAL ERROR MATRIX.    NDIM=  25    NPAR=  6    ERR DEF=1
 2.886e+305  0.000e+00  0.000e+00  0.000e+00  0.000e+00  0.000e+00
  0.000e+00 2.885e+303  0.000e+00  0.000e+00  0.000e+00  0.000e+00
  0.000e+00  0.000e+00 2.885e+303  0.000e+00  0.000e+00  0.000e+00
  0.000e+00  0.000e+00  0.000e+00 2.892e+301  0.000e+00  0.000e+00
  0.000e+00  0.000e+00  0.000e+00  0.000e+00 2.929e+305  0.000e+00
  0.000e+00  0.000e+00  0.000e+00  0.000e+00  0.000e+00 2.894e+301
 PARAMETER  CORRELATION COEFFICIENTS
       NO.  GLOBAL      2      3      4      6      7     10
        2  0.00000   0.000  0.000  0.000  0.000  0.000  0.000
        3  0.00000   0.000  0.000  0.000  0.000  0.000  0.000
        4  0.00000   0.000  0.000  0.000  0.000  0.000  0.000
        6  0.00000   0.000  0.000  0.000  0.000  0.000  0.000
        7  0.00000   0.000  0.000  0.000  0.000  0.000  0.000
       10  0.00000   0.000  0.000  0.000  0.000  0.000  0.000

and it doesn’t show anything else!

The error matrix has blown up, see the diagonal entries with values > 1E300. Do you have a reproducer? And @moneta might have additional insights!

It looks to me that both the gradient and the second derivatives are pratically zero. This means that you have a problem in the function definition you have provided to Minuit

Lorenzo

I understand there is a problem at the definition of the fcn function. Do you know what should i consider more when writing in python? Because the script in c++ is running correctly. Are there any examples in PyRoot with Minuit? The only thing i found is this similar example : http://www-ekp.physik.uni-karlsruhe.de/~quast/Skripte/diving_into_ROOT.pdf ( page 50) and it doesn’t run correctly also, it doesn’t fit at all.

Thanks for the help again! I really apreciate it!

Hi,
You should not use directly the TMinuit class from Python, but use the Minimizer interface.
You can probably easily convert this C++ example to Python:
https://root.cern.ch/doc/master/NumericalMinimization_8C.html

If you need help with this, please let me know

Lorenzo

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.