关于solve的使用问题,大家看看是怎么回事
已知a b 要求f=0时k的值,写方程如下:a=
a =
1
2
3
>> b=;
syms k
f=(a.*(b-1-k-sqrt(k.^2+2*k))-((1+k-sqrt(k.^2+2*k)).*b-1)).*exp(2*sqrt(k.^2+40*k))-((a.*(b-1-k+sqrt(k.^2+2*k))-((1+k+sqrt(k.^2+2*k)).*b-1)))
f =
(-5*k+3*(k^2+2*k)^(1/2))*exp(2*(k^2+40*k)^(1/2))+5*k+3*(k^2+2*k)^(1/2)
(4-7*k+3*(k^2+2*k)^(1/2))*exp(2*(k^2+40*k)^(1/2))-4+7*k+3*(k^2+2*k)^(1/2)
(10-9*k+3*(k^2+2*k)^(1/2))*exp(2*(k^2+40*k)^(1/2))-10+9*k+3*(k^2+2*k)^(1/2)
>> g=solve(f,k)
??? Error using ==> solve
Error, (in solve) invalid arguments
Error in ==> sym.solve at 49
= solve(S{:});
这是什么错误啊,怎么回事呢? help solve symbolic这一部份我很少使用
刚刚看了下Help并试了下
好像eq输入不能3*1 我以前也遇到过这样的问题,就是如果方程太长的话用solve也是解不出来,后来我的办法是把这个方程设成一条曲线,横坐标为K,纵坐标为方程值,然后再作一条直线y=0*k,这样求两条曲线的交点就相当于解得这个方程的值了 楼上的方法可行,楼主可以试试
页:
[1]