最小二乘法matlab实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
南京信息工程大学实验(实习)报告实验课程数学建模实验名称_ 最小二乘法__ 实验日期 _ 指导老师
专业统计学年级
小组成员
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 实验目的:学会MATLAB软件中曲线拟合方法。
实验内容及要求:
问题1:多项式回归
某种合金中的主要成分为金属A与金属B,经过实验与分析发现,这两种金属成分之和x与膨胀系数y之间有一定的关系。由下面的数据建立描述这种关系的数学表示。
金属成分和x=[37.0 37.5 38.0 38.5 39.0 39.5 40.0 40.5 41.0 41.5 42.0 42.5 43.0];
膨胀系数y=[3.40 3.00 3.00 2.27 2.10 1.83 1.53 1.70 1.80 1.90 2.35 2.54 2.90];
注:使用命令:a=polyfit(x,y,n) %求出n阶拟合多项式y=f(x)的系数;
y1=polyval(a,x1) %求出f(x)在x1点的函数值,其中x1=37.0:0.5:43.0;
plot(x,y,'*r',x1,y1,'-b') %比较原数据和拟合曲线效果;
问题2:非线性回归
设观测到的数据如下:
x=20:10:210;
y=[0.57 0.72 0.81 0.87 0.91 0.94 0.95 0.97 0.98 0.99 1.00 0.99 0.99 1.00 1.00 0.99 1.00 1.00 0.99 1.00];
取回归函数为y=b(1)*(1-exp(-b(2)*x)),试估计参数b(1)、b(2)。
注:使用命令:
[b,r,j]=nlinfit(x,y,fun,b0); %非线性回归,其中b0为参数初始值,可取
b0=[2,0.1],fun=inline('b(1)*(1-exp(-b(2)*x))','b','x')为内联函数;
nlintool(x,y,fun,b0) %绘制非线性回归图。
程序及运行结果:
1、
>> x1=37:0.5:43;
y1=[3.40 3.00 3.00 2.27 2.10 1.83 1.53 1.70 1.80 1.90 2.35 2.54 2.90];
>> plot(x1,y1)
>> x1=37:0.5:43;
y1=[3.40 3.00 3.00 2.27 2.10 1.83 1.53 1.70 1.80 1.90 2.35 2.54 2.90];
a=polyfit(x,y,2)
y1=polyval(a,x1);
plot(x,y,'*r',x1,y1,'-b')
a =
0.1660 -13.3866 271.6231
2、
>> x=20:10:210;
y=[0.57 0.72 0.81 0.87 0.91 0.94 0.95 0.97 0.98 0.99 1.00 0.99 0.99 1.00 1.00 0.99 1.00 1.00 0.99 1.00];
b0=[2,0.1];
fun=inline('b(1)*(1-exp(-b(2)*x))','b','x');
[b,r,j]=nlinfit(x,y,fun,b0);
nlintool(x,y,fun,b0)
>> b(1)
ans =
0.9962
>> b(2)
ans =
0.0420
100120