MATLAB: How to generate a random number with normal distribution

generatematrixrandnrandom

I want to generate a random matrix with normal distribution between -10 and 10. I cannot use randn() because it has no boundaries. Is there any other to generate such matrix??

Best Answer

This is called a truncated distribution. While you are correct that it is no longer strictly a normal distribution (that extends to infinity to either side of the mean), you can nevertheless define it. The extended discussion is in the truncate (link) documentation section in Truncate a Probability Distribution (link).
For your Question, this would be:
pd = makedist('Normal')
t = truncate(pd,-10,10)
r = random(t,10000,1);
Experiment to get the result you want.