MATLAB sin()与sind()的比较

MATLAB sin()与sind()的比较,matlab,degrees,radians,Matlab,Degrees,Radians,我注意到MATLAB有一个sin()和sind()函数。 我了解到,sin()接受以弧度表示的角度,sind()接受以度表示的角度。 我所知道的唯一区别是sind(180)给出0,但是sin(pi)没有: >> sin(pi) ans = 1.2246e-016 >> sind(180) ans = 0 让我感到困惑的是,是否有任何场景或指导原则可以在使用sin()或sind()之间进行选择?来自sind的文档: 对于整数n,sind(n*180)正好为零

我注意到MATLAB有一个
sin()
sind()
函数。 我了解到,
sin()
接受以弧度表示的角度,
sind()
接受以度表示的角度。 我所知道的唯一区别是
sind(180)
给出0,但是
sin(pi)
没有:

>> sin(pi)
ans =
  1.2246e-016
>> sind(180)
ans =
     0

让我感到困惑的是,是否有任何场景或指导原则可以在使用
sin()
sind()
之间进行选择?

来自
sind
的文档:

对于整数
n
sind(n*180)
正好为零,而
sin(n*pi)
反映
pi
的浮点值的准确性

因此,如果您对
sin(pi)
不是精确地零这一事实感到非常不安,请继续使用
sind
,但实际上它只是一个环绕
sin
,因此实际上会增加一点点开销


就个人而言,我更喜欢弧度的优雅,并使用@Magla的
sin

可能的副本。我不认为这是一个重复的案例:问题之间有着密切的关联,但并不相同。这里的问题是实用性的。我担心高中时使用MATLAB的孩子无法毕业。@但我担心使用dgrees而不是弧度的孩子无法毕业……;)为什么如此憎恨学位?在某些应用中,度是标准值,比弧度更有意义。我不知道你为什么觉得有必要侮辱那些计算8度正弦而不是2*pi/45弧度正弦的人的智慧。@nispio试试度。。。弧度是自然的物理性质,而度是人工的(为什么是360度?为什么不是400或100或…?)。同样的论点可以反对英尺、英寸、加仑等,但这并不意味着聪明的人永远不必使用这些单位。。。