第二章实验数据的处理及模型参数的确定.ppt
第二章 实验数据的处理及模型参数的确定,引言:1.问题的提出,从实验数据确定函数关系式,以预测任意x值时的函数y值,例:298K时,SbH3在Sb上的分解的数据如下:,数学模型中各参数的确定,例:镍硅藻土上苯加氢合成环己烷是表面反应控制的固体催化剂上的气相反应。在160oC,微分反应器中的初始反应速率方程为,模型参数 ka表观速率常数 bHH2的吸附系数 bB C6H6的吸附系数,利用实验得到的全部信息,确定数学模型中的待定参数,线性插值 Lagrange插值 埃米尔特插值,一元线性回归 线性模型的推广 多元回归 可化为多元线性回归的问题 多项式拟合简介 逐次回归分析,函数关系,插值法,回归分析,相关关系,数值微分,引言:2.常用的数学方法,例:72型分光光度计测得某试样的吸收值如下:,2-1-11 线性插值问题的提出,希望:根据给定的函数表作一个既能反应f(x)的特性,又便 于计算的简单函数p(x),用p(x)近似f(x),计算出任意 x对应的y值,求在435,445,455,465,475nm处的吸收值。,定义:设y=f(x)在区间a,b上有意义,且已知在点ax0 x1xnb上的值y0,y1,yn,若存在一简单函数pn(x),使 pn(xi)=yi(i=0,1,n)成立,则称pn(x)为 f(x)的插值函数,x0,x1,xn为插值节点区间a,b为插值区间,求pn(x)的方法称为插值法,y=f(x),y=p(x),x1,y1,xn,yn,几何意义:,2-1-1 2 线性插值方法原理,a,b,线性插值原理:,两点间直线方程:,y=f(x),y=p(x),xi-1,yi-1,xi,yi,2-1-1 2 线性插值方法原理,分段线性插值:,实验点个数为n时,求插值结点 x的函数值。首先确定x在哪两点间,2-1-1 2 线性插值方法原理,LINEPLOT(N,X,Y,X0,Y0),DO J=1,N-1,J1=J+1,X0=X(J1),CONTINUE,J=J-1,T=(X0-X(J)/(x(J1)-x(J)Y0=Y(J)+T*(Y(J1)-Y(J),RETURN,no,yes,2-1-13 线性插值程序框图,开始,输入:数据点X(I),Y(I),未知点X0,调用线性插值子程序求未知点X0对应的函数值Y0,输出:X0,Y0值,结束,2-1-14 线性插值应用示例,显示程序显示输入显示输出,2-1-2-1 一元三点Lagrange插值问题的提出,例:计算乙醇的平均摩尔体积,实验测得25时乙醇溶液的平均摩尔体积(cm2mol-1)与乙醇的物质的量分数的关系如下,计算x=0.1,0.2,0.3,0.4时的。,线性插值公式:二点(xi-1,yi-1),(xi,yi),(两点式),Lagrange插值(三点插值,抛物线插值):xi-1 xi xi+1,即,2-1-2-2 一元三点Lagrange插值方法原理,y=f(x),y=p(x),xi-1,yi-1,xi+1,yi+1,xi,yi,编程难点:如何确定使用哪三个结点进行插值,xj-1,xj+1,xj,xj-2,xj+2,2-1-2-2 一元三点Lagrange插值方法原理,LGRG2(X,Y,N,T,Z),Do J=3,N-1,I=J,TX(I),CONTINUE,P=(T-X(I)*(T-X(I+1)/(X(I-1)-X(I)/(X(I-1)-X(I+1)Q=(T-X(I-1)*(T-X(I+1)/(X(I)-X(I-1)/(X(I)-X(I+1)R=(T-X(I-1)*(T-X(I)/(X(I+1)-X(I-1)/(X(I+1)-X(I)Z=P*Y(I-1)+Q*Y(I)+R*Y(I+1),RETURN,no,yes,I=I-1,|T-X(I-1)|=|T-X(I)|,yes,no,2-1-2-3 一元三点Lagrange插值程序框图,开始,输入:数据点X(I),Y(I),未知点X0,调用lagrange插值子程序求未知点X0对应的函数值Y0,输出:X0,Y0值,结束,2-1-2-4 一元三点Lagrange插值应用示例,显示程序显示输入显示输出,2-2-1-1 一元线性回归问题的提出,例:铜钼矿中钼对铜含量的线性依赖关系,一元线性回归的数学模型:,y=ax+b+,yi=axi+b+i,n个实验点,回归直线:,y=ax+b,残差:,i=yi-(axi+b),最小二乘法:,第i点残差:,i=yi-(axi+b),当残差的平方和为最小时,对应的a、b值是最佳值。,(正规方程组),2-2-1-2 一元线性回归方法原理,令,平均值,离差平方和,2-2-1-2 一元线性回归方法原理,1.线性相关系数R衡量回归方程式与数据相符合的程度。若R1,则数据点落在直线上。,注意:,2.加权最小二乘法,3.剔除可疑数据,2-2-1-2 一元线性回归方法原理,PK(N,X,Y,A,B,R),SX,SY,SXX,SXY,SYY=0,Do I=1,N,X1=X(I),Y1=Y(I),SX=SX+X1,SY=SY+Y1SXX=SXX+X1*X1SYY=SYY+Y1*Y1,SXY=SXY+X1,LXX=SXX-SX*SX/n,LYY=SYY-SY*SY/n,LXY=SXY-SY*SX/N,B=LXY/LXX,A=(SY-B*SX)/N,R=LXY/SQRT(LXX*LYY),RETURN,2-2-1-3 一元线性回归程序框图,开始,输入:数据点数N 铜与钼的实验数据X(I),Y(I)(I=1,N),调用一元线性回归子程序计算A,B,R,输出:A,B,R,结束,2-2-1-4 一元线性回归应用示例,显示程序显示输入显示输出,2-2-2-1 线性模型的推广方法原理,变量x与y之间存在某种非线性关系,确定曲线类型(非线性关系),实际经验,散点图形状,线性关系,最小二乘法确定系数,非线性关系,曲线类型及变换公式,双曲线型,幂指数型,指数型,S型,对数型,平方根曲线,2-2-2-1 线性模型的推广方法原理,例1:Arrhenius公式的应用,根据k和T数据,可确定指前因子A和活化能Ea。,2-2-2-2 线性模型的推广应用示例,例2:Clausius-Clapryron方程式的应用,纯组分气-液(气-固)两相平衡的方程式:,上式中:p:T/K时液(固)饱和蒸气压;H:相变热,不定积分:,测定不同温度下的饱和蒸气压,将lnp1/T进行线性回归,可算出H,并计算其它温度下的蒸气压,2-2-2-2 线性模型的推广应用示例,开始,输入:数据点数N 温度T与蒸气压p的实验数据T(I),P(I)(I=1,N),输出:A,B,H,Ti,pi,结束,调用线性回归子程序计算A,B(相变热H=-8.314E-3*B),T(I)=T(I)+273.15X(I)=1/T(I)Y(I)=lnP(I)(I=1,N),计算其它温度Ti下的蒸气压pi,2-2-2-2 线性模型的推广应用示例,例3:几种常用的吸附等温式的计算(气固吸附),2-2-2-2 线性模型的推广应用示例,Freundlich经验式:,Langmuir方程:,B.E.T.方程:,2-2-3-1多元线性回归方法原理,数学模型:函数y与多个自变量间x1,x2,xm的线性相关关系,设共进行了n次测定(i=1,2,n)的自变量取值分别为xi1,xi2,xim,函数值的测定值为yi,所得的值如表:,选择回归系数,以使残差的平方和最小,即,残差,残差的平方和Q,残差的平方和最小,相当于求解以下方程组,(i=1,2,n),(k=,0,1,m),最小二乘法,2-2-3-1多元线性回归方法原理,正规方程组:,全相关系数R,式中,(m+1)元线性方程组,Guass消去法求解b0,b1,bm,2-2-3-1多元线性回归方法原理,MLR(M,N,XV,S,B0,R),输入:X(I,J)I=1,2,N J=1,2,M+1,CALL GS(A,M,M1,EPS),RETURN,程序框图,DO I=1,M A(I,I)=1.0 DO J=I+1,M1 A(I,J)=0DO K=1,N A(I,J)=A(I,J)+X(K,I)*X(K,J)DO I=1,M-1 J=I+1,M A(J,I)=A(I,J),2-2-3-2 多元线性回归,变量xi(i=1,2,m)与y之间存在某种非线性关系,确定曲线类型(非线性关系),实际经验,散点图形状,线性关系,最小二乘法确定系数,非线性关系,2-2-3-3 多元线性回归可化为多元线性回归的问题,变量代换,变量代换,2-2-3-3 多元线性回归可化为多元线性回归的问题,例1:Antoine方程式的应用,(p:蒸气压,T:温度),令Tlgp=y,T=x1,lgp=x2,b0=ac+b,b1=a,b2=c,2-2-3-4 多元线性回归应用示例,例2:用镍硅藻土作催化剂,苯加氢合成环己烷。用微分反应器测定和分析得到160oC的初始反应速率以及相应的氢和苯的分压值pH/kPa,pB/Kpa和r0/(mol/Kgh)的数据,初始反应速率方程为:,请利用上述实验数据拟合出参数ka、bH及bB。,pH,pH,pB,pB,r0,r0,2-2-3-4 多元线性回归应用示例,实验测得pH,pB和r0数据,取倒数,移项,开1/4方,(线性化),2-2-3-4 多元线性回归应用示例,开始,输入:自变量个数M,数据点个数 N,反应温度T,气体分压pH,pB,R0的实验数据X(I,j),输出:bH、bB和k,结束,调用多元线性回归子程序计算B0,B1和B2,M1=M+1,X1(I,j)X(I,j)X1(I,M1)DSQRT(DSQRT(X(I,1)*3*X(I,2)/X(I,M1))(I=1,N)X(I,J)=X1(I,J)(I=1,N,J=1,M1),计算:bH=A(1,M1)/B0;bB=A(2,M1)/B0;k=1/(B0*4)*(KH*3)*KB),显示程序 显示输入 显示输出,2-2-3-4 多元线性回归 应用示例,例3:化学反应动力学方程的总级数n,化学反应速率方程,式中:ka反应表观速率常数;pA,pB 和pC参加反应各气体A,B和C的气相分压;,和参加反应各物质在化学反应速率方程中的分级数。,此反应的总级数n=+,取对数,n=+,(线性化),2-2-3-4 多元线性回归应用示例,开始,输入:数据点数N,反应温度T,气体分压p的实验数据,pa(I),pb(I),pc(I)(I=1,N),输出:n,ka,和,结束,调用多元线性回归子程序计算ka,和,X1(I)=ln(pa(I),x2(I)=ln(pb(I),x3(I)=ln(pb(I)Y(I)=lnv(I)(I=1,N),计算反应的总级数n=+,2-2-3-4 多元线性回归 应用示例,例4 分子结构-性能的多元线性回归,Hammet方程:苯环上间位或对位取代基对反应速率的影响,式中:k反应速率常数 k0未取代时母体的反应速率常数反映取代基电子效应的结构常数与反应类型有关的结构常数,2-2-3-4 多元线性回归应用示例,推广:考虑其他多种因素对分子性能的影响,分子具有的性质:“应答”,具有特定功能的结构参数,反映取代基亲油/亲水能力E反映取代基的空间效应,肾上腺阻断剂:N-N-二甲基-2-溴苯乙胺衍生物,结构性能之间的关系数学模型:,2-2-3-4 多元线性回归应用示例,2-2-4 多项式拟合简介方法原理,数学模型:,残差的平方和Q,残差的平方和最小,相当于求解以下方程组,最小二乘法,2-3-1 数值微分问题的提出,实验测定的一批离散点,有化学反应 aA产物,化学反应速率方程:,在恒容反应中,化学反应速率r可用反应物A浓度随时间变化率来表示,式中,dcA/dt即为反应物A的浓度cA时间t曲线上某点的斜率,数学上若cAt是连续单值函数,则dcA/dt是在t点的一阶导数。,t2,cA2,2-3-1 数值微分问题的提出,cA1,t1,2-3-2 数值微分方法原理,在微积分中,函数的导数是通过极限来定义的,有完整的计算方法。而在实际工作中,常常需要求列表函数在节点和非节点处的导数值,这就是数值微分要解决的问题。化学化工中有不少实际问题都需用数值微分求导来解决。,2-3-2 数值微分方法原理,设有若干等距离的节点,欲求节点处的一阶导数,可用差商代替微商进行计算,考虑函数f(x)在点(x0+h)处的泰勒展开式,(向前差商式)CB,(向后差商式)AC,(中心差商式)AB,x0-h,x0,x0+h,A,B,C,yf(x),中心差商定义:,(1),若有函数y=f(t),按等间隔在s个t点(t1,t2,ts-1,ts)测出相应的y值(y1,y2,ys),除两端t1与ts以外,任意点的导数yi=f(ti)可按下式计算:,(2),(i=2,3,s-1),若yf(x)为连续有界单值函数,客观存在在x点的一阶导数,可用较为精确的“中心差商”来计算:,用插值法求,2-3-2 数值微分方法原理,两端点的导数值用以下两式计算:,(3),(4),式中t是独立变量t的间隔。,:用插值法求,2-3-2 数值微分方法原理,CF(N,X,Y,H,R),T=X(1)+H,调用插值子程序计算F,YA=F,T=X(1)+2H,调用插值子程序计算F,YB=F,W=2,T=X(W)-H,R(1)=4YA-3Y(1)-YB/2H,A,B,A,B,调用插值子程序计算F,YA=F,T=X(W)+h,调用插值子程序计算F,YB=F,R(W)=YA-YB/2H,W=W+1,WN-1,no,yes,T=X(N)-H,c,c,调用插值子程序计算F,YA=F,T=X(N)-2H,调用插值子程序计算F,YB=F,R(N)=3Y(N)-4YA+YB/2H,RETURN,2-3-3 数值微分程序框图,2-3-4 数值微分应用示例,某抗菌素在人体血液中分解呈现简单级数反应,如果给病人在上午8点注射一针抗菌素(A),然后在不同时刻t测定抗菌素(A)在血液中的浓度cA(以mgL-1表示),得到如下数据:,求抗菌素(A)的消耗速率方程的反应级数和速率常数。(设抗菌素(A)的消耗速率方程为:),微分法确定化学反应动力学方程式,化学反应速率方程:,上式中,v为化学反应速率,c为反应物浓度,t 为时间,k为反应速率常数,dc/dt为反应物浓度随时间的 变化率。,上式两边取对数:,令,将实验所测得不同时间t的反应物浓度c数据通过插值和差分法求出反应速率v。计算lnv和lnc后,用线性回归子程序计算反应级数n和反应速率常数k。,2-3-4 数值微分应用示例,开始,输入:数据点数N,反应温度TO,时间间隔H 时间t与浓度c的实验数据T(I),C(I)(I=1,N),调用中心差分子程序计算反应速率R(W)(dc/dt),输出:A,B,S,KS,结束,调用线性回归子程序计算A,B(反应级数S=B,速率常数KS=EXP(A)),X(I)=T(I),Y(I)=C(I)(I=1,N),X(I)=lnT(I),Y(I)=ln-R(I)(I=1,N),显示程序 显示输出,2-3-4 数值微分应用示例,利用电动势的实验数据,可按下列各式计算电池反应的热力学函数的增量:,以上各式中 为电动势的温度系数,n为电池反应转移的电子数,F为Faraday常数。,当拥有几个温度下电动势的实验值时,用一元三点不等距插值法和中心差分法,计算所需温度下的电动势的温度系数。再代入上式中计算电池反应的热力学函数的增量。,2-3-4 数值微分应用示例,开始,输入:数据点数N 电池反应转移电子数NN 温度T与电动势E的实验数据X(N),Y(N)所要计算的温度TO,调用Lagrange一元三点插值、中心差分子程序计算指定温度下的温度系数dE/dT,输出:TO,dE/dT,DG,DH,DS,结束,计算:指定温度下的电池反应的热力学函数的增量DG,DH,DS,2-3-4 数值微分应用示例,