Generate Gassian Colored Noise

1 visualización (últimos 30 días)
S. David
S. David el 23 de Mayo de 2014
Editada: S. David el 24 de Mayo de 2014
Hello all,
Is there any built-in function in MATLAB to generate a Gaussian noise with a specific covariance matrix R (colored noise), not necessarily the identity matrix (white noise)?
Thanks

Respuesta aceptada

Matt J
Matt J el 23 de Mayo de 2014
Editada: Matt J el 23 de Mayo de 2014
There's MVRND, if you have the Stats Toolbox.
Otherwise, you can just do
sqrtm(R)*randn(size(R,2),1);
  5 comentarios
Matt J
Matt J el 24 de Mayo de 2014
Editada: Matt J el 24 de Mayo de 2014
If R is close to singular, it can be mis-perceived as having some negative eigenvalues (and hence as not being psd) due to numerical imprecision.
However, if your R is close to singular, it really means you're taking the covariance of have some redundant variables - some of them are approximately linear combinations of the others - and should get rid of them.
S. David
S. David el 24 de Mayo de 2014
Editada: S. David el 24 de Mayo de 2014
I have two matrices, and I found the eigenvalue of both of them: one of them has all positive eigenvalues, but the other has some negative eigenvalues. I guess the second one is close to singular as you said. But even when I try the first one in mvrand(Mu,Sigma), I still get the same error.
For the matrix with negative eigenvalues, how to eliminate the redundant variables?

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Surface and Mesh Plots en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by