From c9d5ce328f94ddc938e58b2c32bb69893d4aaa9a Mon Sep 17 00:00:00 2001 From: ShabiShett07 Date: Sat, 1 Feb 2025 14:11:47 +0530 Subject: [PATCH] feat: refactor random number generation stats/base/dists/weibull --- .../dists/weibull/cdf/benchmark/benchmark.js | 25 +++++++++++++------ .../weibull/entropy/benchmark/benchmark.js | 13 +++++++--- .../weibull/kurtosis/benchmark/benchmark.js | 13 +++++++--- .../weibull/logcdf/benchmark/benchmark.js | 23 +++++++++++------ .../weibull/logpdf/benchmark/benchmark.js | 23 +++++++++++------ .../dists/weibull/mean/benchmark/benchmark.js | 13 +++++++--- .../weibull/median/benchmark/benchmark.js | 13 +++++++--- .../dists/weibull/mgf/benchmark/benchmark.js | 21 +++++++++++----- .../dists/weibull/mode/benchmark/benchmark.js | 13 +++++++--- .../dists/weibull/pdf/benchmark/benchmark.js | 23 +++++++++++------ .../weibull/quantile/benchmark/benchmark.js | 23 +++++++++++------ .../weibull/skewness/benchmark/benchmark.js | 13 +++++++--- .../weibull/stdev/benchmark/benchmark.js | 13 +++++++--- .../weibull/variance/benchmark/benchmark.js | 13 +++++++--- 14 files changed, 168 insertions(+), 74 deletions(-) diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/cdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/cdf/benchmark/benchmark.js index 41e93b8389b1..5987bcdd705d 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/cdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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; @@ -32,17 +33,22 @@ var cdf = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var x; var y; var i; + len = 100; + x = new Float64Array( len ); + lambda = new Float64Array( len ); + k = new Float64Array( len ); b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*100.0 ) + EPS; - lambda = ( randu()*100.0 ) + EPS; - k = ( randu()*100.0 ) + EPS; - y = cdf( x, k, lambda ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( EPS, 100 ); + lambda[ i ] = uniform( EPS, 100 ); + k[ i ] = uniform( EPS, 100 ); + y = cdf( x[ i%len ], k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -58,6 +64,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var lambda; var mycdf; + var len; var k; var x; var y; @@ -66,11 +73,13 @@ bench( pkg+':factory', function benchmark( b ) { lambda = 3.14; k = 2.25; mycdf = cdf.factory( k, lambda ); + len = 100; + x = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*100.0 ) + EPS; - y = mycdf( x ); + x[ i ] = uniform( EPS, 100.0 ); + y = mycdf( x[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/entropy/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/entropy/benchmark/benchmark.js index 6d5f7bdd0952..9440d7025b96 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/entropy/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/entropy/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; @@ -32,15 +33,19 @@ var entropy = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var y; var i; + len = 100; + lambda = new Float64Array( len ); + k = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - k = ( randu()*10.0 ) + EPS; - lambda = ( randu()*10.0 ) + EPS; - y = entropy( k, lambda ); + k[ i ] = uniform( EPS, 10 ); + lambda[ i ] = uniform( EPS, 10 ); + y = entropy( k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/kurtosis/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/kurtosis/benchmark/benchmark.js index 110e0f59de5e..8868da410838 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/kurtosis/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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 pkg = require( './../package.json' ).name; var kurtosis = require( './../lib' ); @@ -31,15 +32,19 @@ var kurtosis = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var y; var i; + len = 100; + lambda = new Float64Array( len ); + k = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - k = ( randu()*10.0 ) + 1.0; - lambda = ( randu()*10.0 ) + 1.0; - y = kurtosis( k, lambda ); + k[ i ] = uniform( 1.0, 10.0); + lambda[ i ] = uniform( 1.0, 10.0); + y = kurtosis( k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/logcdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/logcdf/benchmark/benchmark.js index 441027482082..db2d4fccb9ad 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/logcdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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; @@ -32,17 +33,22 @@ var logcdf = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var x; var y; var i; + len = 100; + x = new Float64Array( len ); + lambda = new Float64Array( len ); + k = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*100.0 ) + EPS; - lambda = ( randu()*100.0 ) + EPS; - k = ( randu()*100.0 ) + EPS; - y = logcdf( x, k, lambda ); + x[ i ] = uniform( EPS, 100.0); + lambda[ i ] = uniform( EPS, 100.0); + k[ i ] = uniform( EPS, 100.0); + y = logcdf( x[ i%len ], k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -58,6 +64,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mylogcdf; var lambda; + var len; var k; var x; var y; @@ -66,11 +73,13 @@ bench( pkg+':factory', function benchmark( b ) { lambda = 3.14; k = 2.25; mylogcdf = logcdf.factory( k, lambda ); + len = 100; + x = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*100.0 ) + EPS; - y = mylogcdf( x ); + x[ i ] = uniform( EPS, 100.0 ); + y = mylogcdf( x[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/logpdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/logpdf/benchmark/benchmark.js index 0a82965ccd90..c59d15ca5bba 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/logpdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/logpdf/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; @@ -32,17 +33,22 @@ var logpdf = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var x; var y; var i; + len = 100; + x = new Float64Array( len ); + lambda = new Float64Array( len ); + k = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*100.0 ) + EPS; - lambda = ( randu()*100.0 ) + EPS; - k = ( randu()*100.0 ) + EPS; - y = logpdf( x, k, lambda ); + x[ i ] = uniform( EPS, 100.0 ); + lambda[ i ] = uniform( EPS, 100.0 ); + k[ i ] = uniform( EPS, 100.0 ); + y = logpdf( x[ i%len ], k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -58,6 +64,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mylogpdf; var lambda; + var len; var k; var x; var y; @@ -66,11 +73,13 @@ bench( pkg+':factory', function benchmark( b ) { lambda = 3.14; k = 2.25; mylogpdf = logpdf.factory( k, lambda ); + len = 100; + x = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*100.0 ) + EPS; - y = mylogpdf( x ); + x[ i ] = uniform( EPS, 100.0 ); + y = mylogpdf( x[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/mean/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/mean/benchmark/benchmark.js index c8d4b43e0877..cf2a931cd412 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/mean/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/mean/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; @@ -32,15 +33,19 @@ var mean = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var y; var i; + len = 100; + k = new Float64Array( len ); + lambda = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - k = ( randu()*10.0 ) + EPS; - lambda = ( randu()*10.0 ) + EPS; - y = mean( k, lambda ); + k[ i ] = uniform( EPS, 10.0 ); + lambda[ i ] = uniform( EPS, 10.0 ); + y = mean( k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/median/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/median/benchmark/benchmark.js index 30d668d00c52..68c25b42ece4 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/median/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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; @@ -32,15 +33,19 @@ var median = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var y; var i; + len = 100; + k = new Float64Array( len ); + lambda = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - k = ( randu()*10.0 ) + EPS; - lambda = ( randu()*10.0 ) + EPS; - y = median( k, lambda ); + k[ i ] = uniform( EPS, 10.0 ); + lambda[ i ] = uniform( EPS, 10.0 ); + y = median( k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/mgf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/mgf/benchmark/benchmark.js index a66547db6a04..bcb041eb726d 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/mgf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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 EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -32,17 +33,22 @@ var mgf = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var t; var y; var i; + len = 100; + t = new Float64Array( len ); + lambda = new Float64Array( len ); + k = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - t = ( randu()*2.0 ) + EPS; - lambda = ( randu()*1.0 ) + EPS; - k = ( randu()*1.0 ) + 1.0; - y = mgf( t, k, lambda ); + t[ i ] = uniform( EPS, 2.0 ); + lambda[ i ] = uniform( EPS, 2.0 ); + k[ i ] = uniform(1.0, 2.0); + y = mgf( t[ i%len ], k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -58,6 +64,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var lambda; var mymgf; + var len; var k; var t; var y; @@ -66,10 +73,12 @@ bench( pkg+':factory', function benchmark( b ) { lambda = 3.14; k = 2.25; mymgf = mgf.factory( k, lambda ); + len = 100; + t = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - t = ( randu()*10.0 ) + EPS; + t[ i ] = uniform( ); y = mymgf( t ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/mode/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/mode/benchmark/benchmark.js index e05608211b3c..74cd26557b6b 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/mode/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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; @@ -32,15 +33,19 @@ var mode = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var y; var i; + len = 100; + k = new Float64Array( len ); + lambda = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - k = ( randu()*10.0 ) + EPS; - lambda = ( randu()*10.0 ) + EPS; - y = mode( k, lambda ); + k[ i ] = uniform( EPS, 10.0 ); + lambda[ i ] = uniform( EPS, 10.0 ); + y = mode( k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/pdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/pdf/benchmark/benchmark.js index 2a0034cab52e..484ace006b87 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/pdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/pdf/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; @@ -32,17 +33,22 @@ var pdf = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var x; var y; var i; + len = 100; + x = new Float64Array( len ); + lambda = new Float64Array( len ); + k = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*100.0 ) + EPS; - lambda = ( randu()*10.0 ) + EPS; - k = ( randu()*10.0 ) + EPS; - y = pdf( x, k, lambda ); + x[ i ] = uniform( EPS, 100.0 ); + lambda[ i ] = uniform( EPS, 10.0 ); + k[ i ] = uniform( EPS, 10.0 ); + y = pdf( x[ i%len ], k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -58,6 +64,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var lambda; var mypdf; + var len; var k; var x; var y; @@ -66,11 +73,13 @@ bench( pkg+':factory', function benchmark( b ) { lambda = 3.14; k = 2.25; mypdf = pdf.factory( k, lambda ); + len = 100; + x = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*100.0 ) + EPS; - y = mypdf( x ); + x[ i ] = uniform( EPS, 100.0 ); + y = mypdf( x[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/quantile/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/quantile/benchmark/benchmark.js index 0e289e16550c..489db99be4c3 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/quantile/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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; @@ -32,17 +33,22 @@ var quantile = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var p; var y; var i; + len = 100; + p = new Float64Array( len ); + lambda = new Float64Array( len ); + k = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = randu(); - lambda = ( randu()*100.0 ) + EPS; - k = ( randu()*100.0 ) + EPS; - y = quantile( p, k, lambda ); + p[ i ] = uniform( 0.0, 1.0 ); + lambda[ i ] = uniform( EPS, 100 ); + k[ i ] = uniform( EPS, 100 ); + y = quantile( p[ i%len ], k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -58,6 +64,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var myquantile; var lambda; + var len; var k; var p; var y; @@ -66,11 +73,13 @@ bench( pkg+':factory', function benchmark( b ) { lambda = 3.14; k = 2.25; myquantile = quantile.factory( k, lambda ); + len = 100; + p = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = randu(); - y = myquantile( p ); + p[ i ] = uniform( 0.0, 1.0 ); + y = myquantile( p[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/skewness/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/skewness/benchmark/benchmark.js index b69cf2170f8c..6d3f2b01cf85 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/skewness/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/skewness/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; @@ -32,15 +33,19 @@ var skewness = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var y; var i; + len = 100; + k = new Float64Array( len ); + lambda = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - k = ( randu()*10.0 ) + 1.0 + EPS; - lambda = ( randu()*10.0 ) + 1.0 + EPS; - y = skewness( k, lambda ); + k[ i ] = uniform( 1.0 + EPS, 10.0 ); + lambda[ i ] = uniform( 1.0 + EPS, 10.0 ); + y = skewness( k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/stdev/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/stdev/benchmark/benchmark.js index 47be94fb9427..d0624efdb292 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/stdev/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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; @@ -32,15 +33,19 @@ var stdev = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var y; var i; + len = 100; + k = new Float64Array( len ); + lambda = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - k = ( randu()*10.0 ) + 1.0 + EPS; - lambda = ( randu()*10.0 ) + 1.0 + EPS; - y = stdev( k, lambda ); + k[ i ] = uniform( 1.0 + EPS, 10.0 ); + lambda[ i ] = uniform( 1.0 + EPS, 10.0 ); + y = stdev( k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/weibull/variance/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/weibull/variance/benchmark/benchmark.js index 04630f63280c..9b00871e6ac5 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/weibull/variance/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/weibull/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; @@ -32,15 +33,19 @@ var variance = require( './../lib' ); bench( pkg, function benchmark( b ) { var lambda; + var len; var k; var y; var i; + len = 100; + k = new Float64Array( len ); + lambda = new Float64Array( len ); b.tic(); for ( i = 0; i < b.iterations; i++ ) { - k = ( randu()*10.0 ) + 1.0 + EPS; - lambda = ( randu()*10.0 ) + 1.0 + EPS; - y = variance( k, lambda ); + k[ i ] = uniform( 1.0 + EPS, 10.0 ); + lambda[ i ] = uniform( 1.0 + EPS, 10.0 ); + y = variance( k[ i%len ], lambda[ i%len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); }