登录论坛

查看完整版本 : [求助]solve命令


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

请教了:是方程的编写出错了? :sweat: 还是其他呢?

yuyongji
2008-02-21, 10:36
我认为应该这样输入:
s=solve('0.0728146135=((1-x)/x)*(-log(1-x))');

lzaaaaaa
2008-03-03, 20:07
嗯,改成小写输出结果就不一样了。
不过help里查log和LOG的结果是一样的呀?

shiqiang
2008-03-03, 21:54
>> s=solve('0.0728146135=((1-x)/x)*(-log(1-x))')

s =

.98226116417971909823774069303670
我在我的电脑上运行是正确的,你再检查一下。

未注册
2008-03-17, 18:13
你输入的方程里既有x又有X,你把后面的X换成x就能解出来了。

未注册
2008-03-17, 18:15
你输入的方程有误:
s=solve('0.0728146135=((1-x)/x)*(-LOG(1-X))')

这个方程中有两个变量x和X,你都统一成x就能得到解了。