Skip to content

Commit 6cd65e9

Browse files
refactor: replace "minstd" with "pcg32"
--- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown status: passed - task: lint_package_json status: passed - task: lint_repl_help status: passed - task: lint_javascript_src status: passed - task: lint_javascript_cli status: na - task: lint_javascript_examples status: passed - task: lint_javascript_tests status: passed - task: lint_javascript_benchmarks status: passed - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: passed - task: lint_c_examples status: passed - task: lint_c_benchmarks status: passed - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: passed - task: lint_license_headers status: passed ---
1 parent 0f29c23 commit 6cd65e9

File tree

18 files changed

+484
-449
lines changed

18 files changed

+484
-449
lines changed

lib/node_modules/@stdlib/random/base/pcg32/README.md

Lines changed: 62 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ limitations under the License.
1818
1919
-->
2020

21-
# MINSTD
21+
# PCG32
2222

2323
> A linear congruential pseudorandom number generator ([LCG][lcg]) based on Park and Miller.
2424
@@ -27,33 +27,33 @@ limitations under the License.
2727
## Usage
2828

2929
```javascript
30-
var minstd = require( '@stdlib/random/base/minstd' );
30+
var pcg32 = require( '@stdlib/random/base/pcg32' );
3131
```
3232

33-
#### minstd()
33+
#### pcg32()
3434

3535
Returns a pseudorandom integer on the interval `[1, 2147483646]`.
3636

3737
```javascript
38-
var r = minstd();
38+
var r = pcg32();
3939
// returns <number>
4040
```
4141

42-
#### minstd.normalized()
42+
#### pcg32.normalized()
4343

4444
Returns a pseudorandom number on the interval `[0,1)`.
4545

4646
```javascript
47-
var r = minstd.normalized();
47+
var r = pcg32.normalized();
4848
// returns <number>
4949
```
5050

51-
#### minstd.factory( \[options] )
51+
#### pcg32.factory( \[options] )
5252

5353
Returns a linear congruential pseudorandom number generator ([LCG][lcg]).
5454

5555
```javascript
56-
var rand = minstd.factory();
56+
var rand = pcg32.factory();
5757
```
5858

5959
The function accepts the following `options`:
@@ -65,25 +65,25 @@ The function accepts the following `options`:
6565
By default, a random integer is used to seed the returned generator. To seed the generator, provide either an `integer` on the interval `[1, 2147483646]`
6666

6767
```javascript
68-
var rand = minstd.factory({
68+
var rand = pcg32.factory({
6969
'seed': 1234
7070
});
7171

7272
var r = rand();
73-
// returns 20739838
73+
// returns 2557507945
7474
```
7575

7676
or, for arbitrary length seeds, an array-like `object` containing signed 32-bit integers
7777

7878
```javascript
7979
var Int32Array = require( '@stdlib/array/int32' );
8080

81-
var rand = minstd.factory({
81+
var rand = pcg32.factory({
8282
'seed': new Int32Array( [ 1234 ] )
8383
});
8484

8585
var r = rand();
86-
// returns 20739838
86+
// returns 2557507945
8787
```
8888

8989
To return a generator having a specific initial state, set the generator `state` option.
@@ -93,136 +93,136 @@ To return a generator having a specific initial state, set the generator `state`
9393
var r;
9494
var i;
9595
for ( i = 0; i < 1000; i++ ) {
96-
r = minstd();
96+
r = pcg32();
9797
}
9898

