Browse Source

SpecialFunctions: increase iteration limit of BetaRegularized from 100 to 120

pull/184/head
Christoph Ruegg 13 years ago
parent
commit
acd0eb623d
  1. 2
      src/Numerics/SpecialFunctions/Beta.cs
  2. 8
      src/UnitTests/SpecialFunctionsTests/SpecialFunctionsTests.cs

2
src/Numerics/SpecialFunctions/Beta.cs

@ -121,7 +121,7 @@ namespace MathNet.Numerics
var symmetryTransformation = x >= (a + 1.0) / (a + b + 2.0);
/* Continued fraction representation */
const int maxIterations = 100;
const int maxIterations = 120;
var eps = Precision.DoublePrecision;
var fpmin = 0.0.Increment() / eps;

8
src/UnitTests/SpecialFunctionsTests/SpecialFunctionsTests.cs

@ -267,6 +267,14 @@ namespace MathNet.Numerics.UnitTests.SpecialFunctionsTests
AssertHelpers.AlmostEqualRelative(f, SpecialFunctions.BetaRegularized(a, b, x), 11);
}
[Test]
public void BetaRegularizedLargeArguments()
{
Assert.That(
SpecialFunctions.BetaRegularized(3846.2382301675848, 738420369.64263761, 0.0000052331266889206809),
Is.EqualTo(0.61624368331298802128).Within(1e-5));
}
/// <summary>
/// Logit function.
/// </summary>

Loading…
Cancel
Save