Generate random matrix using prescribed alphabet
out = randsrc
out = randsrc(m)
out = randsrc(m,n)
out = randsrc(m,n,alphabet)
out = randsrc(m,n,[alphabet; prob])
out = randsrc(m,n,...,state);
out = randsrc(m,n,...,s);
out = randsrc
generates
a random scalar that is either -1 or 1, with equal probability.
out = randsrc(m)
generates
an m
-by-m
matrix, each of whose
entries independently takes the value -1 with probability 1/2, and
1 with probability 1/2.
out = randsrc(m,n)
generates
an m
-by-n
matrix, each of whose
entries independently takes the value -1 with probability 1/2, and
1 with probability 1/2.
out = randsrc(m,n,alphabet)
generates
an m
-by-n
matrix, each of whose
entries is independently chosen from the entries in the row vector alphabet
.
Each entry in alphabet
occurs in out
with
equal probability. Duplicate values in alphabet
are
ignored.
out = randsrc(m,n,[alphabet; prob])
generates
an m
-by-n
matrix, each of whose
entries is independently chosen from the entries in the row vector alphabet
.
Duplicate values in alphabet
are ignored. The row
vector prob
lists corresponding probabilities,
so that the symbol alphabet(k)
occurs with probability prob(k)
,
where k
is any integer between one and the number
of columns of alphabet
. The elements of prob
must
add up to 1.
out = randsrc(m,n,...,state);
is
the same as the two preceding syntaxes, except that it first resets
the state of the uniform random number generator rand
to the integer state
.
Note:
This usage is deprecated and may be removed in a future release.
Instead of |
This function uses, by default, the Mersenne Twister algorithm by Nishimura and Matsumoto.
Note:
Using the See |
out = randsrc(m,n,...,s);
causes
rand to use the random stream s. See RandStream for more details.
To generate a 10-by-10 matrix whose elements are uniformly distributed among members of the set {-3,-1,1,3}, you can use either of these commands.
out = randsrc(10,10,[-3 -1 1 3]);
out = randsrc(10,10,[-3 -1 1 3; .25 .25 .25 .25]);
To skew the probability distribution so that -1 and 1 each occur with probability .3, while -3 and 3 each occur with probability .2, use this command.
out = randsrc(10,10,[-3 -1 1 3; .2 .3 .3 .2]);