MATLAB弧度与角度转换

发布时间:2016-04-14 17:09:22

复数    z=x+y*i

其极坐标形式为    z=|z|*e^(i*θ) 其中   θ=arctan(y/x)

|z|=sqrt(x^2+y^2)

弧度计算: θ1=angle(z)

θ1=phrase(z)

θ1=atan(z) 其中的区别可以在MATLAB中使用帮助文档对比观察。

角度和弧度的换算:

θ2=rad2deg(θ1) //rad2deg()函数用来进行将弧度转换成角度

θ3=deg2rad(θ1) //deg2rad()函数用来进行将角度转换成弧度

//这两个函数的使用也可以自行使用帮助文档学习

MATLAB中也可以直接使用角度来进行三角函数的计算:

sind(θ4);

cosd(θ4);

tand(θ4);

atand(θ4); //注意θ4在输入时是角度,只是没有度数特有的符号(°)而已。

注意这里的函数应该不太全,也是我自己搜索得来,MATLAB帮助文档我也没有细看。可以自行查阅。

举例:求sin(30°)

解:>>sind(30)

>>ans =

0.5

注意这里的都是度数,并没有涉及到分和秒。(一般这种情况都是自己编写相关的程序,而且前面的各种函数也可以自己编写,没有必要一定要使用MATLAB自带的函数。度分秒的计算应该也有自带的函数吧,用过的人可以补充。)

度分秒与度的转换举例:

度分秒进制为依次60.

1°=60‘=3600’‘

1‘=(1/60)°

1’‘==(1/60)'=(1/3600)°

相关题目: 1.105°47‘24’‘

=105°+47*(1/60)°+24*(1/3600)°

=105.79°

注:这里先最好用分数,最后再用小数.

也可先把秒换算成分,然后再把分换算成度.如下:

105°47‘24’‘

=105°+(47‘+24*(1/60)‘)

=105°+(47‘+0.4‘)

=105°+47.4‘

=105°+47.4*(1/60)°

=105°+0.79°

=105.79°

下面是度..秒的计算举例(转载自:http://wenku.baidu.com/link?url=rnpQCVFKYnXJji89ip4GM0VfAS6L6F0Ed_SXy5oldBExFWnBc97J4JrwRdko00XmwiXgq0jQPjvHNeYGp0GF9QEj4xnlDiI6o4Gqwh4Ed5q)

1 %.分秒转化为弧度  

function jrad=dtor(deg) 

degd=fix(deg);

degf=(deg-degd)*100; 

degm=fix(degf);

degs=(degf-degm)/36.0; 

jrad=(degd+degm/60.00+degs)*pi/180.0; 

2 %弧度转化为度.分秒  

function jdeg=rad2deg(rad) 

rad=rad*180/pi;

deg=fix(rad);

xsbf=(rad-deg)*60;

degf=fix(xsbf);

degm=(xsbf-degf)*60;

jdeg=deg+degf/100.0+degm/10000.0;

【转】http://www.ilovematlab.cn/thread-438327-1-1.html

dms2degrees函数可以把度分秒转化为以度为单位的小数

注意函数输入不是三个参量,而是一个数组,数组三个元素依次为度分秒的值

dms2degrees(30,20,10)           %格式错误!

dms2degrees([30 20 10])         %格式正确

再之后则可以用deg2rad再把角度转换为弧度制,从而可以作为sincos等函数的正确输入值

或者也可以直接对角度使用sindcosd等函数

如果你是要反过来,即求出了弧度值,想转化为度分秒

那就全部倒过来

先用rad2deg,再用degrees2dms

PSdms2degrees可以直接输入一个n×3的数组,并为你返回一个n×1的数组。其他也同理。所以如果有很多角度需要转换,并不一定要写循环。

MATLAB弧度与角度转换

相关推荐