代码如下: ta = 4.05756866; syms x fc = exp( -( (-log(x))^ta )^( 1/ta ) ) == 0.999; sf = solve(fc,x) 点击运行之后,一直是运行状态,没有结果,死循环,什么原因呢? 返回小木虫查看更多
你的错误是solve函数内的表达式有错误。应该这样来求解 ta = 4.05756866; syms x fc = exp(-((-log(x))^ta)^(1/ta)) ; sf = solve(fc== 0.999) 123.jpg
没有循环哪来死循环呢?你的这个方程只有一个未知数,为何不试试数值方法呢?
首先感谢您的指点。。
这个方程不是固定的,这只是取极值时的特殊情况,但是这种情况下,solve 也是死循环
你的错误是solve函数内的表达式有错误。应该这样来求解
ta = 4.05756866;
syms x
fc = exp(-((-log(x))^ta)^(1/ta)) ;
sf = solve(fc== 0.999)
123.jpg
首先感谢您的指点。。仍有两个问题敬请赐教:
(1)这个方程是有实数解析解的,但 solve 没给出。
(2)我按照您给的代码复制粘贴,但在我的计算机上仍然是死循环状态,没有结果。不知道是不是系统设置的问题
,
更正一下我刚才的回复中的第二个问题:按照您的代码,方程可以给出复数解,但是运行时间偏长
没有循环哪来死循环呢?你的这个方程只有一个未知数,为何不试试数值方法呢?