version (1.83 KB) by Richard Crozier
Generate random numbers uniformally in a given range or matching a given normal distribution


Updated 6 Oct 2009

View License

randMat: Generates a matrix of random numbers with uniform or normal distribution on a specified interval [a,b] or with a specific mean (a) and variance (b) for any number of a,b pairs. For uniform distributions,the values returned by the MATLAB function rand() are multiplied by (b-a), then added to a. For normal distributions the output of randn() is multiplied by the standard deviation (b), and then added to the desired to the mean (a).

Arguments: (input)

a - (i x 1) row vector of values specifying the lower limit in each
interval or mean value of the normal distribution.

b - (i x 1) row vector of values specifying the higher limit in each
interval or variance of the normal distribution.

method - (i x 1) row vector of integers to indicate normal or uniform
distribution for each corresponding a,b pair, 0 indicates a
uniform distribution, 1 indicates a normal distribution.

n - scalar, number of random numbers to be output for all desired

newseed - optional scalar, if 1, a new seed is generated from the
system clock, if 0 the existing sequence is used. If
omitted, the default value is zero.

Arguments: (output)

numbers - (i x n) matrix of random numbers generated for each a,b pair
in the input arguments. Each a,b pair's corresponding output is
represented by a column of n random numbers.

Cite As

Richard Crozier (2022). randMat (https://www.mathworks.com/matlabcentral/fileexchange/24712-randmat), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2008a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!