How to simulate a random walk on a sphere

  • Thread starter phonic
  • Start date
  • #1
28
0

Main Question or Discussion Point

Dear All,

I am simulating a random walk on a sphere with unit radius. I want to move from current location p_t to the new location p_{t+1} along the big circle, whose arc has an angle omega relative to p_t's latitude. I tried using the law of cosine. But at the poles, the law of cosine diverges. Can anyone help find a method that works for all location on the sphere? Thanks!
 

Answers and Replies

  • #2
1,444
4
Dear All,

I am simulating a random walk on a sphere with unit radius. I want to move from current location p_t to the new location p_{t+1} along the big circle, whose arc has an angle omega relative to p_t's latitude. I tried using the law of cosine. But at the poles, the law of cosine diverges. Can anyone help find a method that works for all location on the sphere? Thanks!
I am not sure what you mean by law of cosine, but I would suggest: If your algorithm is correct, then do not start your walk at the pole. Probability that you will ever reach the pole is zero, I guess.
 
  • #3
236
0
So say, at each step, you want to move by an angle [itex]\alpha[/itex] along a random great circle through the current point. If your current point is the "north pole", i.e. (0,0,1) in xyz coordinates, then that's just a rotation, call it R, by [itex]\alpha[/itex], with axis a random line in the xy-plane.

And rather than worry about how you'd do it if the point isn't the north pole, I'd instead do a rotation C to bring my current point to the north pole, then do as above, then do the inverse of C. Finding such a C is straightforward; one way would be to project the current point to the xy-plane, draw a line through it and the origin, and take the perpendicular line through the origin to be the axis of rotation. Then you can rotate so that p travels along a great circle to the north pole. There are lots of other C's that would work (where p doesn't move along a great circle), but that's probably the easiest to compute. (Detail: if p is the south pole, this isn't well-defined, so just let C be the map that mirrors the sphere across the xy-plane.)

So then the effect of [itex]CRC^{-1}[/itex] on p is to carry it to a new point at an angular distance [itex]\omega[/itex] away, along a random great circle passing through p.
 

Related Threads on How to simulate a random walk on a sphere

  • Last Post
Replies
2
Views
888
  • Last Post
Replies
1
Views
1K
  • Last Post
Replies
2
Views
876
  • Last Post
Replies
2
Views
2K
  • Last Post
Replies
4
Views
4K
Replies
4
Views
1K
  • Last Post
Replies
1
Views
2K
Replies
0
Views
2K
Replies
6
Views
2K
Replies
13
Views
5K
Top