小妮妮 发表于 2009-3-19 14:55

关于fsolve解超越方程组的问题

超越方程组的大体形式为:x= J/(2*w)*tanh(w/(2*k*t)),其中J=5*x +8*x^3,未知数为x,具体方程的形式很复杂,在这里只给出大概的方程形式,而且实际求解的是迭代形式的方程组。
我用fsolve求解方程组,但是屏幕上出现:
Maximum number of function evaluations exceeded;
increase options.MaxFunEvals
Maximum number of iterations exceeded;
increase options.MaxIter
增大了相应的值后,求解的速度变慢,又出现
Optimization terminated: relative function value changing by less
than max(options.TolFun^2,eps) and sum-of-squares of function
values is less than sqrt(options.TolFun
方程的返回值fval =
1.0e-015 *
-0.111022302462516-0.006938893903907
exitflag =3
看返回的结果似乎是正确的解,但屏幕上出现Optimization terminated:这样情况得到的解是正确的解么,要不是正确的解该如何处理才能得到正确的解么?

小妮妮 发表于 2009-3-19 14:57

补充:
方程中w=sqrt(1+J^2)

Pole 发表于 2009-3-20 21:16

楼主的fsolve是怎么用的 ?

楼主的fsolve是怎么用的 ?

ChaChing 发表于 2009-3-20 21:52

Optimization terminated应该是可以接受的解了
待高手确认

小妮妮 发表于 2009-3-23 20:31

请高手确认!
页: [1]
查看完整版本: 关于fsolve解超越方程组的问题