You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
var unaryFactory =require( '@stdlib/random/array/tools/unary-factory' );
31
31
```
32
32
33
-
#### unaryFactory( prng, dtypes )
33
+
#### unaryFactory( prng, dtypes, dtype )
34
34
35
35
Returns a factory function for generating pseudorandom values drawn from a unary PRNG.
36
36
@@ -39,18 +39,19 @@ var exponential = require( '@stdlib/random/base/exponential' );
39
39
40
40
var dtypes = [ 'float64', 'float32', 'generic' ];
41
41
42
-
var factory =unaryFactory( exponential, dtypes );
42
+
var factory =unaryFactory( exponential, dtypes, 'float64' );
43
43
// returns <Function>
44
44
```
45
45
46
46
The function has the following parameters:
47
47
48
48
-**prng**: unary pseudorandom number generator.
49
49
-**dtypes**: list of supported output data types.
50
+
-**dtype**: default output array data type.
50
51
51
52
* * *
52
53
53
-
#### factory( dtype\[, options] )
54
+
#### factory( \[param1, ]\[options] )
54
55
55
56
Returns a function for generating pseudorandom values drawn from a unary PRNG.
56
57
@@ -59,16 +60,16 @@ var exponential = require( '@stdlib/random/base/exponential' );
59
60
60
61
var dtypes = [ 'float64', 'float32', 'generic' ];
61
62
62
-
var factory =unaryFactory( exponential, dtypes );
63
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
63
64
// returns <Function>
64
65
65
-
var random =factory( dtypes[ 0 ] );
66
+
var random =factory();
66
67
// returns <Function>
67
68
```
68
69
69
70
The function has the following parameters:
70
71
71
-
-**dtype**: default output array data type.
72
+
-**oaram1**: PRNG parameter. If provided a PRNG parameter, the function returns a partially applied function for creating arrays, which can be useful when wanting to pass around a parameterized function for array creation.
72
73
-**options**: function options.
73
74
74
75
The function supports the following options:
@@ -77,9 +78,12 @@ The function supports the following options:
77
78
-**seed**: pseudorandom value generator seed.
78
79
-**state**: pseudorandom value generator state.
79
80
-**copy**: boolean indicating whether to copy a provided pseudorandom value generator state.
81
+
-**dtype**: default output array data type. Setting this option overrides the default output array data type provided to the parent function.
80
82
81
83
* * *
82
84
85
+
### Full Arity
86
+
83
87
#### random( len, param1\[, options] )
84
88
85
89
Returns an array of pseudorandom values drawn from a unary PRNG.
@@ -89,10 +93,10 @@ var exponential = require( '@stdlib/random/base/exponential' );
89
93
90
94
var dtypes = [ 'float64', 'float32', 'generic' ];
91
95
92
-
var factory =unaryFactory( exponential, dtypes );
96
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
93
97
// returns <Function>
94
98
95
-
var random =factory( dtypes[ 0 ] );
99
+
var random =factory();
96
100
// returns <Function>
97
101
98
102
var v =random( 10, 2.0 );
@@ -114,10 +118,10 @@ var exponential = require( '@stdlib/random/base/exponential' );
114
118
115
119
var dtypes = [ 'float64', 'float32', 'generic' ];
116
120
117
-
var factory =unaryFactory( exponential, dtypes );
121
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
118
122
// returns <Function>
119
123
120
-
var random =factory( dtypes[ 0 ] );
124
+
var random =factory();
121
125
// returns <Function>
122
126
123
127
var v =random( 10, 2.0, {
@@ -136,10 +140,10 @@ var zeros = require( '@stdlib/array/zeros' );
136
140
137
141
var dtypes = [ 'float64', 'float32', 'generic' ];
138
142
139
-
var factory =unaryFactory( exponential, dtypes );
143
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
140
144
// returns <Function>
141
145
142
-
var random =factory( dtypes[ 0 ] );
146
+
var random =factory();
143
147
// returns <Function>
144
148
145
149
var out =zeros( 10, 'float64' );
@@ -157,6 +161,93 @@ The method has the following parameters:
157
161
-**param1**: PRNG parameter.
158
162
-**out**: output array.
159
163
164
+
### Partial Application
165
+
166
+
#### random( len\[, options] )
167
+
168
+
Returns an array of pseudorandom values drawn from a unary PRNG.
169
+
170
+
```javascript
171
+
var exponential =require( '@stdlib/random/base/exponential' );
172
+
173
+
var dtypes = [ 'float64', 'float32', 'generic' ];
174
+
175
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
176
+
// returns <Function>
177
+
178
+
var random =factory( 2.0 );
179
+
// returns <Function>
180
+
181
+
var v =random( 10 );
182
+
// returns <Float64Array>
183
+
184
+
v =random( 10 );
185
+
// returns <Float64Array>
186
+
```
187
+
188
+
The function has the following parameters:
189
+
190
+
-**len**: output array length.
191
+
-**options**: function options.
192
+
193
+
The function accepts the following options:
194
+
195
+
-**dtype**: output array data type. Setting this option overrides the default output array data type.
196
+
197
+
```javascript
198
+
var exponential =require( '@stdlib/random/base/exponential' );
199
+
200
+
var dtypes = [ 'float64', 'float32', 'generic' ];
201
+
202
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
203
+
// returns <Function>
204
+
205
+
var random =factory( 2.0 );
206
+
// returns <Function>
207
+
208
+
var v =random( 10, {
209
+
'dtype':'float32'
210
+
});
211
+
// returns <Float32Array>
212
+
213
+
v =random( 10, {
214
+
'dtype':'generic'
215
+
});
216
+
// returns [...]
217
+
```
218
+
219
+
#### random.assign( out )
220
+
221
+
Fills an array with pseudorandom values drawn from a unary PRNG.
222
+
223
+
```javascript
224
+
var exponential =require( '@stdlib/random/base/exponential' );
225
+
var zeros =require( '@stdlib/array/zeros' );
226
+
227
+
var dtypes = [ 'float64', 'float32', 'generic' ];
228
+
229
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
230
+
// returns <Function>
231
+
232
+
var random =factory( 2.0 );
233
+
// returns <Function>
234
+
235
+
var out =zeros( 10, 'float64' );
236
+
// returns <Float64Array>
237
+
238
+
var v =random.assign( out );
239
+
// returns <Float64Array>
240
+
241
+
var bool = ( out === v );
242
+
// returns true
243
+
```
244
+
245
+
The method has the following parameters:
246
+
247
+
-**out**: output array.
248
+
249
+
* * *
250
+
160
251
#### random.PRNG
161
252
162
253
The underlying pseudorandom number generator.
@@ -167,10 +258,10 @@ var zeros = require( '@stdlib/array/zeros' );
167
258
168
259
var dtypes = [ 'float64', 'float32', 'generic' ];
169
260
170
-
var factory =unaryFactory( exponential, dtypes );
261
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
171
262
// returns <Function>
172
263
173
-
var random =factory( dtypes[ 0 ] );
264
+
var random =factory();
174
265
// returns <Function>
175
266
176
267
var prng =random.PRNG;
@@ -187,10 +278,10 @@ var zeros = require( '@stdlib/array/zeros' );
187
278
188
279
var dtypes = [ 'float64', 'float32', 'generic' ];
189
280
190
-
var factory =unaryFactory( exponential, dtypes );
281
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
191
282
// returns <Function>
192
283
193
-
var random =factory( dtypes[ 0 ] );
284
+
var random =factory();
194
285
// returns <Function>
195
286
196
287
var seed =random.seed;
@@ -206,10 +297,10 @@ var zeros = require( '@stdlib/array/zeros' );
206
297
207
298
var dtypes = [ 'float64', 'float32', 'generic' ];
208
299
209
-
var factory =unaryFactory( exponential, dtypes );
300
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
210
301
// returns <Function>
211
302
212
-
var random =factory( dtypes[ 0 ], {
303
+
var random =factory({
213
304
'prng': minstd
214
305
});
215
306
// returns <Function>
@@ -228,10 +319,10 @@ var zeros = require( '@stdlib/array/zeros' );
228
319
229
320
var dtypes = [ 'float64', 'float32', 'generic' ];
230
321
231
-
var factory =unaryFactory( exponential, dtypes );
322
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
232
323
// returns <Function>
233
324
234
-
var random =factory( dtypes[ 0 ] );
325
+
var random =factory();
235
326
// returns <Function>
236
327
237
328
var len =random.seedLength;
@@ -247,10 +338,10 @@ var zeros = require( '@stdlib/array/zeros' );
247
338
248
339
var dtypes = [ 'float64', 'float32', 'generic' ];
249
340
250
-
var factory =unaryFactory( exponential, dtypes );
341
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
251
342
// returns <Function>
252
343
253
-
var random =factory( dtypes[ 0 ], {
344
+
var random =factory({
254
345
'prng': minstd
255
346
});
256
347
// returns <Function>
@@ -269,10 +360,10 @@ var zeros = require( '@stdlib/array/zeros' );
269
360
270
361
var dtypes = [ 'float64', 'float32', 'generic' ];
271
362
272
-
var factory =unaryFactory( exponential, dtypes );
363
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
273
364
// returns <Function>
274
365
275
-
var random =factory( dtypes[ 0 ] );
366
+
var random =factory();
276
367
// returns <Function>
277
368
278
369
var state =random.state;
@@ -288,10 +379,10 @@ var zeros = require( '@stdlib/array/zeros' );
288
379
289
380
var dtypes = [ 'float64', 'float32', 'generic' ];
290
381
291
-
var factory =unaryFactory( exponential, dtypes );
382
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
292
383
// returns <Function>
293
384
294
-
var random =factory( dtypes[ 0 ], {
385
+
var random =factory({
295
386
'prng': minstd
296
387
});
297
388
// returns <Function>
@@ -310,10 +401,10 @@ var zeros = require( '@stdlib/array/zeros' );
310
401
311
402
var dtypes = [ 'float64', 'float32', 'generic' ];
312
403
313
-
var factory =unaryFactory( exponential, dtypes );
404
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
314
405
// returns <Function>
315
406
316
-
var random =factory( dtypes[ 0 ] );
407
+
var random =factory();
317
408
// returns <Function>
318
409
319
410
var len =random.stateLength;
@@ -329,10 +420,10 @@ var zeros = require( '@stdlib/array/zeros' );
329
420
330
421
var dtypes = [ 'float64', 'float32', 'generic' ];
331
422
332
-
var factory =unaryFactory( exponential, dtypes );
423
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
333
424
// returns <Function>
334
425
335
-
var random =factory( dtypes[ 0 ], {
426
+
var random =factory({
336
427
'prng': minstd
337
428
});
338
429
// returns <Function>
@@ -351,10 +442,10 @@ var zeros = require( '@stdlib/array/zeros' );
351
442
352
443
var dtypes = [ 'float64', 'float32', 'generic' ];
353
444
354
-
var factory =unaryFactory( exponential, dtypes );
445
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
355
446
// returns <Function>
356
447
357
-
var random =factory( dtypes[ 0 ] );
448
+
var random =factory();
358
449
// returns <Function>
359
450
360
451
var sz =random.byteLength;
@@ -370,10 +461,10 @@ var zeros = require( '@stdlib/array/zeros' );
370
461
371
462
var dtypes = [ 'float64', 'float32', 'generic' ];
372
463
373
-
var factory =unaryFactory( exponential, dtypes );
464
+
var factory =unaryFactory( exponential, dtypes, dtypes[ 0 ] );
374
465
// returns <Function>
375
466
376
-
var random =factory( dtypes[ 0 ], {
467
+
var random =factory({
377
468
'prng': minstd
378
469
});
379
470
// returns <Function>
@@ -408,10 +499,10 @@ var unaryFactory = require( '@stdlib/random/array/tools/unary-factory' );
408
499
var dt =dtypes( 'real_floating_point' );
409
500
dt.push( 'generic' );
410
501
411
-
var factory =unaryFactory( exponential, dt );
502
+
var factory =unaryFactory( exponential, dt, 'float64' );
0 commit comments