Browse Source

Fixed unit test failure: Triangular should not accept infinite parameters.

I noticed that none of the other distribution classes check for infinite values, but perhaps they should.
See #201.
Note that +Infinity is a valid input parameter for the Beta distribution (see BetaTests.cs).
provider
David Prince 13 years ago
parent
commit
e93f35b8f0
  1. 4
      src/Numerics/Distributions/Triangular.cs

4
src/Numerics/Distributions/Triangular.cs

@ -96,7 +96,9 @@ namespace MathNet.Numerics.Distributions
/// <exception cref="ArgumentOutOfRangeException">When the parameters are out of range.</exception>
void SetParameters(double lower, double upper, double mode)
{
if (upper < mode || mode < lower || Double.IsNaN(upper) || Double.IsNaN(lower) || Double.IsNaN(mode))
if (upper < mode || mode < lower || Double.IsNaN(upper) || Double.IsNaN(lower) || Double.IsNaN(mode)
|| Double.IsInfinity(upper) || Double.IsInfinity(lower) || Double.IsInfinity(mode)
)
{
throw new ArgumentException(Resources.InvalidDistributionParameters);
}

Loading…
Cancel
Save