99-
// Create a new PRNG initialized to the current state of `minstd`:
100-
var rand = minstd.factory({
101-
'state': minstd.state
99+
// Create a new PRNG initialized to the current state of `pcg32`:
100+
var rand = pcg32.factory({
101+
'state': pcg32.state
102102
});
103103

104104
// Test that the generated pseudorandom numbers are the same:
105-
var bool = ( rand() === minstd() );
105+
var bool = ( rand() === pcg32() );
106106
// returns true
107107
```
108108

109-
#### minstd.NAME
109+
#### pcg32.NAME
110110

111111
The generator name.
112112

113113
```javascript
114-
var str = minstd.NAME;
115-
// returns 'minstd'
114+
var str = pcg32.NAME;
115+
// returns 'pcg32'
116116
```
117117

118-
#### minstd.MIN
118+
#### pcg32.MIN
119119

120120
Minimum possible value.
121121

122122
```javascript
123-
var min = minstd.MIN;
124-
// returns 1
123+
var min = pcg32.MIN;
124+
// returns 0
125125
```
126126

127-
#### minstd.MAX
127+
#### pcg32.MAX
128128

129129
Maximum possible value.
130130

131131
```javascript
132-
var max = minstd.MAX;
133-
// returns 2147483646
132+
var max = pcg32.MAX;
133+
// returns 4294967295
134134
```
135135

136-
#### minstd.seed
136+
#### pcg32.seed
137137

138-
The value used to seed `minstd()`.
138+
The value used to seed `pcg32()`.
139139

140140
```javascript
141141
// Generate pseudorandom values...
142142
var r;
143143
var i;
144144
for ( i = 0; i < 100; i++ ) {
145-
r = minstd();
145+
r = pcg32();
146146
}
147147

148148
// Generate the same pseudorandom values...
149-
var rand = minstd.factory({
150-
'seed': minstd.seed
149+
var rand = pcg32.factory({
150+
'seed': pcg32.seed
151151
});
152152
for ( i = 0; i < 100; i++ ) {
153153
r = rand();
154154
}
155155
```
156156

157-
#### minstd.seedLength
157+
#### pcg32.seedLength
158158

159159
Length of generator seed.
160160

161161
```javascript
162-
var len = minstd.seedLength;
162+
var len = pcg32.seedLength;
163163
// returns <number>
164164
```
165165

166-
#### minstd.state
166+
#### pcg32.state
167167

168168
Writable property for getting and setting the generator state.
169169

170170
```javascript
171-
var r = minstd();
171+
var r = pcg32();
172172
// returns <number>
173173

174-
r = minstd();
174+
r = pcg32();
175175
// returns <number>
176176

177177
// ...
178178

179179
// Get the current state:
180-
var state = minstd.state;
181-
// returns <Int32Array>
180+
var state = pcg32.state;
181+
// returns <Uint32Array>
182182

183-
r = minstd();
183+
r = pcg32();
184184
// returns <number>
185185

186-
r = minstd();
186+
r = pcg32();
187187
// returns <number>
188188

189189
// Reset the state:
190-
minstd.state = state;
190+
pcg32.state = state;
191191

192192
// Replay the last two pseudorandom numbers:
193-
r = minstd();
193+
r = pcg32();
194194
// returns <number>
195195

196-
r = minstd();
196+
r = pcg32();
197197
// returns <number>
198198

199199
// ...
200200
```
201201

202-
#### minstd.stateLength
202+
#### pcg32.stateLength
203203

204204
Length of generator state.
205205

206206
```javascript
207-
var len = minstd.stateLength;
207+
var len = pcg32.stateLength;
208208
// returns <number>
209209
```
210210

211-
#### minstd.byteLength
211+
#### pcg32.byteLength
212212

213213
Size (in bytes) of generator state.
214214

215215
```javascript
216-
var sz = minstd.byteLength;
216+
var sz = pcg32.byteLength;
217217
// returns <number>
218218
```
219219

220-
#### minstd.toJSON()
220+
#### pcg32.toJSON()
221221

222222
Serializes the pseudorandom number generator as a JSON object.
223223

224224
```javascript
225-
var o = minstd.toJSON();
225+
var o = pcg32.toJSON();
226226
// returns { 'type': 'PRNG', 'name': '...', 'state': {...}, 'params': [] }
227227
```
228228

@@ -250,26 +250,26 @@ var o = minstd.toJSON();
250250
<!-- eslint no-undef: "error" -->
251251

252252
```javascript
253-
var minstd = require( '@stdlib/random/base/minstd' );
253+
var pcg32 = require( '@stdlib/random/base/pcg32' );
254254

255255
// Generate pseudorandom numbers...
256256
var i;
257257
for ( i = 0; i < 100; i++ ) {
258-
console.log( minstd() );
258+
console.log( pcg32() );
259259
}
260260

261261
// Create a new pseudorandom number generator...
262262
var seed = 1234;
263-
var rand = minstd.factory({
263+
var rand = pcg32.factory({
264264
'seed': seed
265265
});
266266
for ( i = 0; i < 100; i++ ) {
267267
console.log( rand() );
268268
}
269269

270270
// Create another pseudorandom number generator using a previous seed...
271-
rand = minstd.factory({
272-
'seed': minstd.seed
271+
rand = pcg32.factory({
272+
'seed': pcg32.seed
273273
});
274274
for ( i = 0; i < 100; i++ ) {
275275
console.log( rand() );
@@ -301,10 +301,10 @@ for ( i = 0; i < 100; i++ ) {
301301

302302
## See Also
303303

304-
- <span class="package-name">[`@stdlib/random/array/minstd`][@stdlib/random/array/minstd]</span><span class="delimiter">: </span><span class="description">create an array containing pseudorandom numbers generated using a linear congruential pseudorandom number generator (LCG).</span>
305-
- <span class="package-name">[`@stdlib/random/iter/minstd`][@stdlib/random/iter/minstd]</span><span class="delimiter">: </span><span class="description">create an iterator for a linear congruential pseudorandom number generator (LCG) based on Park and Miller.</span>
306-
- <span class="package-name">[`@stdlib/random/streams/minstd`][@stdlib/random/streams/minstd]</span><span class="delimiter">: </span><span class="description">create a readable stream for a linear congruential pseudorandom number generator (LCG) based on Park and Miller.</span>
307-
- <span class="package-name">[`@stdlib/random/base/minstd-shuffle`][@stdlib/random/base/minstd-shuffle]</span><span class="delimiter">: </span><span class="description">A linear congruential pseudorandom number generator (LCG) whose output is shuffled.</span>
304+
- <span class="package-name">[`@stdlib/random/array/pcg32`][@stdlib/random/array/pcg32]</span><span class="delimiter">: </span><span class="description">create an array containing pseudorandom numbers generated using a linear congruential pseudorandom number generator (LCG).</span>
305+
- <span class="package-name">[`@stdlib/random/iter/pcg32`][@stdlib/random/iter/pcg32]</span><span class="delimiter">: </span><span class="description">create an iterator for a linear congruential pseudorandom number generator (LCG) based on Park and Miller.</span>
306+
- <span class="package-name">[`@stdlib/random/streams/pcg32`][@stdlib/random/streams/pcg32]</span><span class="delimiter">: </span><span class="description">create a readable stream for a linear congruential pseudorandom number generator (LCG) based on Park and Miller.</span>
307+
- <span class="package-name">[`@stdlib/random/base/pcg32-shuffle`][@stdlib/random/base/pcg32-shuffle]</span><span class="delimiter">: </span><span class="description">A linear congruential pseudorandom number generator (LCG) whose output is shuffled.</span>
308308
- <span class="package-name">[`@stdlib/random/base/mt19937`][@stdlib/random/base/mt19937]</span><span class="delimiter">: </span><span class="description">A 32-bit Mersenne Twister pseudorandom number generator.</span>
309309
- <span class="package-name">[`@stdlib/random/base/randi`][@stdlib/random/base/randi]</span><span class="delimiter">: </span><span class="description">pseudorandom numbers having integer values.</span>
310310

@@ -326,13 +326,13 @@ for ( i = 0; i < 100; i++ ) {
326326

327327
<!-- <related-links> -->
328328

329-
[@stdlib/random/array/minstd]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/array/minstd
329+
[@stdlib/random/array/pcg32]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/array/pcg32
330330

331-
[@stdlib/random/iter/minstd]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/iter/minstd
331+
[@stdlib/random/iter/pcg32]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/iter/pcg32
332332

333-
[@stdlib/random/streams/minstd]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/streams/minstd
333+
[@stdlib/random/streams/pcg32]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/streams/pcg32
334334

335-
[@stdlib/random/base/minstd-shuffle]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/base/minstd-shuffle
335+
[@stdlib/random/base/pcg32-shuffle]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/base/pcg32-shuffle
336336

337337
[@stdlib/random/base/mt19937]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/base/mt19937
338338

lib/node_modules/@stdlib/random/base/pcg32/benchmark/benchmark.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
var bench = require( '@stdlib/bench' );
2424
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2525
var pkg = require( './../package.json' ).name;
26-
var minstd = require( './../lib' );
26+
var pcg32 = require( './../lib' );
2727

2828

2929
// MAIN //
@@ -34,7 +34,7 @@ bench( pkg, function benchmark( b ) {
3434

3535
b.tic();
3636
for ( i = 0; i < b.iterations; i++ ) {
37-
z = minstd();
37+
z = pcg32();
3838
if ( isnan( z ) ) {
3939
b.fail( 'should not return NaN' );
4040
}
@@ -53,7 +53,7 @@ bench( pkg+':normalized', function benchmark( b ) {
5353

5454
b.tic();
5555
for ( i = 0; i < b.iterations; i++ ) {
56-
z = minstd.normalized();
56+
z = pcg32.normalized();
5757
if ( isnan( z ) ) {
5858
b.fail( 'should not return NaN' );
5959
}

0 commit comments

Comments
 (0)