24小时热门版块排行榜    

查看: 1065  |  回复: 3
【悬赏金币】回答本帖问题,作者修竹好衰将赠送您 20 个金币

修竹好衰

新虫 (初入文坛)

[求助] 初学用MATLAB求解动力学模型,但是在非线性二乘法处出现问题 ,麻烦各位大神帮忙看看 已有2人参与

出现的问题是:
错误使用 lsqncommon (line 64)
The Levenberg-Marquardt algorithm does not handle bound constraints and the
trust-region-reflective algorithm requires at least as many equations as variables; aborting.

出错 lsqnonlin (line 262)
   lsqncommon(funfcn,xCurrent,lb,ub,options,defaultopt,optimgetFlag,caller,...

出错 kinetic (line 16)
lsqnonlin(@fun,k0,lb,ub,[],yexp);

其中反应数据是引用文件:‘reaction.xls’中每7行为一个反应温度下的各个时间点数据,总共3个温度下的数据,共计21行,已在后面图片里面显示

程序:
clc
clear all;
global a b
tspan=[0 1 3 5 7 9 11]; %各个反应时间点,0h,1h,3h……
yexp=xlsread('reaction.xls') %y的赋值从reaction这个excel文件中调取
k0=[2*10^8 60000 6.75*10^10 72000 3*10^11 90000]; %每个反应速率常数k所对应的A、E,总计6个参数初值设定(正反应、逆反应、副反应)
lb=[0 0 0 0 0 0];
ub=[+inf +inf +inf +inf +inf +inf];
[k,resnorm,residual,exitflag,output,lambda,jacobian]=lsqnonlin(@fun,k0,lb,ub,[],yexp);
%=====================================================================================
function f=fun(k,yexp) %这个就是拟合的目标函数,得到对应最合适的k
f=[];
for i=1:3 %对应三个温度下的数据,
tspan=[0 1 3 5 7 9 11];
a=7*(i-1)+1;
x0=yexp(a,;
[t,x]=ode45(@func,tspan,x0,[],k,i);
d=a+6;
yc1=x(:,1);
yc2=x(:,2);
yc3=x(:,3);
yc4=x(:,4);
f11=yexp(a:d,1)-yc1;
f12=yexp(a:d,2)-yc2;
f13=yexp(a:d,3)-yc3;
f14=yexp(a:d,4)-yc4;
ff=[f11 f12 f13 f14];
f=[f:ff];
end
%=====================================================================================
function dxdt=func(t,x,k,i)
switch i
         case 1
         m=0.6;
         V=0.2431;
         T=303.15;
         case 2
         m=0.6;
         V=0.2448;
         T=313.15;
         case 3
         m=0.6;
         V=0.2491;
         T=323.15;
end
r2=-(k(1)*exp(-k(2)/8.314/T)*x(1)/V*x(2)/V-k(3)*exp(-k(4)/8.314/T)*x(3)/V);
r3=-r2;
r4=k(5)*exp(-k(6)/8.314/T)*x(1)/V*x(1)/V;
r1=r2-2*r4;
dxdt=[m*r1;m*r2;m*r3;m*r4]; %因为这里r的单位是mol/(g min L)所以需要乘以质量
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
微分方程拟合问题,Matlab得不到理想结果得话,换1stOpt试试,更容易实现,效果也更好

» 本帖已获得的红花(最新10朵)

2楼2022-03-05 19:23:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

修竹好衰

新虫 (初入文坛)

送红花一朵
引用回帖:
2楼: Originally posted by dingd at 2022-03-05 19:23:00
微分方程拟合问题,Matlab得不到理想结果得话,换1stOpt试试,更容易实现,效果也更好

非常感谢,之后会去试试1stopt,主要是现在这个程序是别人网上分享的,想照写下来试试能不能运行得到与他相同的结果,然后程序运行出现的这个错误不知道怎么改,想问问
3楼2022-03-06 13:56:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hzlhm

至尊木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
你的问题,可能出现在初值设定上不合理。
QQ:2120156492
4楼2022-03-06 20:23:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 修竹好衰 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +45 医学老男孩 2026-08-13 101/5050 2026-08-18 13:40 by 医学老男孩
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 KZyU1THERRVo 2026-08-18 4/200 2026-08-18 13:28 by vHWVV9D5Deb5
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +13 Ldrop2023 2026-08-13 16/800 2026-08-18 12:25 by 淀粉搬运工
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 8/400 2026-08-18 11:47 by gltch
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +4 Tide man 2026-08-14 5/250 2026-08-18 11:35 by Tide man
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 5/250 2026-08-18 11:25 by 無關想念
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] filecode=后面第一个是大写字母 +8 wangze12014 2026-08-14 10/500 2026-08-17 17:05 by xter9665
[基金申请] 今天系统多次维护,明天很可能放榜! +8 zju2000 2026-08-16 9/450 2026-08-17 12:20 by lmz0216
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
信息提示
请填处理意见