This commit is contained in:
Thorsten Sommer 2020-09-30 20:40:53 +02:00
parent d4f2547c78
commit 4b97c44b1c
2 changed files with 8 additions and 8 deletions

View File

@ -4,7 +4,7 @@ using System.Threading.Tasks;
namespace FastRng.Double.Distributions
{
public sealed class Beta : IDistribution
public sealed class BetaA2B2 : IDistribution
{
private const double ALPHA = 2;
private const double BETA = 2;
@ -13,7 +13,7 @@ namespace FastRng.Double.Distributions
private ShapeFitter fitter;
private IRandom random;
public Beta()
public BetaA2B2()
{
}
@ -23,7 +23,7 @@ namespace FastRng.Double.Distributions
set
{
this.random = value;
this.fitter = new ShapeFitter(Beta.ShapeFunction, this.random, 50, 0.99);
this.fitter = new ShapeFitter(BetaA2B2.ShapeFunction, this.random, 50, 0.99);
}
}

View File

@ -20,7 +20,7 @@ namespace FastRngTests.Double.Distributions
const double MEAN = A / (A + B);
const double VARIANCE = (A * B) / ((A + B) * (A + B) * (A + B + 1.0));
var dist = new FastRng.Double.Distributions.Beta();
var dist = new FastRng.Double.Distributions.BetaA2B2();
var stats = new RunningStatistics();
var rng = new MultiThreadedRng();
@ -43,7 +43,7 @@ namespace FastRngTests.Double.Distributions
var rng = new MultiThreadedRng();
var samples = new double[1_000];
for (var n = 0; n < samples.Length; n++)
samples[n] = await rng.NextNumber(-1.0, 1.0, new FastRng.Double.Distributions.Beta());
samples[n] = await rng.NextNumber(-1.0, 1.0, new FastRng.Double.Distributions.BetaA2B2());
rng.StopProducer();
Assert.That(samples.Min(), Is.GreaterThanOrEqualTo(-1.0), "Min out of range");
@ -58,7 +58,7 @@ namespace FastRngTests.Double.Distributions
var rng = new MultiThreadedRng();
var samples = new double[1_000];
for (var n = 0; n < samples.Length; n++)
samples[n] = await rng.NextNumber(0.0, 1.0, new FastRng.Double.Distributions.Beta());
samples[n] = await rng.NextNumber(0.0, 1.0, new FastRng.Double.Distributions.BetaA2B2());
rng.StopProducer();
Assert.That(samples.Min(), Is.GreaterThanOrEqualTo(0.0), "Min is out of range");
@ -71,7 +71,7 @@ namespace FastRngTests.Double.Distributions
public async Task TestBetaGeneratorWithRange03()
{
var rng = new MultiThreadedRng();
var dist = new FastRng.Double.Distributions.Beta { Random = rng }; // Test default parameters
var dist = new FastRng.Double.Distributions.BetaA2B2 { Random = rng }; // Test default parameters
var samples = new double[1_000];
for (var n = 0; n < samples.Length; n++)
@ -87,7 +87,7 @@ namespace FastRngTests.Double.Distributions
[Category(TestCategories.NORMAL)]
public async Task NoRandomNumberGenerator01()
{
var dist = new FastRng.Double.Distributions.Beta();
var dist = new FastRng.Double.Distributions.BetaA2B2();
Assert.DoesNotThrowAsync(async () => await dist.GetDistributedValue());
Assert.That(await dist.GetDistributedValue(), Is.NaN);
}