Matlab 各种随机数设置
randn(伪随机正态分布数)
Normally distributed pseudorandom numbers
Syntax
r = randn(n)
randn(m,n)
randn([m,n])
randn(m,n,p,...)
randn([m,n,p,...])
randn(size(A))
r = randn(..., 'double')
r = randn(..., 'single')
Description
r = randn(n) returns an n -by-n matrix containing pseudorandom values drawn from the standard
normal distribution. randn(m,n) or randn([m,n]) returns an m-by-n matrix. randn(m,n,p,...) or
randn([m,n,p,...]) returns an m-by-n-by-p-by-... array. randn returns a scalar. randn(size(A))
returns an array the same size as A.
r = randn(..., 'double') or r = randn(..., 'single') returns an array of normal values of the specified
class.
Note The size inputs m, n, p, ... should be nonnegative integers. Negative integers are treated
as 0.
The sequence of numbers produced by randn is determined by the internal state of the
uniform pseudorandom number generator that underlies rand, randi, and randn. randn uses one
or more uniform values from that default stream to generate each normal value. Control the
default stream using its properties and methods.
Note In versions of MATLAB prior to 7.7 (R2008b), you controlled the internal state of the
random number stream used by randn by calling randn directly with the 'seed' or 'state'
keywords.
Examples
Generate values from a normal distribution with mean 1 and standard deviation 2.
r = 1 + 2.*randn(100,1);
Generate values from a bivariate normal distribution with specified mean vector and
covariance matrix.
mu = [1 2];
Sigma = [1 .5; .5 2]; R = chol(Sigma);
z = repmat(mu,100,1) + randn(100,2)*R;
Replace the default stream at MATLAB startup, using a stream whose seed is based on clock,
so that randn will return different values in different MATLAB sessions. It is usually not desirable
to do this more than once per MATLAB session.
RandStream.setDefaultStream ...