sprandsym
Sparse symmetric random matrix
Syntax
R = sprandsym(S)
R = sprandsym(n,density)
R = sprandsym(n,density,rc)
R = sprandsym(n,density,rc,kind)
R = sprandsym(S,[],rc,3)
Description
R = sprandsym(S)
returns
a symmetric random matrix whose lower triangle and diagonal have the
same structure as S
. Its elements are normally
distributed, with mean 0
and variance 1
.
R = sprandsym(n,density)
returns
a symmetric random, n
-by-n
,
sparse matrix with approximately density*n*n
nonzeros;
each entry is the sum of one or more normally distributed random samples,
and (0 <= density <= 1
).
R = sprandsym(n,density,rc)
returns
a matrix with a reciprocal condition number equal to rc
.
The distribution of entries is nonuniform; it is roughly symmetric
about 0; all are in [−1,1].
If rc
is a vector of length n
,
then R
has eigenvalues rc
. Thus,
if rc
is a positive (nonnegative) vector then R
is
a positive (nonnegative) definite matrix. In either case, R
is
generated by random Jacobi rotations applied to a diagonal matrix
with the given eigenvalues or condition number. It has a great deal
of topological and algebraic structure.
R = sprandsym(n,density,rc,kind)
is positive definite.
If kind = 1,
R
is generated by random Jacobi rotation of a positive definite diagonal matrix.R
has the desired condition number exactly.If kind = 2,
R
is a shifted sum of outer products.R
has the desired condition number only approximately, but has less structure.
R = sprandsym(S,[],rc,3)
has the same structure
as the matrix S
and approximate condition number 1/rc
.
Tips
sprandsym
uses the same random number generator
as rand
, randi
, and randn
.
You control this generator with rng
.
Extended Capabilities
Version History
Introduced before R2006a