声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2116|回复: 3

[分形与混沌] 非线性方程组的求解?

[复制链接]
发表于 2006-12-8 14:04 | 显示全部楼层 |阅读模式

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

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

x
碰到如下一个方程组?不知道如何求解。
哪位高人指点一下
是不是可以用MATLAB的优化工具箱?

[ 本帖最后由 xinyuxf 于 2006-12-23 09:49 编辑 ]
回复
分享到:

使用道具 举报

发表于 2006-12-8 14:42 | 显示全部楼层

转贴:变参数非线性方程组的求解!

转贴:变参数非线性方程组的求解!


变参数非线性方程组的求解!

对于求解非线性方程组一般用fsolve命令就可以了,但是对于方程组中某一系数是变化的,该怎么求呢?

%定义方程组如下,其中k为变量
function F = myfun(x,k)
H=0.32;
Pc0=0.23;W=0.18;
F=[Pc0+H*(1+1.5*(x(1)/W-1)-0.5*(x(1)/W-1)^3)-x(2);
    x(1)-k*sqrt(x(2))];

%求解过程
H=0.32;
Pc0=0.23;W=0.18;
x0 = [2*W; Pc0+2*H];           % 取初值
options = optimset('Display','off');
k=0:0.01:1;             % 变量取值范围[0 1]
for i=1:1:length(k)
kk=k(i);                        
x = fsolve(@(x) myfun(x,kk), x0, options);%求解非线性方程组
x1(i)=x(1);
x2(i)=x(2);
end
plot(k,x1,'-b',k,x2,'-r');
xlabel('k')
legend('x1','x2')

希望你可以参考一下。
发表于 2006-12-8 20:35 | 显示全部楼层
原帖由 pengweicai 于 2006-12-8 14:42 发表
对于求解非线性方程组一般用fsolve命令就可以了,...

对于这种复杂多元非线性方程组,个人认为不宜采用fsolve的数值解,因为这会出现丢根的情况,并且不容易找到丢的根.
我觉得你可以用MATLAB的符号解,即求出相应的符号根,再赋以数值代入.
不过,由(3),(4)求出sin(γ),cos(γ)代入式(1),(2),将(1)(2)平方相加,(3)(4)平方相加,
然后求a1,a2的符号解,继而求解方程组的解.

顺便问一下楼主,该方程组是不是由非线性动力学方程组转化而来?是采用什么方法,研究对象是什么?
多谢解答.

[ 本帖最后由 zcf1976 于 2006-12-8 20:41 编辑 ]
发表于 2006-12-15 12:40 | 显示全部楼层

最简单的就是消元求解

消元求解
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-5-17 18:12 , Processed in 0.056843 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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