问题描述:
请问matlab高手solve语句运行结果为什么是atan(,)的形式
我的指令时这样的:
solve('k*sin(x)+sin(2*x)')
回车后的运行结果应该是个和k有关的函数
结果得到这样的结果
ans=pi
0
atan(1/2*(-k^2+4)^1/2,-1/2*k)
atan(-1/2*(-k^2+4)^1/2,-1/2*k)
前面两个值pi和0肯定没有问题,但是atan(,)这是什么呢?我查了半天都没有查到这个形式的数值啊,atan不是反正切吗,为什么里面会有两个值用逗号隔开呢?
另外我运行solve('sin(x)+sin(2*x)')这个命令,得到的结果是
ans=0,pi,2/3pi,和-2/3pi
经过画图验证和书上给的结果,这个结果是对的,也就是说我的指令没错,但是不知道为什么加入系数k后会得到那样的结果
其实这个指令的意思是计算两个正弦信号的合成信号过在一个周期内,所过的零点,也就是调宽方波的换向点,也就是说解出来的值肯定是有0和pi,另外两个解释互为相反数的,就和'sin(x)+sin(2*x)'这个合成信号的换向点是近似的.
atan(,另外怎么把这两个值变成用pi表示的值,比如pi-acos(k/2)和pi+acos(k/2),书上给出的正确解就是这个形式的.
我的指令时这样的:
solve('k*sin(x)+sin(2*x)')
回车后的运行结果应该是个和k有关的函数
结果得到这样的结果
ans=pi
0
atan(1/2*(-k^2+4)^1/2,-1/2*k)
atan(-1/2*(-k^2+4)^1/2,-1/2*k)
前面两个值pi和0肯定没有问题,但是atan(,)这是什么呢?我查了半天都没有查到这个形式的数值啊,atan不是反正切吗,为什么里面会有两个值用逗号隔开呢?
另外我运行solve('sin(x)+sin(2*x)')这个命令,得到的结果是
ans=0,pi,2/3pi,和-2/3pi
经过画图验证和书上给的结果,这个结果是对的,也就是说我的指令没错,但是不知道为什么加入系数k后会得到那样的结果
其实这个指令的意思是计算两个正弦信号的合成信号过在一个周期内,所过的零点,也就是调宽方波的换向点,也就是说解出来的值肯定是有0和pi,另外两个解释互为相反数的,就和'sin(x)+sin(2*x)'这个合成信号的换向点是近似的.
atan(,另外怎么把这两个值变成用pi表示的值,比如pi-acos(k/2)和pi+acos(k/2),书上给出的正确解就是这个形式的.
问题解答:
我来补答展开全文阅读