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