Generate noise using Box muller meathod
15 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Ronak Sakaria
le 8 Juin 2012
Commenté : Ali Sabra
le 24 Oct 2019
What are the other meathod for generating Guassian Noise?
I wrote code for Box muller like:
noise = rand(2,length(data));
AWGN_noise = zeros(1,length(data));
for i1=1:length(data)
AWGN_noise(i1) = sigma_noise * sqrt(-2*log(noise(1,i1)))*cos(2*pi*noise(2,i1));
end
The thing is that I'm not getting much variance in values after Box Muller Transformation. Suggest me some good code to generate guassian noise.
0 commentaires
Réponse acceptée
the cyclist
le 8 Juin 2012
If I set sigma_noise to 1, then the variance of your noise is also 1, exactly as I would expect. (See for example http://en.wikipedia.org/wiki/Box%E2%80%93Muller_transform.) If you increase the value of sigma_noise, then you'll get more variance.
Also, your code can be vectorized to have a significant speedup. Replace your for loop with:
AWGN_noise = sigma_noise * sqrt(-2*log(noise(1,:))).*cos(2*pi*noise(2,:));
4 commentaires
Ali Sabra
le 24 Oct 2019
Hello everyone,
Can anybody body tell me how to change mean of the generated Gaussian RV using this method ?
Plus de réponses (1)
Voir également
Catégories
En savoir plus sur QPSK dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!