MatLab返回不同于计算器的三角函数答案?
我很难理解Matlab和我的计算器从正弦函数返回的答案 首先,我认为MatLab返回不同于计算器的三角函数答案?,matlab,Matlab,我很难理解Matlab和我的计算器从正弦函数返回的答案 首先,我认为pi/2和90度是类似的,但当我将它们传递到余弦函数时,我得到这两个输出: 计算器:cos(90)=0 计算器:cos(pi/2)=0.9996242169 Matlab:cos(90)=-0.4481 Matlab:cos(pi/2)=6.1232e-17 我一直在参考单位圈,但事情似乎没有进展。我对数学相当陌生,所以可能我做错了什么。我一直在练习正弦函数,这与我的计算器结果非常接近: Matlab:sin(90)=0.
pi/2
和90度
是类似的,但当我将它们传递到余弦函数时,我得到这两个输出:
- 计算器:
cos(90)=0
- 计算器:
cos(pi/2)=0.9996242169
- Matlab:
cos(90)=-0.4481
- Matlab:
cos(pi/2)=6.1232e-17
- Matlab:
sin(90)=0.8940
- Matlab:
sin(pi/2)=1
您可以检查数字接近0的matlab规范。如果您想提供角度(以度为单位),则使用cosd和sind;如果角度以弧度为单位,则使用cos和sin cos(0)和cosd(0)正在我的计算机上生成1。然而,cos(pi/2)产生6.1232e-17,而cosd(0)产生0
您可以查看matlab规范,其中数字接近0。您的计算器以度为单位测量角度,而matlab以弧度为单位测量角度。因此,计算器上的
90
度与matlab中的pi/2
角度相同<考虑到浮点计算的限制,0
和6.1232e-17
实际上是同一个数字。具体来说,PI
是不合理的,这就是为什么cos(PI/2)
在Matlab中不完全是0
的原因。谢谢,我没有意识到像Matlab这样的工具,计算器,等最初设置为pi或度。正如你们可能猜到的,我认为你们可以将其中任何一个作为论点传递,并得到完全相同的答案6.1232e-17
在使用笔和纸之后,确实达到了0.0000000000000000 61232
,因此现在这非常合理。您的计算器以度为单位测量角度,而matlab以弧度为单位测量角度。因此,计算器上的90
度与matlab中的pi/2
角度相同<考虑到浮点计算的限制,0
和6.1232e-17
实际上是同一个数字。具体来说,PI
是不合理的,这就是为什么cos(PI/2)
在Matlab中不完全是0
的原因。谢谢,我没有意识到像Matlab这样的工具,计算器,等最初设置为pi或度。正如你们可能猜到的,我认为你们可以将其中任何一个作为论点传递,并得到完全相同的答案6.1232e-17
在使用纸笔之后,确实达到了0.0000000000000000 61232
,所以现在这是非常合理的。