基于matlab atan2函数解析
作者:子禾_19
这篇文章主要介绍了matlab atan2函数解析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
matlab atan2函数解析
旁边的图片显示内容是:
在一个单位圆内atan2函数在各点的取值。圆内标注代表各点的取值的幅度表示。
图片中,从最左端开始,角度的大小随着逆时针方向逐渐从-π增大到+π,并且角度大小在点位于最右端时,取值为0。
另外要注意的是,函数atan2(y,x)中参数的顺序是倒置的,atan2(y,x)计算的值相当于点(x,y)的角度值。
atan2(a,b)是4象限反正切,它的取值不仅取决于正切值a/b,还取决于点 (b, a) 落入哪个象限:
- 当点(b, a) 落入第一象限时,atan2(a,b)的范围是 0 ~ pi/2;
- 当点(b, a) 落入第二象限时,atan2(a,b)的范围是 pi/2 ~ pi;
- 当点(b, a) 落入第三象限时,atan2(a,b)的范围是 -pi~-pi/2;
- 当点(b, a) 落入第四象限时,atan2(a,b)的范围是 -pi/2~0
(Matlab反正切函数)atan和atan2的不同点
1.atan(y/x)得到的角度只取决于正切值y/x
- 当 y/x > 0 时,atan(y/x)取值范围是 0 ~ π/2(第一象限)
- 当 y/x < 0 时,atan(y/x)取值范围是 -π/2~0(第四象限)
2.atan2(y,x)得到的角度不仅取决于正切值y/x
还取决于点 (y,x) 所在的象限
- 点(x,y) 在第一象限时,atan2(y,x)的范围是 0 ~ π/2
- 点(x,y) 在第二象限时,atan2(y,x)的范围是 π/2 ~ π
- 点(x,y) 在第三象限时,atan2(y,x)的范围是 -π~ -π/2
- 点(x,y) 在第四象限时,atan2(y,x)的范围是 -π/2~0
3.对比
- atan只有一个参数,就是正切值y/x
- atan2有两个参数,注意是(纵坐标,横坐标),也可以用(sinα,cosα)
- atan2(y,x) = atan(y/x) 仅发生在点 (x,y) 在第一象限 (x>0,y>0)或第四象限(x>0,y<0)
4.举例
在第二象限有个点:x=-1,y=1
atan(y/x)=-π/4 atan2(y,x)=3π/4
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。