工程应用数学作业.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
工程应用数学作业

题目:利用lsqcurvefit与lsqnonlin 两种最优化方法分别通过积分法与微分法来进行动力学方程的估计,并对两种最优化方法进行比较。 微分方程为: — 积分法 function KineticsEst1_int % 动力学参数辨识: 用积分法进行反应速率分析得到速率常数k和反应级数n % Analysis of kinetic rate data by using the integral method % Reaction of the type -- rate = kCA^order % order - reaction order % rate -- reaction rate vector % CA -- concentration vector for reactant A % T -- vector of reaction time % N -- number of data points % k- reacion rate constant Lsqnonlin积分法程序如下: clear all clc global CAm t = [0 20 40 60 120 180 300]; CAm = [10 8 6 5 3 2 1]; % 非线性拟合 beta0 = [0.0053 1.39]; tspan = [0 20 40 60 120 180 300]; CA0 = 10; [beta,resnorm,resid,exitflag,output,lambda,jacobian] = ... lsqnonlin(@OptObjFunc,beta0,[],[],[],tspan,CA0,CAm) ci = nlparci(beta,resid,jacobian) % 拟合效果图(实验与拟合的比较) [t4plot CA4plot] = ode45(@KineticsEqs,[tspan(1) tspan(end)],CA0,[],beta); plot(t,CAm,bo,t4plot,CA4plot,k-) legend(Exp,Model) xlabel(时间t, s) ylabel(浓度C_A, mol/L) % 残差关于拟合值的残差图 [t CAc] = ode45(@KineticsEqs,tspan,CA0,[],beta); figure plot(CAc,resid,*) xlabel(浓度拟合值(mol/L)) ylabel(残差R (mol/L)) refline(0,0) % 参数辨识结果 fprintf(Estimated Parameters:\n) fprintf(\tk = %.4f ± %.4f\n,beta(1),ci(1,2)-beta(1)) fprintf(\tn = %.2f ± %.2f\n,beta(2),ci(2,2)-beta(2)) % ------------------------------------------------------------------ function f = OptObjFunc(beta,tspan,CA0,CAm) [t CAc] = ode45(@KineticsEqs,tspan,CA0,[],beta); f = CAc - CAm; % ------------------------------------------------------------------ function dCAdt = KineticsEqs(t,CA,beta) dCAdt = -beta(1)*CA^beta(2); % k = beta(1), n = beta(2) dCAdt = -beta(1)*CA^beta(2); % k = beta(1), n = beta(2) Optimization terminated: relative function value changing by less than OPTIONS.TolFun. beta = 0.0047 1.4555 resnorm = 0.0941 resid = 0 -0.2408 0.1813 0.0303 -0.0169 -0.0435 0.0131 exitflag = 3 output = firstorderopt: 0.0041 iteratio

文档评论(0)

zilaiye + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档