Finding angle of rotation relating two vectors to a third

In summary: Earth's magnetic field that transforms v1 into v1', and then find the length of the vector (gap) between v1' and v2.
  • #1
pvm
9
0
I have 2 vectors in 3d space, v1 and v2.
I also have a vector representing as it happens the direction of the Earth's magnetic field, called h.
i believe that v1 and v2 are related in that v2 is some rotation around h of v1.
i would like to find that angle of rotation.

i can't just find the shortest arc (by using the dot and cross products for eg), as this will not be around h in general.

To make matters worse, v1 and v2 won't necessarily be exactly on the same circle of rotation: just approximately on it. So really i'd like to find the angle of rotation around h that transforms v1 into v1', where v1' is the nearest point on that circle of rotation to v2, and THEN also find the length of the vector (gap) between v1' and v2.

Any ideas?
 
Physics news on Phys.org
  • #2
I would approach it this way. I would define an orthogonal Cartesian coordinate system, lettinng h be along the z direction. Then unit vectors of my three axes, in terms of your vectors, could be something like this:
[tex]
\mathbf{\hat{z}} = \frac{\mathbf{h}}{ |\mathbf{h}|}.
[/tex]
[tex]
\mathbf{\hat{y}} = \frac{\mathbf{h} \times \mathbf{v_1}}{|\mathbf{h} \times \mathbf{v_1}|}.
[/tex]
[tex]
\mathbf{\hat{x}} = \mathbf{\hat{y}} \times \mathbf{\hat{z}}.
[/tex]
So that [itex]\mathbf{v_1}[/itex] only has x and z components; that is, the the projection of [itex]\mathbf{v_1}[/itex] onto the x-y plane coincides with the x axis.

Now, since the rotation is about the z axis, we just need to project [itex]\mathbf{v_2}[/itex] onto the x-y plane (that is, find the x and y components) and determine the angle
with repect to the x axis.

I hope that helps.

Jason
 
  • #3
Jason - perfect. Thanks that's exactly what i needed. Had a feeling there would be a nice way to do it...

Many Thanks,
Paul
 

FAQ: Finding angle of rotation relating two vectors to a third

How do I find the angle of rotation between two vectors?

The angle of rotation between two vectors can be found by using the dot product formula: θ = cos^-1 ((a*b) / (|a||b|)), where a and b are the two vectors. This formula gives the angle between the two vectors in radians.

Can I use the cross product formula to find the angle of rotation between two vectors?

No, the cross product formula is used to find the perpendicular vector to the two given vectors. It does not give the angle of rotation between the two vectors.

What is the purpose of finding the angle of rotation between two vectors in relation to a third?

Finding the angle of rotation between two vectors in relation to a third can help determine the orientation and direction of the third vector. It can also help in calculating the resulting vector when two or more vectors are combined.

How does the order of the vectors affect the angle of rotation?

The order of the vectors does not affect the angle of rotation. The dot product formula takes into account the magnitudes and directions of both vectors, regardless of their order.

Can the angle of rotation be negative?

Yes, the angle of rotation can be negative. This indicates the direction of rotation, where a negative angle means clockwise rotation and a positive angle means counterclockwise rotation.

Similar threads

Back
Top