声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1681|回复: 4

[编程技巧] 关于fsolve解超越方程组的问题

[复制链接]
发表于 2009-3-19 14:55 | 显示全部楼层 |阅读模式

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

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

x
超越方程组的大体形式为: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)
发表于 2009-3-20 21:16 | 显示全部楼层

楼主的fsolve是怎么用的 ?

楼主的fsolve是怎么用的 ?
发表于 2009-3-20 21:52 | 显示全部楼层
Optimization terminated应该是可以接受的解了
待高手确认
 楼主| 发表于 2009-3-23 20:31 | 显示全部楼层
请高手确认!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-6-28 05:00 , Processed in 0.054199 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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