Vectors along surface of a sphere

  • Context: Undergrad 
  • Thread starter Thread starter Dissonance in E
  • Start date Start date
  • Tags Tags
    Sphere Surface Vectors
Click For Summary

Discussion Overview

The discussion revolves around determining unit vectors that point "due north," "due west," "due south," and "due east" along the surface of a sphere, given a point on the sphere's surface in an xyz coordinate system. Participants explore various mathematical approaches and methods for calculating these vectors.

Discussion Character

  • Exploratory
  • Technical explanation
  • Mathematical reasoning

Main Points Raised

  • One participant suggests using the parameterization of a surface and the derivative to find tangent vectors at a point on the sphere.
  • Another participant proposes a method involving a unit vector from the center of the sphere to the point, using vector projections to find the north-pointing vector along the surface.
  • A different approach involves taking the cross product of the position vector and a unit vector in the z direction to find a vector that is perpendicular to both, which can then be used to determine the direction of "North" or "South."
  • Participants discuss the implementation of these methods in MATLAB, questioning whether the derived unit vectors will work for arbitrary points on the sphere.
  • There is a mention of adjusting the direction of the resulting vector based on the sign of its z component to ensure it points in the intended direction.

Areas of Agreement / Disagreement

Participants present multiple competing methods for calculating the desired unit vectors, and there is no consensus on a single approach. The discussion remains unresolved with various techniques being explored.

Contextual Notes

Some methods rely on specific assumptions about the coordinate system and the definitions of "north," "south," etc., which may not be universally applicable. The discussion also highlights potential limitations in the mathematical steps taken by participants.

Dissonance in E
Messages
71
Reaction score
0
I assume this is rather elementary so I'll be brief.

I have a point in an xyz coordinate system, this point is assumed to lie on the surface of a sphere with radius R. Suppose I know the coordinates of this point, how would I go about solving for the unitvectors pointing "due north", "due west", "due south" and "due east" along the surface of the sphere at this point ?

Thanks.
 
Physics news on Phys.org
If a surface is parameterized by

[itex]\vec{f}(u, v) = \vec{r}[/itex]

then

[itex]\frac{\partial\vec{f}(u, v)}{\partial u}[/itex]

is a vector tangent to the surface in the u direction at that point

Normalizing such a vector will yield a unit vector.
 
Is there a way to solve the vectors using just a point on the axis and a unit vector towards the direction we want indicated ? I found something similar on the web, will this work?

"Let r2u be a unit vector from the center of the Earth's surface to
point 2. This unit vector is just a vector that's one unit long, but
pointing in the same direction as the vector r2. Let zu be the unit
vector in the z direction. Then you can construct a vector that
points "due north" along the Earth's surface from point 2 as:

north pointing vector = zu - (zu.r2u)r2u

The period in this expression connotes the scalar product of two
vectors. Similarly, a vector pointing along the Earth's surface from
point 2 toward point 1 (on a great circle) can be written as:

heading vector = r1u - (r1u.r2u)r2u
"

http://mathforum.org/library/drmath/view/52049.html
 
Let V = ai + bj + ck be the position vector to your point. Take the cross product
W = k cross V which will be perpendicular to both the k direction and your position vector V. Now take D = W cross V. This will be perpendicular to W, hence in the plane of k and V and it is perpendicular to V, so it is pointing either "North" or "South". Use D or -D, whichever has a positive z component.
 
ok so if i do something like this on matlab:

v = [3,3,3];
k = [0,0,1];
w = cross(k,v);
d = cross(w,v);
d = d/norm(d)

d =

0.4082 0.4082 -0.8165

i should get a unit vector d on point v that points towards point k ? will this work for arbitrary values of v & k ?
 
Dissonance in E said:
ok so if i do something like this on matlab:

v = [3,3,3];
k = [0,0,1];
w = cross(k,v);
d = cross(w,v);
d = d/norm(d)

d =

0.4082 0.4082 -0.8165

i should get a unit vector d on point v that points towards point k ? will this work for arbitrary values of v & k ?

The z component came out negative, so you want the opposite direction. But as I look at it more closely, if you let w = cross(v,k) instead of cross(k,v), you should get the right direction in the first place. To be sure you understand what the answer represents, if you draw the vector d with its tail at your original point on the sphere, d will be tangent to the sphere about the origin containing your original point and will point to the direction of the axis determined by the k vector, in this case the positive z axis.
 
All right, thanks a lot.
 

Similar threads

  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 8 ·
Replies
8
Views
2K
Replies
23
Views
5K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 2 ·
Replies
2
Views
4K
  • · Replies 3 ·
Replies
3
Views
1K