I want to convert from Cartesian to spherical coordinates in MATLAB. I have tried to use cart2sph in MATLAB but it is showing some error
9 次查看(过去 30 天)
显示 更早的评论
My MATLAB Code is as follows :
function [phi,theta] = calc_phitheta_geom(xyz_source,xyz_mic1,xyz_mic2)
mid_p =(xyz_mic1 + xyz_mic2)/2 %midpoint calculation of xyz_mic1 and xyz_mic2
V = mid_p - xyz_source %Vector from midpoint till xyz_source
[phi,theta] = cart2sph(V) %converting Vector V from cartesian to spherical
end
Now actually Matlab command requires parameter for cart2sph as follows:
[phi,theta] = cart2sph(x,y,z) % here x y z are cartesian coordinates.
My question is that when I am using [phi,theta] = cart2sph(V) it is showing not enough input arguments.
How can I resolve this issue? Can anybody help me in this regard?
Thank you.
0 个评论
采纳的回答
Ahmet Cecen
2018-3-18
You have to actually input the x, y and z vectors separately.Like
[azimuth,elevation,r] = cart2sph(V(:,1),V(:,2),V(:,3));
0 个评论
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!