24小时热门版块排行榜    

查看: 2753  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

lgycjpcqu

金虫 (正式写手)

[求助] 求助 MATLAB解方程组-fslove

求解x,y,z的数值,我用MATLAB 的fslove函数求解,解出来结果为
>> x=fsolve(@myfun1,[0.8 0.9 0.05],optimset('Display','off'))
x =
   0.800000000000194   0.900000000000932   0.050000000000305
这个结果似乎就是在初始值附件变动了一下,我改变初始值,结果也发生变化,是不是解法有问题,下面是我写的程序
function q=myfun1(p)
K1=10^(-12.43);
K2=10^(19.4);
K3=5.6*10^(-20);
Ccu=0.24;
Coh=0.75;
Csa=0.26;
x(1)=p(1);
x(2)=p(2);
x(3)=p(3);
q(1)=((1/Coh)*(x(1)/((1-x(1)-x(2))*(1-x(1)-3*x(2)-2*x(3)))))-K1;
q(2)=((1/(Csa*Coh^3))*(x(2)/((1-x(2)-x(3))*(1-x(1)-x(2))*(1-x(1)-3*x(2)-2*x(3))^3)))-K2;
q(3)=(Ccu*Coh^2*(1-x(2)-x(3))*(1-x(1)-3*x(2)-2*x(3))^2)-K3;
%x=fsolve(@myfun1,[0.8 0.9 0.05],optimset('Display','off'));
要是该方程解出来就是这个这个结果,就说明我方程有问题,我就去重新考虑数学模型,现在求高手帮忙看看这些方程的求解是否有问题,多谢!或者哪位高手能够有其它方法准确的求解这个方程,还请指点一下。

方程组及参数

[ Last edited by lgycjpcqu on 2012-7-16 at 16:13 ]
回复此楼

» 本帖@通知

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lgycjpcqu

金虫 (正式写手)

引用回帖:
2楼: Originally posted by zt_chem at 2012-07-16 17:00:58
非线性方程组求值时,求解结果与初值有关

但是每次求解的结果只在初始值附近波动一个极小的数值,这样正常吗?而且一直随初始值改变,如何确定哪一个是方程的解?我水平比较低,还望您给详细解释下,谢谢!
3楼2012-07-16 17:34:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lgycjpcqu 的主题更新
信息提示
请填处理意见