Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2009-09-29, 12:39   #1
abxyz06
初级会员
 
注册日期: 2009-09-29
帖子: 2
声望力: 0
abxyz06 正向着好的方向发展
默认 【求助】各位大虾,帮忙解一个三元方程,谢谢了

对matlab不熟悉,由于临时需要做一个方程组的求解才开始接触这个软件。方程组如下图,我解出结果后,将结果代回原先的方程组,方程两边却不相等。不知道为什么。
有哪位大虾能帮忙解一下这个方程组,最好能给出matlab代码,非常感谢~~~

下面是我编写的m文件,其中x(1),x(2),x(3)分别对应上图中的R1、R2、R3:
function Test
clc
clear

options=optimset('Display','off');
options.TolFun=1e-30;
options.TolX=1e-16;

x0=[0.4;0.4;0.4]; %初值
[x,fval]=fsolve(@mf,x0,options)


function F=mf(x)
b0=0.611553; b1=1.746500; b2=1.860016; u = 6;
F = [1.0/(x(1)*x(2)*x(3))-b0;1.0/(x(1)*x(2))+(2-u)/(x(1)*x(3))+(3-u)/(x(2)*x(3))-b1;2.0/x(2)+(2-u)/x(3)+1.0/x(1)-b2];


得出的结果:
x =

0.7567
1.2281
11.1929


fval =

-0.5154
-1.3610
0.7326


可以看出,这三个x如果代回到第一个方程中,方程两边根本就不相等,而且差很多。
另外,不明白这个fval代表什么意思,是做什么的。

希望各位大虾帮帮忙解一下这个方程,再次感谢~~~
上传的图像
文件类型: gif 公式2.gif (4.9 KB, 18 次查看)
abxyz06 当前离线   回复时引用此帖
 

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 15:51


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.