diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/cdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/cdf/benchmark/benchmark.js index 12ec5b5946ed..3e72c7c198e6 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/cdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/cdf/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,16 +32,23 @@ var cdf = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var x; var y; var i; + len = 100; + x = new Float64Array( len ); + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 40.0 ); + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu()*40.0; - p = ( randu()*1.0 ) + EPS; - y = cdf( x, p ); + y = cdf( x[ i % len ], p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -55,6 +63,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mycdf; + var len; var p; var x; var y; @@ -62,11 +71,15 @@ bench( pkg+':factory', function benchmark( b ) { p = 0.3; mycdf = cdf.factory( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 40.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu()*40.0; - y = mycdf( x ); + y = mycdf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/ctor/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/ctor/benchmark/benchmark.js index 30fdc981a124..61099b245bb8 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/ctor/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/ctor/benchmark/benchmark.js @@ -21,8 +21,9 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); -var round = require( '@stdlib/math/base/special/round' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var ln = require( '@stdlib/math/base/special/ln' ); var pkg = require( './../package.json' ).name; @@ -33,13 +34,19 @@ var Geometric = require( './../lib' ); bench( pkg+'::instantiation', function benchmark( b ) { var dist; + var len; var p; var i; + len = 100; + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( 0.0, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = randu(); - dist = new Geometric( p ); + dist = new Geometric( p[ i % len ] ); if ( !( dist instanceof Geometric ) ) { b.fail( 'should return a distribution instance' ); } @@ -78,18 +85,23 @@ bench( pkg+'::get:p', function benchmark( b ) { bench( pkg+'::set:p', function benchmark( b ) { var dist; + var len; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + y = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + y[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - y = randu(); - dist.p = y; - if ( dist.p !== y ) { + dist.p = y[ i % len ]; + if ( dist.p !== y[ i % len ] ) { b.fail( 'should return set value' ); } } @@ -103,16 +115,23 @@ bench( pkg+'::set:p', function benchmark( b ) { bench( pkg+':entropy', function benchmark( b ) { var dist; + var len; + var x; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - dist.p = randu(); + dist.p = x[ i % len ]; y = dist.entropy; if ( isnan( y ) ) { b.fail( 'should not return NaN' ); @@ -128,16 +147,23 @@ bench( pkg+':entropy', function benchmark( b ) { bench( pkg+':kurtosis', function benchmark( b ) { var dist; + var len; + var x; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - dist.p = randu(); + dist.p = x[ i % len ]; y = dist.kurtosis; if ( isnan( y ) ) { b.fail( 'should not return NaN' ); @@ -153,16 +179,23 @@ bench( pkg+':kurtosis', function benchmark( b ) { bench( pkg+':mean', function benchmark( b ) { var dist; + var len; + var x; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - dist.p = randu(); + dist.p = x[ i % len ]; y = dist.mean; if ( isnan( y ) ) { b.fail( 'should not return NaN' ); @@ -178,16 +211,23 @@ bench( pkg+':mean', function benchmark( b ) { bench( pkg+':median', function benchmark( b ) { var dist; + var len; + var x; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - dist.p = randu(); + dist.p = x[ i % len ]; y = dist.median; if ( isnan( y ) ) { b.fail( 'should not return NaN' ); @@ -203,16 +243,23 @@ bench( pkg+':median', function benchmark( b ) { bench( pkg+':mode', function benchmark( b ) { var dist; + var len; + var x; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - dist.p = randu(); + dist.p = x[ i % len ]; y = dist.mode; if ( isnan( y ) ) { b.fail( 'should not return NaN' ); @@ -228,16 +275,23 @@ bench( pkg+':mode', function benchmark( b ) { bench( pkg+':skewness', function benchmark( b ) { var dist; + var len; + var x; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - dist.p = randu(); + dist.p = x[ i % len ]; y = dist.skewness; if ( isnan( y ) ) { b.fail( 'should not return NaN' ); @@ -253,16 +307,23 @@ bench( pkg+':skewness', function benchmark( b ) { bench( pkg+':stdev', function benchmark( b ) { var dist; + var len; + var x; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - dist.p = randu(); + dist.p = x[ i % len ]; y = dist.stdev; if ( isnan( y ) ) { b.fail( 'should not return NaN' ); @@ -278,16 +339,23 @@ bench( pkg+':stdev', function benchmark( b ) { bench( pkg+':variance', function benchmark( b ) { var dist; + var len; + var x; var p; var y; var i; p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - dist.p = randu(); + dist.p = x[ i % len ]; y = dist.variance; if ( isnan( y ) ) { b.fail( 'should not return NaN' ); @@ -303,6 +371,7 @@ bench( pkg+':variance', function benchmark( b ) { bench( pkg+':cdf', function benchmark( b ) { var dist; + var len; var p; var x; var y; @@ -310,11 +379,15 @@ bench( pkg+':cdf', function benchmark( b ) { p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = discreteUniform( 0, 6 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu() * 6.0; - y = dist.cdf( x ); + y = dist.cdf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -329,6 +402,7 @@ bench( pkg+':cdf', function benchmark( b ) { bench( pkg+':logcdf', function benchmark( b ) { var dist; + var len; var p; var x; var y; @@ -336,11 +410,15 @@ bench( pkg+':logcdf', function benchmark( b ) { p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 8.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu() * 8.0; - y = dist.logcdf( x ); + y = dist.logcdf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -355,6 +433,7 @@ bench( pkg+':logcdf', function benchmark( b ) { bench( pkg+':logpmf', function benchmark( b ) { var dist; + var len; var p; var x; var y; @@ -362,11 +441,15 @@ bench( pkg+':logpmf', function benchmark( b ) { p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = discreteUniform( 0, 8 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = round( randu() * 8.0 ); - y = dist.logpmf( x ); + y = dist.logpmf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -381,6 +464,7 @@ bench( pkg+':logpmf', function benchmark( b ) { bench( pkg+':mgf', function benchmark( b ) { var dist; + var len; var p; var x; var y; @@ -388,11 +472,15 @@ bench( pkg+':mgf', function benchmark( b ) { p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, -ln( 1.0-p ) ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu() * ( -ln( 1.0-p ) ); - y = dist.mgf( x ); + y = dist.mgf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -407,6 +495,7 @@ bench( pkg+':mgf', function benchmark( b ) { bench( pkg+':pmf', function benchmark( b ) { var dist; + var len; var p; var x; var y; @@ -414,11 +503,15 @@ bench( pkg+':pmf', function benchmark( b ) { p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = discreteUniform( 0, 8 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = round( randu() * 8.0 ); - y = dist.pmf( x ); + y = dist.pmf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -433,6 +526,7 @@ bench( pkg+':pmf', function benchmark( b ) { bench( pkg+':quantile', function benchmark( b ) { var dist; + var len; var p; var x; var y; @@ -440,11 +534,15 @@ bench( pkg+':quantile', function benchmark( b ) { p = 0.54; dist = new Geometric( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu(); - y = dist.quantile( x ); + y = dist.quantile( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/entropy/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/entropy/benchmark/benchmark.js index 2b3dc56001c4..509f5ea88732 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/entropy/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/entropy/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pkg = require( './../package.json' ).name; var entropy = require( './../lib' ); @@ -39,7 +39,7 @@ bench( pkg, function benchmark( b ) { len = 100; p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - p[ i ] = ( randu() * 1.0 ); + p[ i ] = uniform( 0.0, 1.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/entropy/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/entropy/benchmark/benchmark.native.js index 69b57c0dc5a8..5e27867e0a73 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/entropy/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/entropy/benchmark/benchmark.native.js @@ -24,7 +24,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); var tryRequire = require( '@stdlib/utils/try-require' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pkg = require( './../package.json' ).name; @@ -48,12 +48,12 @@ bench( pkg+'::native', opts, function benchmark( b ) { len = 100; p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - p[ i ] = ( randu() * 1.0 ); + p[ i ] = uniform( 0.0, 1.0 ); } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - y = entropy( p[ i % 100 ] ); + y = entropy( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/kurtosis/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/kurtosis/benchmark/benchmark.js index 253212098d23..2374363c471a 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/kurtosis/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/kurtosis/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,14 +32,20 @@ var kurtosis = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var y; var i; + len = 100; + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = ( randu()*1.0 ) + EPS; - y = kurtosis( p ); + y = kurtosis( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/logcdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/logcdf/benchmark/benchmark.js index fe40230a3138..df395d2570c8 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/logcdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/logcdf/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,16 +32,23 @@ var logcdf = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var x; var y; var i; + len = 100; + x = new Float64Array( len ); + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 40.0 ); + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu()*40.0; - p = ( randu()*1.0 ) + EPS; - y = logcdf( x, p ); + y = logcdf( x[ i % len ], p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -55,6 +63,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mylogcdf; + var len; var p; var x; var y; @@ -62,11 +71,15 @@ bench( pkg+':factory', function benchmark( b ) { p = 0.3; mylogcdf = logcdf.factory( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 40.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu()*40.0; - y = mylogcdf( x ); + y = mylogcdf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/logpmf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/logpmf/benchmark/benchmark.js index 5ab14d2372b5..dab615c06e1a 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/logpmf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/logpmf/benchmark/benchmark.js @@ -21,8 +21,9 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); -var round = require( '@stdlib/math/base/special/round' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -32,16 +33,23 @@ var logpmf = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var x; var y; var i; + len = 100; + x = new Float64Array( len ); + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = discreteUniform( 0, 40 ); + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = round( randu()*40.0 ); - p = ( randu()*1.0 ) + EPS; - y = logpmf( x, p ); + y = logpmf( x[ i % len ], p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -56,6 +64,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mylogpmf; + var len; var p; var x; var y; @@ -63,11 +72,15 @@ bench( pkg+':factory', function benchmark( b ) { p = 0.3; mylogpmf = logpmf.factory( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 40.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu() * 40.0; - y = mylogpmf( x ); + y = mylogpmf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/mean/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/mean/benchmark/benchmark.js index a380e77c816b..d02f1b54bcfd 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/mean/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/mean/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -40,7 +40,7 @@ bench( pkg, function benchmark( b ) { len = 100; p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - p[ i ] = ( randu() * 1.0 ) + EPS; + p[ i ] = uniform( EPS, 1.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/mean/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/mean/benchmark/benchmark.native.js index d6dc28067c48..0bbcdf62aaba 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/mean/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/mean/benchmark/benchmark.native.js @@ -24,7 +24,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); var tryRequire = require( '@stdlib/utils/try-require' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -49,7 +49,7 @@ bench( pkg+'::native', opts, function benchmark( b ) { len = 100; p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - p[ i ] = ( randu() * 1.0 ) + EPS; + p[ i ] = uniform( EPS, 1.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/median/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/median/benchmark/benchmark.js index 9c7475fe2e84..4e0c9be1b272 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/median/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/median/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,14 +32,20 @@ var median = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var y; var i; + len = 100; + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = ( randu()*1.0 ) + EPS; - y = median( p ); + y = median( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/mgf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/mgf/benchmark/benchmark.js index f57af79f4e59..995c7d8749e6 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/mgf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/mgf/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var ln = require( '@stdlib/math/base/special/ln' ); var EPS = require( '@stdlib/constants/float64/eps' ); @@ -32,16 +33,23 @@ var mgf = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var t; var y; var i; + len = 100; + p = new Float64Array( len ); + t = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( EPS, 1.0 ); + t[ i ] = uniform( 0.0, -ln( 1.0 - p[ i ] ) ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = ( randu()*1.0 ) + EPS; - t = randu() * (-ln( 1.0 - p ) ); - y = mgf( t, p ); + y = mgf( t[ i % len ], p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -56,6 +64,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mymgf; + var len; var p; var t; var y; @@ -63,11 +72,15 @@ bench( pkg+':factory', function benchmark( b ) { p = 0.3; mymgf = mgf.factory( p ); + len = 100; + t = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + t[ i ] = uniform( 0.0, -ln( 1.0 - p ) ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - t = randu() * (-ln( 1.0 - p ) ); - y = mymgf( t ); + y = mymgf( t[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/mode/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/mode/benchmark/benchmark.js index aaced3fa8afa..66247176f780 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/mode/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/mode/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,14 +32,20 @@ var mode = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var y; var i; + len = 100; + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = ( randu()*1.0 ) + EPS; - y = mode( p ); + y = mode( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/pmf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/pmf/benchmark/benchmark.js index 7428743f3530..608cdc58bbce 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/pmf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/pmf/benchmark/benchmark.js @@ -22,8 +22,8 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); -var round = require( '@stdlib/math/base/special/round' ); +var uniform = require( '@stdlib/random/base/uniform' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pkg = require( './../package.json' ).name; var pmf = require( './../lib' ); @@ -42,8 +42,8 @@ bench( pkg, function benchmark( b ) { x = new Float64Array( len ); p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = round( randu()*40.0 ); - p[ i ] = ( randu()*1.0 ); + x[ i ] = discreteUniform( 0, 40 ); + p[ i ] = uniform( 0.0, 1.0 ); } b.tic(); @@ -63,6 +63,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mypmf; + var len; var p; var x; var y; @@ -70,11 +71,15 @@ bench( pkg+':factory', function benchmark( b ) { p = 0.3; mypmf = pmf.factory( p ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 40.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu() * 40.0; - y = mypmf( x ); + y = mypmf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/pmf/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/pmf/benchmark/benchmark.native.js index 0c1291e36799..43cd790f6f2e 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/pmf/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/pmf/benchmark/benchmark.native.js @@ -23,8 +23,8 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); -var round = require( '@stdlib/math/base/special/round' ); +var uniform = require( '@stdlib/random/base/uniform' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -51,8 +51,8 @@ bench( pkg+'::native', opts, function benchmark( b ) { x = new Float64Array( len ); p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = round( randu()*40.0 ); - p[ i ] = ( randu()*1.0 ); + x[ i ] = discreteUniform( 0, 40 ); + p[ i ] = uniform( 0.0, 1.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/quantile/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/quantile/benchmark/benchmark.js index 1e4183ca9aa5..07670fb44fb6 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/quantile/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/quantile/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,16 +32,23 @@ var quantile = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var r; var y; var i; + len = 100; + r = new Float64Array( len ); + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + r[ i ] = uniform( 0.0, 1.0 ); + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - r = randu(); - p = ( randu()*1.0 ) + EPS; - y = quantile( r, p ); + y = quantile( r[ i % len ], p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -55,6 +63,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var myquantile; + var len; var p; var r; var y; @@ -62,11 +71,15 @@ bench( pkg+':factory', function benchmark( b ) { p = 0.3; myquantile = quantile.factory( p ); + len = 100; + r = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + r[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - r = randu(); - y = myquantile( r ); + y = myquantile( r[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/skewness/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/skewness/benchmark/benchmark.js index da18b8227ece..edada70ad347 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/skewness/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/skewness/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pkg = require( './../package.json' ).name; var skewness = require( './../lib' ); @@ -39,12 +39,12 @@ bench( pkg, function benchmark( b ) { len = 100; p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - p[ i ] = ( randu() * 1.0 ); + p[ i ] = uniform( 0.0, 1.0 ); } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - y = skewness( p[ i % 100 ] ); + y = skewness( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/skewness/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/skewness/benchmark/benchmark.native.js index b93d28e03b69..d3fce3ae3e84 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/skewness/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/skewness/benchmark/benchmark.native.js @@ -24,7 +24,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); var tryRequire = require( '@stdlib/utils/try-require' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pkg = require( './../package.json' ).name; @@ -48,12 +48,12 @@ bench( pkg+'::native', opts, function benchmark( b ) { len = 100; p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - p[ i ] = ( randu() * 1.0 ); + p[ i ] = uniform( 0.0, 1.0 ); } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - y = skewness( p[ i % 100 ] ); + y = skewness( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/stdev/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/stdev/benchmark/benchmark.js index 649557b97639..b3a66d8fe0ae 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/stdev/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/stdev/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,14 +32,20 @@ var stdev = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var y; var i; + len = 100; + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = ( randu()*1.0 ) + EPS; - y = stdev( p ); + y = stdev( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/geometric/variance/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/geometric/variance/benchmark/benchmark.js index 140b6d169920..4180eca59059 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/geometric/variance/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/geometric/variance/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,14 +32,20 @@ var variance = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var p; var y; var i; + len = 100; + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( EPS, 1.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = ( randu()*1.0 ) + EPS; - y = variance( p ); + y = variance( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); }