怎么在MATLAB程序中求解参数变化的非线性方程组,并返回方程组的解 50

方程:functionF=Area3(canshu)%qijk=8.8;%wh=1.18;%Aijk=0.9;%th_in=451.43;%tc_out=351.1805... 方程:function F=Area3(canshu)
% qijk=8.8;
% wh=1.18;
% Aijk=0.9;
% th_in=451.43;
% tc_out=351.1805;
% ke_ijk=0.1;
th_out=canshu(1);
tc_in=canshu(2);
F(1)=qijk-(wh*(th_in-th_out));
dt1=th_in-tc_out;
dt2=th_out-tc_in;
LMTDijk=(dt1*dt2*(dt1+dt2)/2)^(1/3);
F(2)=Aijk-(qijk/ke_ijk/LMTDijk);
我现在这样写,参数传不进去:
qijk=8.8;
wh=1.18;
Aijk=0.9;
th_in=451.43;
tc_out=351.1805;
ke_ijk=0.1;
x=fsolve('Area3',[400,300],optimset('Display','off'));
a1=x(1);
a2=x(2);
或者不写function方程,直接在主程序中x=fsolve(……),也不知道怎么写
找到了,不让发链接吗 ?www点ilovematlab.cn/thread-40644-1-1.html
展开
 我来答
lhmhz
高粉答主

2017-12-18 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7263 获赞数:17004

向TA提问 私信TA
展开全部

怎么在MATLAB程序中求解参数变化的非线性方程组,并返回方程组的解。可以这样来处理:

1、用已定义的函数文件,即文件名为Area3.m

function F=Area3(canshu)
qijk=8.8;wh=1.18;Aijk=0.9;
th_in=451.43;tc_out=351.1805;
ke_ijk=0.1;
th_out=canshu(1); 
tc_in=canshu(2); 
F(1)=qijk-(wh*(th_in-th_out));
dt1=th_in-tc_out;
dt2=th_out-tc_in;
LMTDijk=(dt1*dt2*(dt1+dt2)/2)^(1/3);
F(2)=Aijk-(qijk/ke_ijk/LMTDijk);

end

2、在命令窗口输入

canshu0=[400,300]  %初值,注意初值变量不能与自变量相同(出错的原因

x=fsolve('Area3',canshu0,optimset('Display','off'));
>> a1=x(1),a2=x(2)

运行结果:a1 =  443.9724;a2 =  348.6387

Sievers分析仪
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准... 点击进入详情页
本回答由Sievers分析仪提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式