Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-02-14, 21:15   #1
davidqu
初级会员
 
注册日期: 2008-02-13
年龄: 47
帖子: 3
声望力: 0
davidqu 正向着好的方向发展
默认 [求助]solve命令

Matlab 对于比较复杂的计算,消耗资源严重,通常计算很耗时,但有时候会出现解不出的现象
就像这个
s=solve('0.0728146135=((1-x)/x)*(-LOG(1-X))')
执行后出现:
???Error using ==>solve
Unable to find closed form solution.

请教了:是方程的编写出错了? :sweat: 还是其他呢?
davidqu 当前离线   回复时引用此帖
旧 2008-02-21, 10:36   #2
yuyongji
初级会员
 
注册日期: 2008-02-19
年龄: 41
帖子: 8
声望力: 0
yuyongji 正向着好的方向发展
默认

我认为应该这样输入:
s=solve('0.0728146135=((1-x)/x)*(-log(1-x))');
yuyongji 当前离线   回复时引用此帖
旧 2008-03-03, 20:07   #3
lzaaaaaa
初级会员
 
注册日期: 2008-03-03
年龄: 40
帖子: 3
声望力: 0
lzaaaaaa 正向着好的方向发展
默认

嗯,改成小写输出结果就不一样了。
不过help里查log和LOG的结果是一样的呀?
lzaaaaaa 当前离线   回复时引用此帖
旧 2008-03-03, 21:54   #4
shiqiang
高级会员
 
shiqiang 的头像
 
注册日期: 2008-02-26
年龄: 38
帖子: 158
声望力: 25
shiqiang 身上有一圈迷人的光环哦shiqiang 身上有一圈迷人的光环哦shiqiang 身上有一圈迷人的光环哦
默认

>> s=solve('0.0728146135=((1-x)/x)*(-log(1-x))')

s =

.98226116417971909823774069303670
我在我的电脑上运行是正确的,你再检查一下。
shiqiang 当前离线   回复时引用此帖
旧 2008-03-17, 18:13   #5
未注册
游客
 
帖子: n/a
默认 回答

你输入的方程里既有x又有X,你把后面的X换成x就能解出来了。
  回复时引用此帖
旧 2008-03-17, 18:15   #6
未注册
游客
 
帖子: n/a
微笑 回答

你输入的方程有误:
s=solve('0.0728146135=((1-x)/x)*(-LOG(1-X))')

这个方程中有两个变量x和X,你都统一成x就能得到解了。
  回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[分享]MATLAB 主要函数指令表(按功能分类).doc 515825903931 MATLAB论坛 0 2008-04-22 20:12
【求助】寻会PCA的,有报酬,急! maomei MATLAB论坛 0 2008-04-02 15:48
【求助】请问如何创建非随机变量的初始种群 lijelly MATLAB论坛 0 2008-04-01 16:29
【求助】如何在plot画图中输入上下标 Constantine MATLAB论坛 1 2008-01-16 19:02
【讨论】Matlab动态显示的问题讨论 tqr591513792 MATLAB论坛 0 2007-12-20 14:50


所有时间均为北京时间。现在的时间是 11:10


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.