normrnd vs.random

9 vues (au cours des 30 derniers jours)
Andrea
Andrea le 20 Juin 2011
Dear, I would like to generate random nmbers with a normal distribution. From the documentation I see that there are two functioncs that seem to make the same things. normrnd(mu,sigma) and random('Normal',mu,sigma)
I wrote these two simpole for-loop in order to evaluate time consumption of these two functions and I found that normrnd is less time-consuming than random. I don't understand this difference. Could you help me?
tic for i=1:1000000 ciao=ciao+normrnd(0,0.01); end toc
tic for i=1:1000000 ciao=ciao+random('Normal',0,0.01); end toc
Kind regards
Andrea Giostri

Réponse acceptée

Titus Edelhofer
Titus Edelhofer le 20 Juin 2011
Hi,
if you open random with an editor and search for "normrnd", you will see, that random in fact calls normrnd. That's why it takes a little more time. On the other hand: if you call normrnd and random one time with N=1000000 instead of N calls in a loop, it won't make a difference at all ...
Titus
  4 commentaires
Andrew Newell
Andrew Newell le 20 Juin 2011
Aaagh! Right at the top of http://www.mathworks.com/matlabcentral/answers/1759-dumb-mistakes-we-make-with-matlab! Thanks for reminding me.
dany katamba mpoyi
dany katamba mpoyi le 11 Juin 2022

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical 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!

Translated by