time-to-botec/squiggle/node_modules/@stdlib/random/base/exponential/docs/repl.txt
NunoSempere b6addc7f05 feat: add the node modules
Necessary in order to clearly see the squiggle hotwiring.
2022-12-03 12:44:49 +00:00

177 lines
3.9 KiB
Plaintext

{{alias}}( λ )
Returns a pseudorandom number drawn from an exponential distribution.
If `λ <= 0` or `λ` is `NaN`, the function returns `NaN`.
Parameters
----------
λ: number
Rate parameter.
Returns
-------
r: number
Pseudorandom number.
Examples
--------
> var r = {{alias}}( 7.9 );
{{alias}}.factory( [λ, ][options] )
Returns a pseudorandom number generator (PRNG) for generating pseudorandom
numbers drawn from an exponential distribution.
If provided `λ`, the returned PRNG returns random variates drawn from the
specified distribution.
If not provided `λ`, the returned PRNG requires that `λ` be provided at each
invocation.
Parameters
----------
λ: number (optional)
Rate parameter.
options: Object (optional)
Options.
options.prng: Function (optional)
Pseudorandom number generator (PRNG) for generating uniformly
distributed pseudorandom numbers on the interval `[0,1)`. If provided,
the `state` and `seed` options are ignored. In order to seed the
returned pseudorandom number generator, one must seed the provided
`prng` (assuming the provided `prng` is seedable).
options.seed: integer|ArrayLikeObject<integer> (optional)
Pseudorandom number generator seed. The seed may be either a positive
unsigned 32-bit integer or, for arbitrary length seeds, an array-like
object containing unsigned 32-bit integers.
options.state: Uint32Array (optional)
Pseudorandom number generator state. If provided, the `seed` option is
ignored.
options.copy: boolean (optional)
Boolean indicating whether to copy a provided pseudorandom number
generator state. Setting this option to `false` allows sharing state
between two or more pseudorandom number generators. Setting this option
to `true` ensures that a returned generator has exclusive control over
its internal state. Default: true.
Returns
-------
rand: Function
Pseudorandom number generator (PRNG).
Examples
--------
// Basic usage:
> var rand = {{alias}}.factory();
> var r = rand( 5.0 );
> r = rand( 3.14 );
// Provide `λ`:
> rand = {{alias}}.factory( 10.0 );
> r = rand();
> r = rand();
{{alias}}.NAME
Generator name.
Examples
--------
> var str = {{alias}}.NAME
'exponential'
{{alias}}.PRNG
Underlying pseudorandom number generator.
Examples
--------
> var prng = {{alias}}.PRNG;
{{alias}}.seed
Pseudorandom number generator seed.
Examples
--------
> var seed = {{alias}}.seed;
{{alias}}.seedLength
Length of generator seed.
Examples
--------
> var len = {{alias}}.seedLength;
{{alias}}.state
Generator state.
Examples
--------
> var r = {{alias}}( 7.9 )
<number>
> r = {{alias}}( 7.9 )
<number>
> r = {{alias}}( 7.9 )
<number>
// Get a copy of the current state:
> var state = {{alias}}.state
<Uint32Array>
> r = {{alias}}( 7.9 )
<number>
> r = {{alias}}( 7.9 )
<number>
// Set the state:
> {{alias}}.state = state;
// Replay the last two pseudorandom numbers:
> r = {{alias}}( 7.9 )
<number>
> r = {{alias}}( 7.9 )
<number>
{{alias}}.stateLength
Length of generator state.
Examples
--------
> var len = {{alias}}.stateLength;
{{alias}}.byteLength
Size (in bytes) of generator state.
Examples
--------
> var sz = {{alias}}.byteLength;
{{alias}}.toJSON()
Serializes the pseudorandom number generator as a JSON object.
Returns
-------
out: Object
JSON representation.
Examples
--------
> var o = {{alias}}.toJSON()
{ 'type': 'PRNG', 'name': '...', 'state': {...}, 'params': [] }
See Also
--------