[Numpy-discussion] Even Sphere Volume

Ian Mallett geometrian@gmail....
Sun Jul 5 15:30:48 CDT 2009


I'm trying to get a cloud particle system working.  As part of determining
the depth of every point (to get the light that can pass through), it makes
sense that the volume should be of even density.  The volume is a sphere.
Currently, I'm using:

vecs = numpy.random.standard_normal(size=(size,size,3))
magnitudes = numpy.sqrt((vecs*vecs).sum(axis=-1))
uvecs = vecs / magnitudes[...,numpy.newaxis]
randlen = numpy.random.random((size,size))
randpoints = uvecs*randlen[...,numpy.newaxis]

The particles' positions are set to randpoints.  However, this creates only
an even distribution of *directions *on the sphere.  The particles are too
closely centered around the center.  What I want is a certain number of
particles arranged evenly throughout the sphere.  How do I do that?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/numpy-discussion/attachments/20090705/44f8c647/attachment.html 

More information about the NumPy-Discussion mailing list