mirror of
https://github.com/wassname/random.js.git
synced 2026-09-09 11:32:35 +08:00
add unittest and bugfix
This commit is contained in:
+3
-2
@@ -80,7 +80,7 @@
|
||||
return a + b * log(-log(_this.uniform(0, 1)));
|
||||
};
|
||||
|
||||
exports.fRadio = function (v, w) {
|
||||
exports.fRatio = function (v, w) {
|
||||
return (_this.chiSquare(v) / v) / (_this.chiSquare(w) / w);
|
||||
};
|
||||
|
||||
@@ -223,7 +223,7 @@
|
||||
do {
|
||||
x = _this.uniform(0, areaMax) / (yMax - yMin) + xMin;
|
||||
y = _this.uniform(yMin, yMax);
|
||||
} while (y > ysf(x, xMin, xMax));
|
||||
} while (y > usf(x, xMin, xMax));
|
||||
return x;
|
||||
};
|
||||
|
||||
@@ -251,6 +251,7 @@
|
||||
exports.hypergeometric = function (n, N, K) {
|
||||
var count = 0;
|
||||
for (var i = 0; i < n; i++, N--) {
|
||||
var p = K / N;
|
||||
if (_this.bernoulli(p)) {
|
||||
count++;
|
||||
K--;
|
||||
|
||||
+97
-1
@@ -7,7 +7,103 @@ describe('Random', function () {
|
||||
random.arcsine(0, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Beta', function () {
|
||||
random.arcsine(0.5, 5, 0, 3).should.be.a('number');
|
||||
random.beta(1, 1, 0, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Cauchy', function () {
|
||||
random.cauchy(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Chi-Square', function () {
|
||||
random.chiSquare(1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Cosine', function () {
|
||||
random.cosine(0, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with DoubleLog', function () {
|
||||
random.doubleLog(0, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Erlang', function () {
|
||||
random.erlang(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Exponential', function () {
|
||||
random.exponential(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with ExtremeValue', function () {
|
||||
random.extremeValue(0.5, 5, 0, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with F Ratio', function () {
|
||||
random.fRatio(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Gamma', function () {
|
||||
random.gamma(1, 1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Laplace', function () {
|
||||
random.laplace(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Logarithmic', function () {
|
||||
random.logarithmic(0, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Logistic', function () {
|
||||
random.logistic(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Lognormal', function () {
|
||||
random.lognormal(1, 1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Normal', function () {
|
||||
random.normal(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Parabolic', function () {
|
||||
random.parabolic(0, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Pareto', function () {
|
||||
random.pareto(1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Pearson5', function () {
|
||||
random.pearson5(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Pearson6', function () {
|
||||
random.pearson6(1, 1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Power', function () {
|
||||
random.power(1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Rayleigh', function () {
|
||||
random.rayleigh(1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Student\'s T', function () {
|
||||
random.studentT(1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Triangular', function () {
|
||||
random.triangular(0, 1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Uniform', function () {
|
||||
random.uniform(0, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Weibull', function () {
|
||||
random.weibull(1, 1, 1).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Bernoulli', function () {
|
||||
random.bernoulli(0.5).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Binomial', function () {
|
||||
random.binomial(10, 0.5).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Geometric', function () {
|
||||
random.geometric(0.5).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Hypergeometric', function () {
|
||||
random.hypergeometric(6, 10, 4).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with NegativeBinomial', function () {
|
||||
random.negativeBinomial(5, 0.5).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Pascal', function () {
|
||||
random.pascal(5, 0.5).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with Poisson', function () {
|
||||
random.poisson(5).should.be.a('number');
|
||||
});
|
||||
it ('should generate random number with UniformDiscrete', function () {
|
||||
random.uniformDiscrete(1, 10).should.be.a('number');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user