Re: Using single precision in Minuit2/Migrad

From: Lorenzo Moneta <Lorenzo.Moneta_at_cern.ch>
Date: Mon, 24 Aug 2009 09:45:23 +0200


Hello Adam,

  you should be able to change the precision in Minuit2, by calling the method SetPrecision either on the MnMigrad class or on the MnUserParameterState, depending on which interface you are using. You should pass as argument then the single precision value, 1.19209e-07. For example in the case of the tutorial DemoGaussian.cpp (shown in the Minuit2 user Guide, ), you would need to do

// create MIGRAD minimizer
MnMigrad migrad(theFCN, upar);

migrad.SetPrecision(1.19209e-07);

// minimize
FunctionMinimum min = migrad();

Please let me know if you have any further problems,

  Best Regards

  Lorenzo
On Aug 23, 2009, at 5:04 PM, Adam Simpson wrote:

> Hi, I am interested in using Minuit2 to do a Migrad minimization but
> with an FCN that does computations only in single precision. Could
> anyone tell me exactly what needs to be changed to tell Minuit2 that
> my FCN is single precision? I messed around with
> MnMachinePrecision::SetPrecision() for quite a while but was unable
> to get anywhere and the documentation seems limited in this respect
> so I imagine I am just using it incorrectly. Thanks
>
> Adam Simpson
> University of Cincinnati
>
Received on Mon Aug 24 2009 - 09:45:28 CEST

This archive was generated by hypermail 2.2.0 : Mon Aug 24 2009 - 17:50:02 CEST