主题:求助matlab微分方程组参数拟合
小弟现有实验数据如下: t T y2 y3 y4 y1 0.37 498 0.0197 0.0016 0.0002 0.9785 0.45 498 0.0257 0.0022 0.0003 0.9718 0.56 498 0.0286 0.0022 0.0004 0.9688 0.75 498 0.0451 0.0043 0.0003 0.9503 1.12 498 0.055 0.0055 0.0006 0.9389 2.25 498 0.0988 0.0104 0.0008 0.89 0.36 523 0.0818 0.0105 0.0007 0.9069 0.43 523 0.1001 0.0143 0.001 0.8845 0.54 523 0.1074 0.0143 0.001 0.8772 0.71 523 0.1672 0.0269 0.002 0.8037 1.07 523 0.1852 0.0316 0.0024 0.7805 2.14 523 0.3183 0.0698 0.0057 0.6054 0.34 543 0.163 0.0244 0.0018 0.8106 0.41 543 0.1876 0.0323 0.0032 0.7766 0.52 543 0.2089 0.037 0.0037 0.7501 0.69 543 0.2526 0.0478 0.0043 0.6949 1.03 543 0.3247 0.0763 0.0091 0.5889 2.06 543 0.4327 0.1413 0.0239 0.3993 0.34 553 0.2748 0.0641 0.0103 0.6499 0.4 553 0.2944 0.077 0.0181 0.6093 0.51 553 0.3159 0.0826 0.014 0.5862 0.67 553 0.3984 0.1261 0.0305 0.4424 1.01 553 0.4227 0.144 0.0417 0.3883 2.02 553 0.4741 0.2162 0.093 0.2096 0.33 573 0.3994 0.1327 0.0536 0.4115 0.39 573 0.4149 0.1388 0.0716 0.3714 0.49 573 0.4132 0.1506 0.0747 0.3576 0.65 573 0.4383 0.184 0.123 0.2489 0.98 573 0.4356 0.1928 0.1566 0.2086 1.95 573 0.3544 0.197 0.3287 0.1098 其中t是时间 T是温度 y1,y2,y3,y4是四种物质的摩尔分数 微分方程组: dy1/dt=-Km*y(1)+Km/Kcm*y(2); dy2/dt=Km*y(1)-Km/Kcm*y(2)-Kd*y(2)+Kd/Kcd*y(3); dy3/dt=Kd*y(2)-Kd/Kcd*y(3)-Kc*y(3); dy4/dt=Kc*y(3); 其中: R=8.314; T0=630.15 Kcm=3.7 Kcd=0.5Kom,Kod,Koc,Em,Ed,Ec为未知参数 Km=Kom*exp((-Em/R)*(1/T-1/To)); Kd=Kod*exp((-Ed/R)*(1/T-1/To)); Kc=Koc*exp((-Ec/R)*(1/T-1/To)); 每个温度下初值都是t=0时y0=[1 0 0 0], Kom=k(1); Kod=k(2); Koc=k(3); Em=k(4); Ed=k(5); Ec=k(6); k0=[51.00 37.58 16.53 29940 27560 35560 ] 小弟只会用同一温度下的数据(如498K的六组数据)用matlab软件进行拟合,而不会用所有的数据拟合,求高手帮忙编个程序能用所有的数据进行拟合,也可以给个思路 ,让小弟知道该怎么实现。小弟也没有高版本的1stopt软件。小弟比较着急,先谢过了。 |