GaussianFitter Unexpectedly Throws NotStrictlyPositiveException
---------------------------------------------------------------

                 Key: MATH-519
                 URL: https://issues.apache.org/jira/browse/MATH-519
             Project: Commons Math
          Issue Type: Bug
    Affects Versions: 3.0
            Reporter: Ole Ersoy
             Fix For: 3.0


Running the following:

        double[] observations = 
        { 
                        1.1143831578403364E-29, 
                         4.95281403484594E-28, 
                         1.1171347211930288E-26, 
                         1.7044813962636277E-25, 
                         1.9784716574832164E-24, 
                         1.8630236407866774E-23, 
                         1.4820532905097742E-22, 
                         1.0241963854632831E-21, 
                         6.275077366673128E-21, 
                         3.461808994532493E-20, 
                         1.7407124684715706E-19, 
                         8.056687953553974E-19, 
                         3.460193945992071E-18, 
                         1.3883326374011525E-17, 
                         5.233894983671116E-17, 
                         1.8630791465263745E-16, 
                         6.288759227922111E-16, 
                         2.0204433920597856E-15, 
                         6.198768938576155E-15, 
                         1.821419346860626E-14, 
                         5.139176445538471E-14, 
                         1.3956427429045787E-13, 
                         3.655705706448139E-13, 
                         9.253753324779779E-13, 
                         2.267636001476696E-12, 
                         5.3880460095836855E-12, 
                         1.2431632654852931E-11 
        };
  
        GaussianFitter g = 
                new GaussianFitter(new LevenbergMarquardtOptimizer());
        
        for (int index = 0; index < 27; index++)
        {
                g.addObservedPoint(index, observations[index]);
        }
        g.fit();

Results in:

org.apache.commons.math.exception.NotStrictlyPositiveException: -1.277 is 
smaller than, or equal to, the minimum (0)
        at 
org.apache.commons.math.analysis.function.Gaussian$Parametric.validateParameters(Gaussian.java:184)
        at 
org.apache.commons.math.analysis.function.Gaussian$Parametric.value(Gaussian.java:129)


I'm guessing the initial guess for sigma is off.  

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to