MATLAB Answers

Rotate Spherical Coordinates to find new Vector Magnitude

12 views (last 30 days)
Chad
Chad on 28 Sep 2020
Commented: Chad on 29 Sep 2020
Dear Forum,
I am given a ,,. Does Matlab have a function to convert and find the from a new ?

  6 Comments

Show 3 older comments
James Tursa
James Tursa on 28 Sep 2020
Spherical coordinates typically are restricted to have r >= 0. What application do you have where you think you need to allow negative r values?
Chad
Chad on 28 Sep 2020
If I am given a vector in either x,y,z or what is the vector magnitude with a known . It can be negative.
Ameer Hamza
Ameer Hamza on 29 Sep 2020
In case when r1=100, theta1=0, and phi1=0, and if by the negative value of r, you mean reversing the position vector, then in that case, you can say that r1=-100, theta1=180, and phi1=0 is equivalent to the first vector. But for any other value of theta and phi, you cannot get the same vector.

Sign in to comment.

Accepted Answer

Sindar
Sindar on 29 Sep 2020
It sounds like the goal is to find the projection of the vector along the direction defined by theta=100, phi=150. If this is the case, one way is:
[x2,y2,z2] = sph2cart(150*pi/180,100*pi/180,1);
[x1,y1,z1] = sph2cart(phi1*pi/180,theta1*pi/180,r1);
v12_proj = x1.*x2 + y1.*y2 + z1.*z2;

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!