Previous: Exact Random Numbers, Up: Random Numbers

#### 5.6.2 Inexact Random Numbers

`(require 'random-inexact)`

— Function: random:uniform
— Function: random:uniform state

Returns an uniformly distributed inexact real random number in the range between 0 and 1.

— Function: random:exp
— Function: random:exp state

Returns an inexact real in an exponential distribution with mean 1. For an exponential distribution with mean u use `(* `u` (random:exp))`.

— Function: random:normal
— Function: random:normal state

Returns an inexact real in a normal distribution with mean 0 and standard deviation 1. For a normal distribution with mean m and standard deviation d use `(+ `m` (* `d` (random:normal)))`.

— Procedure: random:normal-vector! vect
— Procedure: random:normal-vector! vect state

Fills vect with inexact real random numbers which are independent and standard normally distributed (i.e., with mean 0 and variance 1).

— Procedure: random:hollow-sphere! vect
— Procedure: random:hollow-sphere! vect state

Fills vect with inexact real random numbers the sum of whose squares is equal to 1.0. Thinking of vect as coordinates in space of dimension n = `(vector-length `vect`)`, the coordinates are uniformly distributed over the surface of the unit n-shere.

— Procedure: random:solid-sphere! vect
— Procedure: random:solid-sphere! vect state

Fills vect with inexact real random numbers the sum of whose squares is less than 1.0. Thinking of vect as coordinates in space of dimension n = `(vector-length `vect`)`, the coordinates are uniformly distributed within the unit n-shere. The sum of the squares of the numbers is returned.