First consider vectors of unit length, say on the unit sphere. Now I want to give some magnitude to these vectors and I want the magnitude to be chosen from the normal distribution. In one dimension that is easy:
RandomReal[NormalDistribution[0,x]]
However, if my vector is arbitrarily pointed I cannot take from this distribution since I cannot have a negative magnitude.
The only way I can think of giving the vector a normal distribution of lengths is by using
RandomReal[HalfNormalDistribution[y]]
which forces the randomly chosen quantity to be > 0. Does this seem like the proper procedure?
Normalize[]
the vectors to have unit length, and then multiply the components withRandomReal[NormalDistribution[0,x]]
? (I haven't posted as an answer since you make no mention of the distribution the vectors themselves are supposed to follow...) $\endgroup$RandomReal
I would have thought that you neededRandomVariate[...]
; but, to my surprise,RandomReal[NormalDistribution[0,1]]
generates standard normal random numbers,i.e.,RandomReal
does accept distribution functions as the first argument:) $\endgroup$