Author: psteitz
Date: Wed Jun 20 15:24:04 2007
New Revision: 549278

URL: http://svn.apache.org/viewvc?view=rev&rev=549278
Log:
Increased default epsilon for Gamma, Beta function evaluation.
JIRA: MATH-166
Reported and patched by Lukas Theussl

Modified:
    
jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Beta.java
    
jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Gamma.java
    
jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/BetaTest.java
    
jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/GammaTest.java
    jakarta/commons/proper/math/trunk/xdocs/changes.xml

Modified: 
jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Beta.java
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Beta.java?view=diff&rev=549278&r1=549277&r2=549278
==============================================================================
--- 
jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Beta.java
 (original)
+++ 
jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Beta.java
 Wed Jun 20 15:24:04 2007
@@ -33,7 +33,7 @@
     private static final long serialVersionUID = -3833485397404128220L;
 
     /** Maximum allowed numerical error. */
-    private static final double DEFAULT_EPSILON = 10e-9;
+    private static final double DEFAULT_EPSILON = 10e-15;
 
     /**
      * Default constructor.  Prohibit instantiation.

Modified: 
jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Gamma.java
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Gamma.java?view=diff&rev=549278&r1=549277&r2=549278
==============================================================================
--- 
jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Gamma.java
 (original)
+++ 
jakarta/commons/proper/math/trunk/src/java/org/apache/commons/math/special/Gamma.java
 Wed Jun 20 15:24:04 2007
@@ -34,7 +34,7 @@
     private static final long serialVersionUID = -6587513359895466954L;
 
     /** Maximum allowed numerical error. */
-    private static final double DEFAULT_EPSILON = 10e-9;
+    private static final double DEFAULT_EPSILON = 10e-15;
 
     /** Lanczos coefficients */
     private static double[] lanczos =

Modified: 
jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/BetaTest.java
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/BetaTest.java?view=diff&rev=549278&r1=549277&r2=549278
==============================================================================
--- 
jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/BetaTest.java
 (original)
+++ 
jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/BetaTest.java
 Wed Jun 20 15:24:04 2007
@@ -38,7 +38,7 @@
     {
         try {
             double actual = Beta.regularizedBeta(x, a, b);
-            TestUtils.assertEquals(expected, actual, 10e-5);
+            TestUtils.assertEquals(expected, actual, 10e-15);
         } catch(MathException ex){
             fail(ex.getMessage());
         }
@@ -46,7 +46,7 @@
 
     private void testLogBeta(double expected, double a, double b) {
         double actual = Beta.logBeta(a, b);
-        TestUtils.assertEquals(expected, actual, 10e-5);
+        TestUtils.assertEquals(expected, actual, 10e-15);
     }
 
     public void testRegularizedBetaNanPositivePositive() {
@@ -114,6 +114,6 @@
     }
     
     public void testLogBetaPositivePositive() {
-        testLogBeta(-0.693147, 1.0, 2.0);
+        testLogBeta(-0.693147180559945, 1.0, 2.0);
     }
 }

Modified: 
jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/GammaTest.java
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/GammaTest.java?view=diff&rev=549278&r1=549277&r2=549278
==============================================================================
--- 
jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/GammaTest.java
 (original)
+++ 
jakarta/commons/proper/math/trunk/src/test/org/apache/commons/math/special/GammaTest.java
 Wed Jun 20 15:24:04 2007
@@ -37,8 +37,8 @@
         try {
             double actualP = Gamma.regularizedGammaP(a, x);
             double actualQ = Gamma.regularizedGammaQ(a, x);
-            TestUtils.assertEquals(expected, actualP, 10e-5);
-            TestUtils.assertEquals(actualP, 1.0 - actualQ, 10e-5);
+            TestUtils.assertEquals(expected, actualP, 10e-15);
+            TestUtils.assertEquals(actualP, 1.0 - actualQ, 10e-15);
         } catch(MathException ex){
             fail(ex.getMessage());
         }
@@ -46,7 +46,7 @@
 
     private void testLogGamma(double expected, double x) {
         double actual = Gamma.logGamma(x);
-        TestUtils.assertEquals(expected, actual, 10e-5);
+        TestUtils.assertEquals(expected, actual, 10e-15);
     }
 
     public void testRegularizedGammaNanPositive() {
@@ -74,7 +74,7 @@
     }
     
     public void testRegularizedGammaPositivePositive() {
-        testRegularizedGamma(0.632121, 1.0, 1.0);
+        testRegularizedGamma(0.632120558828558, 1.0, 1.0);
     }
     
     public void testLogGammaNan() {
@@ -90,6 +90,6 @@
     }
     
     public void testLogGammaPositive() {
-        testLogGamma(0.693147, 3.0);
+        testLogGamma(0.6931471805599457, 3.0);
     }
 }

Modified: jakarta/commons/proper/math/trunk/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/math/trunk/xdocs/changes.xml?view=diff&rev=549278&r1=549277&r2=549278
==============================================================================
--- jakarta/commons/proper/math/trunk/xdocs/changes.xml (original)
+++ jakarta/commons/proper/math/trunk/xdocs/changes.xml Wed Jun 20 15:24:04 2007
@@ -78,6 +78,9 @@
       <action dev="brentworden" type="fix" issue="MATH-153" due-to="Remi 
Arntzen">
         Corrected nextInt and nextLong to handle wide value ranges.
       </action>
+      <action dev="psteitz" type="fix" issue="MATH-166" due-to="Lukas Theussl">
+        Increased default precision of Gamma and Beta functions.
+      </action>
     </release>
     <release version="1.1" date="2005-12-17"  
  description="This is a maintenance release containing bug fixes and 
enhancements.



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to