当前位置:首页 > 2012年第九届苏北数学建模联赛模拟题
37.0922 程序:
clc,clear
x0=[50.7 75.5 65.6 60 74.4 60.9 63 63.1 63 50.7]; n=length(x0);
lamda=x0(1:n-1)./x0(2:n) %计算级比 range=minmax(lamda) %计算级比的范围 x1=cumsum(x0);%累加运算 for i=2:n
z(i)=0.5*(x1(i)+x1(i-1)); end
B=[-z(2:n)',ones(n-1,1)]; Y=x0(2:n)';
u=B\\Y %拟合参数u(1)=a,u(2)=b
x=dsolve('Dx+a*x=b','x(0)=x0');%求微分方程的符号解
x=subs(x,{'a','b','x0'},{u(1),u(2),x0(1)});%代入估计参数值和初始值
yuce1=subs(x,'t',[0:n-1]);%求已知数据的预测值
digits(6),y=vpa(x) %为提高预测精度,先计算预测值,再显示微分方程的解 yuce=[x0(1),diff(yuce1)] epsilon=x0-yuce %计算残差
delta=abs(epsilon./x0) %计算相对误差
rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda %计算级比偏差值
程序2第二产业煤炭消费量
Y=[18117.6 28726.5 41798 46175.7 64356.4 84065.7 104570 125350.2 148290.6] ; B=[-13416.05 1 -23422.05 1 -35262.25 1 -43986.85 1 -55266.05 1 -74211.05 1 -94317.85 1 -114960.1 1 -136820.4 1]; U=inv(B'*B)*B'*Y U =
32
1.0e+003 *
-0.0011 3.6892
程序:clc,clear
x0=[8714.5 18117.6 28726.5 41798 46175.7 64356.4 84065.7 104570 125350.2 148290.6]; n=length(x0);
lamda=x0(1:n-1)./x0(2:n) %计算级比 range=minmax(lamda) %计算级比的范围 x1=cumsum(x0);%累加运算 for i=2:n
z(i)=0.5*(x1(i)+x1(i-1)); end
B=[-z(2:n)',ones(n-1,1)]; Y=x0(2:n)';
u=B\\Y %拟合参数u(1)=a,u(2)=b
x=dsolve('Dx+a*x=b','x(0)=x0');%求微分方程的符号解
x=subs(x,{'a','b','x0'},{u(1),u(2),x0(1)});%代入估计参数值和初始值
yuce1=subs(x,'t',[0:n-1]) %求已知数据的预测值
digits(6),y=vpa(x) %为提高预测精度,先计算预测值,再显示微分方程的解 yuce=[x0(1),diff(yuce1)] epsilon=x0-yuce %计算残差
delta=abs(epsilon./x0) %计算相对误差
rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda %计算级比偏差值
程序3第三产业煤炭消耗量
Y=[112.0 166.6 218.1 324.8 418.3 500.6 587.9 669.7 732.2]; B=[-85.25 1 -139.30 1 -192.35 1 -271.45 1 -371.55 1 -459.45 1 -544.25 1 -628.80 1
33
-700.95 1]; U=inv(B'*B)*B'*Y U =
-1.0158 31.4647 程序:
clc,clear
x0=[58.5 112.0 166.6 218.1 324.8 418.3 500.6 587.9 669.7 732.2]; n=length(x0);
lamda=x0(1:n-1)./x0(2:n) %计算级比 range=minmax(lamda) %计算级比的范围 x1=cumsum(x0);%累加运算 for i=2:n
z(i)=0.5*(x1(i)+x1(i-1)); end
B=[-z(2:n)',ones(n-1,1)]; Y=x0(2:n)';
u=B\\Y %拟合参数u(1)=a,u(2)=b
x=dsolve('Dx+a*x=b','x(0)=x0');%求微分方程的符号解
x=subs(x,{'a','b','x0'},{u(1),u(2),x0(1)});%代入估计参数值和初始值
yuce1=subs(x,'t',[0:n-1]) %求已知数据的预测值
digits(6),y=vpa(x) %为提高预测精度,先计算预测值,再显示微分方程的解 yuce=[x0(1),diff(yuce1)] epsilon=x0-yuce %计算残差
delta=abs(epsilon./x0) %计算相对误差
rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda %计算级比偏差值
程序4能源
Y=[18490.0 29550.7 43202.4 60097.8 78840.0 99444.4 121219.9 144928.9 170702.9]; B=[-13685.7 1 -24020.35 1 -36376.55 1 -51650.1 1 -69468.9 1 -89142.2 1 -110332.15 1
34
-133074.4 1 -157815.9 1];
U=inv(B'*B)*B'*Y U =
1.0e+003 *
-0.0011 4.8129
程序: clc,clear
x0=[8881.4 9608.6 11060.7 13651.7 16895.4 18742.2 20604.4 21775.5 23709 25774]; n=length(x0);
lamda=x0(1:n-1)./x0(2:n) %计算级比 range=minmax(lamda) %计算级比的范围 x1=cumsum(x0);%累加运算 for i=2:n
z(i)=0.5*(x1(i)+x1(i-1)); end
B=[-z(2:n)',ones(n-1,1)];
Y=x0(2:n)';
u=B\\Y %拟合参数u(1)=a,u(2)=b
x=dsolve('Dx+a*x=b','x(0)=x0');%求微分方程的符号解
x=subs(x,{'a','b','x0'},{u(1),u(2),x0(1)});%代入估计参数值和初始值
yuce1=subs(x,'t',[0:n-1]) %求已知数据的预测值
digits(6),y=vpa(x) %为提高预测精度,先计算预测值,再显示微分方程的解 yuce=[x0(1),diff(yuce1)] epsilon=x0-yuce %计算残差
delta=abs(epsilon./x0) %计算相对误差
rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda %计算级比偏差值 程序5煤炭消费量
Y=[13414.86 21223.70 30766.23 42930.91 56312.83 70777.14 85475.62 100478.68 116979.01]; B=[-9926.94 1 -17319.28 1
35
共分享92篇相关文档