声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1195|回复: 4

[综合讨论] 关于solve的使用问题,大家看看是怎么回事

[复制链接]
发表于 2008-11-25 21:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
已知a b 要求f=0时k的值,写方程如下:
a=[1;2;3]

a =

     1
     2
     3

>> b=[4;5;6];
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
[varargout{1:max(1,nargout)}] = solve(S{:});
这是什么错误啊,怎么回事呢?
回复
分享到:

使用道具 举报

发表于 2008-11-25 22:41 | 显示全部楼层
help solve
发表于 2008-11-26 10:54 | 显示全部楼层
symbolic这一部份我很少使用
刚刚看了下Help并试了下
好像eq输入不能3*1
发表于 2008-12-3 22:36 | 显示全部楼层
我以前也遇到过这样的问题,就是如果方程太长的话用solve也是解不出来,后来我的办法是把这个方程设成一条曲线,横坐标为K,纵坐标为方程值,然后再作一条直线y=0*k,这样求两条曲线的交点就相当于解得这个方程的值了
发表于 2008-12-3 23:28 | 显示全部楼层
楼上的方法可行,楼主可以试试
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-3 17:42 , Processed in 0.070171 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表