24小时热门版块排行榜    

查看: 706  |  回复: 0

小木虫zb

木虫 (正式写手)

[求助] 不知道matlab程序为什么错了(错误应该存在非线性方程组求解中)

求大神帮忙,我碰到个问题已经苦苦折腾了一个多月了,不知道怎么解决,matlab用线上法求偏微分方程组(对床层高度z离散,将偏微分方程组转换为常微分方程组,然后用ode15s求解),在这个方程组中,有两个参数ce1、ce2需要需要用两个隐函数方程求解带入,下面是我的程序,运行不出,不知道具体错在哪,只知道可能在隐函数方程的编程中有些错误
function DBT_MNA
clear all;clc
c10=1e-10*ones(1,20);q10=zeros(1,20);q20=zeros(1,20);c20=zeros(1,20);
y0=[q10 c10 q20 c20];c0=7.03;
options=odeset('relTol',1e-6);tspan=[0:0.2:20];
[t,y]=ode15s(@fangcheng,tspan,y0,options);
plot(t*7.03,y(:,40)/c0,'ro',t*7.03,y(:,80)/c0,'bo','LineWidth',3);xlabel('Amount of treated MDF(g-MDF/g-AC)'),ylabel('c/c0'),axis([-0.05 120 -0.05 1.05]),
legend('DBT','MNA','Location','best') ,title('DBT+MNA-RS')
grid,hold off
%------------odefun---------------------------------------------
function dydt=fangcheng(t,y)
kf=200;a=0.363;u=0.361032/a;c0=7.03;L=8.31e-2;N=20;dz=L/N;p=436.8/(1-0.363);
q1=y(1:N);c1=y(N+1:2*N);q2=y(2*N+1:3*N);c2=y(3*N+1:4*N);
%-----------定义dq/dt-----------------------------
for j=1:N
   dq1dt(j)=kf/p*(c1(j)-myfun1(q1(j),q2(j)));%两个未知参数调用其他函数求解ce1(j)=myfun1(q1(j),q2(j))
   dq2dt(j)=kf/p*(c2(j)-myfun2(q1(j),q2(j)));%两个未知参数调用其他函数求解ce2(j)=myfun2(q1(j),q2(j))
end
%---------定义dC/dt-----------------------------------
dc1dt(1)=-u*(c1(1)-c0)/dz-(1-a)/a*p*dq1dt(1);
dc2dt(1)=-u*(c2(1)-c0)/dz-(1-a)/a*p*dq2dt(1);
for j=2:N
    dc1dt(j)=-u*(c1(j)-c1(j-1))/dz-(1-a)/a*p*dq1dt(j);
    dc2dt(j)=-u*(c2(j)-c2(j-1))/dz-(1-a)/a*p*dq2dt(j);
end
dydt=[dq1dt dc1dt dq2dt dc2dt]';
%隐函数方程数值求解,隐函数方程为q1=0.45967*ce1^0.3839/(ce1^0.0457+0.3*ce2^0.0003206);
%q2=0.17356*ce2^(-1.55201)/(ce2^(-2)+0.1*ce1^(-1)),下面用x(1)表示ce1,x(2)表示ce2,上面的程序可以确定没错误,下面是可能出现错误的地方

function y1=myfun1(q1,q2)
options=optimset('MaxFunEvals',1e6);
y=fsolve(@(x)fun(x,q1,q2),[0.1,0.01],options);y1=y(1);
function y2=myfun2(q1,q2)
options=optimset('MaxFunEvals',1e6);
y=fsolve(@(x)fun(x,q1,q2),[0.1,0.01],options);y2=y(2);
function y=fun(x,q1,q2)
y(1)=q1-0.45967*x(1)^0.3839/(x(1)^0.0457+0.3*x(2)^0.0003206);
y(2)=q2-0.17356*x(2)^(-1.55201)/(x(2)^(-2)+0.1*x(1)^(-1));
上面是我编的程序,但是运行不出来,不知道错误在哪,希望好心人士帮我看下,这是我之前就该问题在小木虫上的提问http://muchong.com/bbs/viewthread.php?tid=5856359

[ Last edited by 小木虫zb on 2013-5-28 at 22:41 ]
回复此楼

» 猜你喜欢

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

智能机器人

Robot (super robot)

我们都爱小木虫

相关版块跳转 我要订阅楼主 小木虫zb 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 277材料科学与工程080500求调剂 +3 自由煎饼果子 2026-03-16 3/150 2026-03-16 14:10 by 运气yunqi
[考研] 材料专硕306英一数二 +4 z1z2z3879 2026-03-16 4/200 2026-03-16 13:53 by laoshidan
[考研] 304求调剂 +3 ahbd 2026-03-14 3/150 2026-03-16 13:05 by Iveryant
[考研] 321求调剂 +4 大米饭! 2026-03-15 4/200 2026-03-16 08:41 by Linda Hu
[考研] 求老师收留调剂 +4 jiang姜66 2026-03-14 5/250 2026-03-15 20:11 by Winj1e
[考研] 080500,材料学硕302分求调剂学校 +4 初识可乐 2026-03-14 5/250 2026-03-14 21:08 by peike
[基金申请] 面上和青基一样限30页不合理 +5 wowsunflower 2026-03-10 7/350 2026-03-14 17:21 by kingkocxr
[考研] 【0703化学调剂】-一志愿华中师范大学-六级475 +5 Becho359 2026-03-11 5/250 2026-03-14 11:35 by 哦哦123
[考研] 266求调剂 +4 学员97LZgn 2026-03-13 4/200 2026-03-14 08:37 by zhukairuo
[考研] 求调剂 +6 yfihxh 2026-03-09 6/300 2026-03-14 01:18 by JourneyLucky
[考研] 调剂 +3 13853210211 2026-03-10 3/150 2026-03-14 00:47 by JourneyLucky
[考研] 0703,333分求调剂 一志愿郑州大学-物理化学 +3 李魔女斗篷 2026-03-11 3/150 2026-03-13 22:24 by JourneyLucky
[考研] (081700)化学工程与技术-298分求调剂 +12 11啦啦啦 2026-03-11 35/1750 2026-03-13 21:25 by JourneyLucky
[考研] 0703化学求调剂 +7 绿豆芹菜汤 2026-03-12 7/350 2026-03-13 17:25 by njzyff
[考研] 304求调剂(085602一志愿985) +12 化工人999 2026-03-09 12/600 2026-03-13 12:02 by JourneyLucky
[考研] 0817化学工程与技术考研312分调剂 +3 T123 tt 2026-03-12 3/150 2026-03-13 10:49 by houyaoxu
[考研] 化工学硕306求调剂 +9 42838695 2026-03-12 9/450 2026-03-13 10:16 by houyaoxu
[考研] 420求调剂 +4 莫向外求11 2026-03-10 6/300 2026-03-12 14:41 by ruiyingmiao
[考博] 26申博求助 +3 跳跃饼干 2026-03-10 4/200 2026-03-10 21:15 by Tntcnn
[硕博家园] 木虫好像不热闹了,是不是? +4 偏振片 2026-03-10 4/200 2026-03-10 09:51 by longwave
信息提示
请填处理意见