  | | | Random points on a unit sphere without biasing | Random points on a unit sphere without biasing 2005-06-14 - By Alan Jones
Back X, Y, Z ones would be the same as doing a cube getting more in the corners. Apparently gaussian is special... At least that's what I assume from what I read on the mathworld page.
Cheers,
Alan.
On 6/14/05, kim aldis <kim@(protected)> wrote: > Why Gaussian? Wouldn't normalising x/y/z random numbers work? > > > > > -- --Original Message-- -- > > From: owner-xsi@(protected) > > [mailto:owner-xsi@(protected)] On Behalf Of Alan Jones > > Sent: 14 June 2005 21:42 > > To: XSI@(protected) > > Subject: Re: Random points on a unit sphere without biasing > > > > Thanks Andy. After looking at the options I think I'm going > > to go with the one at the bottom of the mathworld page. It > > suggested 3 gaussian random numbers for X, Y and Z in a > > vector and normalizing the vector (at least that's what I > > think it said from my limited math). I managed to track down > > an apparently fast way to generate gaussian random numbers > > from evenly distributed ones so with any luck I'm set. > > > > Thanks again, > > > > Alan. > > > > On 6/14/05, Andy Jones <andy@(protected)> wrote: > > > The mathworld article answers this perfectly. Basically, > > you pick one > > > angle (theta) at random and a height (h) on the sphere at > > random. You > > > can check this by calculating the approximated surface area (width * > > > radius) of the bands around the sphere at different heights > > along the > > > sphere, and take the limit as dh -> 0. At the poles, the > > width of the > > > band is larger for a given height, and at the equator, the > > radius of > > > the band is obviously larger. In the limit, they have a perfectly > > > inverse relationship such that each band has the same area. More > > > generally, a good way to randomly sample vectors within a > > given angle > > > of an average vector is to restrict the height range to > > [cos(angle), 1]. > > > > > > I think you can't pick points in a cube and normalize > > because you'll > > > bias more points at the corners and fewer points in the > > middles of the > > > faces, since a cube has more and less volume in those > > directions. The > > > same problem occurs if you sample on a cube's surface area. > > The cube > > > method is especially problematic because the biasing isn't > > determined > > > by the original vector direction. Of course, that doesn't mean it > > > doesn't work okay in practice for many applications. > > > > > > -Andy > > > > > > Alan Jones wrote: > > > > > > >Hi All, > > > > > > > >This is to the maths geniuses in the room. I want to generate X > > > >number of points on a unit sphere, but be sure I won't have any > > > >biasing involved. > > > > > > > >My first thought was just to use a couple of random numbers (let's > > > >assume they don't have any bias) and then use those with a few sin > > > >and cos function etc to generate the points. Though I have > > a feeling > > > >that would give me more points around the poles. > > > > > > > >Anyone have some good suggestions? > > > > > > > >Cheers, > > > > > > > >Alan. > > > > > > > >--- > > > >Unsubscribe? Mail Majordomo@(protected) with the > > following text in body: > > > >unsubscribe xsi > > > > > > > > > > > > > > > > > > --- > > > Unsubscribe? Mail Majordomo@(protected) with the > > following text in body: > > > unsubscribe xsi > > > > > > > --- > > Unsubscribe? Mail Majordomo@(protected) with the following > > text in body: > > unsubscribe xsi > > > > > > --- > Unsubscribe? Mail Majordomo@(protected) with the following text in body: > unsubscribe xsi >
--- Unsubscribe? Mail Majordomo@(protected) with the following text in body: unsubscribe xsi
|
|
 |