Continuous uniform random numbers
collapse all in page
Syntax
r = unifrnd(a,b)
r = unifrnd(a,b,sz1,...,szN)
r = unifrnd(a,b,sz)
Description
example
r = unifrnd(a,b)
generates a random number from the continuous uniform distribution with the lower endpoints a
and upper endpoint b
.
example
r = unifrnd(a,b,sz1,...,szN)
generates an array of uniform random numbers, where sz1,...,szN
indicates the size of each dimension.
example
r = unifrnd(a,b,sz)
generates an array of uniform random numbers, where the size vector sz
specifies size(r)
.
Examples
collapse all
Generate Uniform Random Number
Open Live Script
Generate a random number from the continuous uniform distribution with the lower parameter 0
and upper parameter 1
.
r = unifrnd(0,1)
Generate Uniform Random Numbers
Open Live Script
Generate 5
random numbers from the continuous uniform distributions on the intervals (0,1), (0,2),..., (0,5).
a1 = 0;b1 = 1:5;r1 = unifrnd(a1,b1)
r1 = 1×5 0.8147 1.8116 0.3810 3.6535 3.1618
By default, unifrnd
generates an array that is the same size as a
and b
after any necessary scalar expansion so that all scalars are expanded to match the dimensions of the other inputs.
If you specify array dimensions sz1,...,szN
, they must match the dimensions of a
and b
after any necessary scalar expansion.
Generate a 2-by-3 array of random numbers from the continuous uniform distribution with the lower parameter 0
and upper parameter 1
.
sz = [2 3];r2 = unifrnd(0,1,sz)
r2 = 2×3 0.0975 0.5469 0.9649 0.2785 0.9575 0.1576
Generate 6 random numbers on the intervals (0,1), (1,2),..., (5,6).
a3 = 0:5;b3 = 1:6;r3 = unifrnd(a3,b3,1,6)
r3 = 1×6 0.9706 1.9572 2.4854 3.8003 4.1419 5.4218
Input Arguments
collapse all
a
— Lower endpoint
scalar value | array of scalar values
Lower endpoint of the uniform distribution, specified as a scalar value or an array of scalar values.
To generate random numbers from multiple distributions, specify a
and b using arrays. If both a
and b
are arrays, then the array sizes must be the same. If either a
or b
is a scalar, then unifrnd
expands the scalar argument into a constant array of the same size as the other argument. Each element in r is the random number generated from the distribution specified by the corresponding elements in a
and b
.
Example: [0 -1 7 9]
Data Types: single
| double
b
— Upper endpoint
scalar value | array of scalar values
Upper endpoint of the uniform distribution, specified as a scalar value or an array of scalar values.
To generate random numbers from multiple distributions, specify a and b
using arrays. If both a
and b
are arrays, then the array sizes must be the same. If either a
or b
is a scalar, then unifrnd
expands the scalar argument into a constant array of the same size as the other argument. Each element in r is the random number generated from the distribution specified by the corresponding elements in a
and b
.
Example: [1 1 10 10]
Data Types: single
| double
sz1,...,szN
— Size of each dimension (as separate arguments)
integers
Size of each dimension, specified as separate arguments of integers.
If either a or b is an array, then the specified dimensions sz1,...,szN
must match the common dimensions of a
and b
after any necessary scalar expansion. The default values of sz1,...,szN
are the common dimensions.
If you specify a single value
sz1
, then r is a square matrix of sizesz1
-by-sz1
.If the size of any dimension is
0
or negative, thenr
is an empty array.Beyond the second dimension,
unifrnd
ignores trailing dimensions with a size of 1. For example,unifrnd
(–3,5,3,1,1,1)
produces a 3-by-1 vector of random numbers from the uniform distribution with lower endpoint –3 and upper endpoint 5.
Example: 2,3
Data Types: single
| double
sz
— Size of each dimension (as a row vector)
row vector of integers
Size of each dimension, specified as a row vector of integers.
If either a or b is an array, then the specified dimensions sz
must match the common dimensions of a
and b
after any necessary scalar expansion. The default values of sz
are the common dimensions.
If you specify a single value [
sz1
], then r is a square matrix of sizesz1
-by-sz1
.If the size of any dimension is
0
or negative, thenr
is an empty array.Beyond the second dimension,
unifrnd
ignores trailing dimensions with a size of 1. For example,unifrnd
(–3,5,[3 1 1 1])
produces a 3-by-1 vector of random numbers from the uniform distribution with lower endpoint –3 and upper endpoint 5.
Example: [2 3]
Data Types: single
| double
Output Arguments
collapse all
r
— Uniform random numbers
scalar value | array of scalar values
Uniform random numbers, returned as a scalar value or an array of scalar values with the dimensions specified by sz1,...,szN or sz. Each element in r
is the random number generated from the distribution specified by the corresponding elements in a and b.
Alternative Functionality
unifrnd
is a function specific to the continuous uniform distribution. Statistics and Machine Learning Toolbox™ also offers the generic function random, which supports various probability distributions. To userandom
, create a UniformDistribution probability distribution object and pass the object as an input argument or specify the probability distribution name and its parameters. Note that the distribution-specific functionunifrnd
is faster than the generic functionrandom
.Use rand to generate numbers from the uniform distribution on the interval (0,1).
To generate random numbers interactively, use randtool, a user interface for random number generation.
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
The generated code can return a different sequence of numbers from the sequence returned by MATLAB® if either of the following is true:
The output is nonscalar.
An input parameter is invalid for the distribution.
For more information on code generation, see Introduction to Code Generation and General Code Generation Workflow.
GPU Arrays
Accelerate code by running on a graphics processing unit (GPU) using Parallel Computing Toolbox™.
This function fully supports GPU arrays. For more information, see Run MATLAB Functions on a GPU (Parallel Computing Toolbox).
Version History
Introduced before R2006a
See Also
UniformDistribution | rand | random | unifpdf | unifcdf | unifinv | unifstat | unifit
Topics
- Generate Random Numbers Using Uniform Distribution Inversion
- Uniform Distribution (Continuous)
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- Deutsch
- English
- Français
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本 (日本語)
- 한국 (한국어)
Contact your local office