数学建模代码汇总.docx
- 文档编号:25119515
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:23
- 大小:20.84KB
数学建模代码汇总.docx
《数学建模代码汇总.docx》由会员分享,可在线阅读,更多相关《数学建模代码汇总.docx(23页珍藏版)》请在冰豆网上搜索。
数学建模代码汇总
插值
%产生原始数据
x=0:
0.1:
1;
y=(x.^2-3*x+7).*exp(-4*x).*sin(2*x);
%线性插值
xx=0:
0.01:
1;
y1=interp1(x,y,xx,'linear');
subplot(2,2,1)
plot(x,y,'o',xx,y1);
title('线性插值');
%最邻近点插值
y2=interp1(x,y,xx,'nearest');
subplot(2,2,2)
plot(x,y,'o',xx,y2);
title('最邻近点插值');
%三次插值
y3=interp1(x,y,xx,'cubic');
subplot(2,2,3)
plot(x,y,'o',xx,y3);
title('三次插值');
%三次样条插值
y4=interp1(x,y,xx,'spline');
subplot(2,2,4)
plot(x,y,'o',xx,y4);
title('三次样条插值');
%插值基点为网格节点
clearall
y=20:
-1:
0;
x=0:
20;
z=[0.20.20.20.20.20.20.40.40.30.20.30.20.10.20.20.40.30.20.20.20.2;
0.30.20.20.20.20.40.30.30.30.30.40.20.20.20.20.40.40.40.30.20.2;
0.20.30.30.20.310.40.50.30.30.30.30.20.20.20.60.50.40.40.20.2;
0.20.20.40.211.10.90.40.30.30.50.30.20.20.20.70.30.60.60.30.4;
0.20.20.90.71110.70.50.30.20.20.20.60.20.80.70.90.50.50.4;
0.20.31111.211.10.80.30.20.20.20.50.30.60.60.80.70.60.5;
0.20.4111.11.11.11.10.60.30.40.40.20.70.50.90.70.40.90.80.3;
0.20.20.91.11.21.21.11.10.60.30.50.30.20.40.30.710.71.20.80.4;
0.20.30.40.91.111.11.10.70.40.40.40.30.50.50.81.10.81.10.90.3;
0.30.30.51.21.21.111.20.90.50.60.40.60.60.30.61.20.810.80.5;
0.30.50.91.11.111.210.80.70.50.60.40.50.411.30.90.910.8;
0.30.50.61.11.2111.10.90.40.40.50.50.80.60.910.50.80.80.9;
0.40.50.411.11.210.90.70.50.60.30.60.40.6110.60.910.7;
0.30.50.81.11.110.80.70.70.40.50.40.40.50.41.11.30.710.70.6;
0.30.50.91.110.70.70.40.60.40.40.30.50.50.30.91.20.810.80.4;
0.20.30.60.90.80.80.60.30.40.50.40.50.40.20.50.51.30.610.90.3;
0.20.30.30.70.60.60.40.20.30.50.80.80.30.20.20.81.30.90.80.80.4;
0.20.30.30.60.30.40.30.20.20.30.60.40.30.20.40.30.80.60.70.40.4;
0.20.30.40.40.20.20.20.30.20.20.20.20.20.20.20.50.70.40.40.30.3;
0.20.20.30.20.20.30.20.20.20.20.20.10.20.40.30.60.50.30.30.30.2;
0.20.20.20.20.20.20.20.20.20.20.20.20.20.20.40.70.40.20.40.50.5];
%未插值直接画图
figure
(1)%创建图形窗口1,并激活
surf(x,y,z);
shadingflat%用shadingflat命令,使曲面变的光滑
title('未插值地形图')
xlabel('横坐标')
ylabel('纵坐标')
zlabel('高度')
%三次插值后画图
%画地形图
figure
(2)
xi=0:
0.05:
20;
yi=20:
-0.05:
0;
zi=interp2(x,y,z,xi',yi,'cubic');%'cubic'三次插值
surfc(xi,yi,zi);%底面带等高线
shadingflat
title('插值后地形图')
xlabel('横坐标')
ylabel('纵坐标')
zlabel('高度')
%画立体等高线图
figure(3)
contour3(xi,yi,zi);
title('立体等高线图')
xlabel('横坐标')
ylabel('纵坐标')
zlabel('高度')
%画等高线图
figure(4)
[c,h]=contour(xi,yi,zi);
clabel(c,h);%用于为2维等高线添加标签
colormapcool%冷色调
title('平面等高线图')
xlabel('横坐标')
ylabel('纵坐标')
ge
回归拟合
functionyhat=Logisfun(beta,x)
yhat=beta
(1)./(1+(beta
(1)/beta
(2)-1).*exp(-beta(3).*x));
clearall
y=[3.95.37.29.612.917.123.231.438.650.262.9...
76.092.0106.5123.2131.7150.7179.3204.0226.5251.4281.4]';
x=(1:
22)';
beta0=[400,3.0,0.20]';
%非线性回归'Logisfun'为回归模型
[beta,r,j]=nlinfit(x,y,'Logisfun',beta0);
%beta0为回归系数初始迭代点
%beta为回归系数
%r为残差
%输出拟合表达式:
fprintf('回归方程为y=%5.4f/(1+%5.4f*exp(-%5.4f*x))\n',beta
(1),beta
(1)/beta
(2)-1,beta(3))
%求均方误差根:
rmse=sqrt(sum(r.^2)/22);
rmse
%预测和误差估计:
[Y,DELTA]=nlpredci('Logisfun',x,beta,r,j);
%DELTA为误差限
%Y为预测值(拟合后的表达式求值)
plot(x,Y,x,y,'o',x,Y+DELTA,':
',x,Y-DELTA,':
')
%lny=lna+bx
clearall
y=[3.95.37.29.612.917.123.231.438.650.262.976.0];
%Y为列向量
Y=log(y');
x=1:
12;
%X为两列
X=[ones(12,1),x'];
[b,bint,r,rint,stats]=regress(Y,X);
%b为参数的点估计
disp('b为参数的点估计')
b
%bint为参数的区间估计
disp('bint为参数的区间估计')
bint
%stats
(1)为相关系数越接近1回归方程越显著
disp('stats
(1)')
stats
(1)
%stats
(2)为F值越大回归越显著
disp('stats
(2)')
stats
(2)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 建模 代码 汇总