I recently discovered the TMultiDimFit class which is exactly what I was looking for: I have to track
particles in a rather complex magnetic field and from the 8 experimental input parameters I can now extract their magnetic rigidities.
The routine is fast and seems reliable. I tested the RMS deviation between the fit and the real data (as well as other simulated data) directly after the fit using the TMultiDimFit::Eval method. This systematic study was performed to tune all the parameters to obtain the best results. In particular I tested the Monomials, Chebyshev or Legendre polynomials options.
Now I am moving to real data and hence I am using the code generated by TMultiDimFit::MakeCode(). But then the output of this function did not make any sense, although the results from TMultiDimFit::Eval were pretty good. Also the coefficient displayed and present in the generated code looks the same. I suspected the type of polynomials to be responsible for this discrepancy.
Indeed, it seems that the generated code for Legendre is not compatible with the coefficients, although the MDF function are all different. Monomials and Chebichev looks Ok. Is this a bug or there is something I am missing (like a option for MakeCode) ?
I am using ROOT 5.32/00 on Linux x86_64.
Thank you in advance