声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 939|回复: 6

[编程技巧] 如何求解有30个变量的非线性方程组(30个方程)

[复制链接]
发表于 2007-11-15 11:26 | 显示全部楼层 |阅读模式

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

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

x
有30个变量的非线性方程组(30个方程),有什么方法求解?
我用matlab的fsolve求解,要给30个变量初值,误差大,不收敛,怎么办?

[ 本帖最后由 eight 于 2007-11-15 11:36 编辑 ]
回复
分享到:

使用道具 举报

发表于 2007-11-15 20:17 | 显示全部楼层
试一下1stOpt!
 楼主| 发表于 2007-11-16 22:39 | 显示全部楼层
对非线性方程的组求解没接触过,不会用1stOpt,可否给出一两个事例?
发表于 2007-11-16 23:14 | 显示全部楼层
本论坛搜一下吧,有不少相关帖子。
 楼主| 发表于 2007-11-18 12:54 | 显示全部楼层

回复 #4 dingd 的帖子

1stOpt确实牛,很快可以找到收敛的解,但是,不是我想要的解,是一组平凡解.是否可以对方程组加入约束条件?
我试图在找最小值的优化方法中加入约束条件,却找不到解,还不如直接求解方程组.还有什么好的方法,对解进行约束?
发表于 2007-11-18 18:44 | 显示全部楼层
如果知道范围,直接加上约束就行了,如:
Parameter x1[1,10], x2[6,9],x3[20,90];
发表于 2007-11-20 09:45 | 显示全部楼层

回复 #5 shawn007 的帖子

加约束可以用优化的方法求解。matlab中提供了很多优化算法,你可以看一下fminxmax
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-18 14:39 , Processed in 0.059159 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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