MATLAB软件基本的曲线拟合函数命令Word版

上传人:每**** 文档编号:49783217 上传时间:2022-01-19 格式:DOCX 页数:8 大小:36.70KB
收藏 版权申诉 举报 下载
MATLAB软件基本的曲线拟合函数命令Word版_第1页
第1页 / 共8页
MATLAB软件基本的曲线拟合函数命令Word版_第2页
第2页 / 共8页
MATLAB软件基本的曲线拟合函数命令Word版_第3页
第3页 / 共8页
资源描述:

《MATLAB软件基本的曲线拟合函数命令Word版》由会员分享,可在线阅读,更多相关《MATLAB软件基本的曲线拟合函数命令Word版(8页珍藏版)》请在装配图网上搜索。

1、MATLAB软件提供了基本的曲线拟合函数的命令。曲线拟合就是计算出两组数据之间的一种函数关系,由此可描绘其变化曲线及估计非采集数据对应的变量信息。1.线性拟合函数:regress()调用格式:b = regress(y,X)b,bint,r,rint,stats = regress(y,X)b,bint,r,rint,stats = regress(y,X,alpha)说明:b=; ,regress(y,X)返回X与y的最小二乘拟合的参数值、,y=+X。是p1的参数向量;是服从标准正态分布的随机干扰的n1的向量;y为n1的向量;X为np矩阵。bint返回的95%的置信区间。r中为形状残差,ri

2、nt中返回每一个残差的95%置信区间。Stats向量包含R2统计量、回归的F值和p值。例:x=ones(10,1) (1:10);y=x*10;1+normrnd(0,0.1,10,1);b,bint=regress(y,x,0.05)结果得回归方程为:y=9.9213+1.0143x2.多项式曲线拟合函数:polyfit()调用格式:p = polyfit(x,y,n)p,s = polyfit(x,y,n)说明:n:多项式的最高阶数;x,y:将要拟合的数据,用数组的方式输入;p:为输出参数,即拟合多项式的系数;多项式在x处的值y可用下面程序计算:y=polyval(p,x)例:x=1:20

3、;y=x+3*sin(x);p=polyfit(x,y,6)xi=linspace(1,20,100);z=polyval(p,xi); % 多项式求值函数推荐精选plot(x,y,o,xi,z,k:,x,y,b)legend(原始数据,6阶曲线)3.一般的曲线拟合:curvefit()调用格式:p=curvefit(Fun,p0,x,y)说明:Fun:表示函数Fun(p,data)的M函数文件;x,y:将要拟合的数据,用数组的方式输入;p0:表示函数待拟合参数的初值;4.自定义函数拟合:nlinfit()调用格式:beta,r,J=nlinfit(x,y,fun,beta0)说明:beta:

4、返回函数fun中的待定常数;r:表示残差;J:表示雅可比矩阵。x,y:要拟合的数据;fun: 自定义函数;beta0: 待定常数初值;例:化工生产中获得的氯气的级分y随生产时间x下降,假定在x8时,y与x之间有非线性模型:现收集了44组数据,利用该数据通过拟合确定非线性模型中的待定常数。xyxyxy80.49160.43280.4180.49180.46280.40100.48180.45300.40100.47200.42300.40100.48200.42300.38100.47200.43320.41120.46200.41320.40推荐精选120.46220.41340.40120.

5、45220.40360.41120.43240.42360.36140.45240.40380.40140.43240.40380.40140.43260.41400.36160.44260.40420.39160.43260.41首先,定义非线性函数的m文件:fff6.mfunctionyy=model(beta0,x)a=beta0(1);b=beta0(2);yy=a+(0.49-a)*exp(-b*(x-8);拟合程序:x=8.00 8.00 10.00 10.00 10.00 10.00 12.00 12.00 12.00 14.00 14.00 14.00.16.00 16.00

6、16.00 18.00 18.00 20.00 20.00 20.00 20.00 22.00 22.00 24.00.24.00 24.00 26.00 26.00 26.00 28.00 28.00 30.00 30.00 30.00 32.00 32.00.34.00 36.00 36.00 38.00 38.00 40.00 42.00;y=0.49 0.49 0.48 0.47 0.48 0.47 0.46 0.46 0.45 0.43 0.45 0.43 0.43 0.44 0.43.0.43 0.46 0.42 0.42 0.43 0.41 0.41 0.40 0.42 0.40

7、 0.40 0.41 0.40 0.41 0.41.0.40 0.40 0.40 0.38 0.41 0.40 0.40 0.41 0.38 0.40 0.40 0.39 0.39;beta0=0.30 0.02;betafit = nlinfit(x,y,sta67_1m,beta0)结果:betafit =0.38960.1011即:a=0.3896 ,b=0.1011 拟合函数为:推荐精选4.多元非线性拟合:(1).nlinfit()调用格式:beta,r,J=nlinfit(X,Y,fun,beta0)说明:beta:返回函数fun中的待定常数;r:表示残差;J:表示雅可比矩阵。X,Y

8、:要拟合的多元数据矩阵;fun: 自定义函数;beta0: 待定常数初值;例:x1 = 1150,1000,900,850,700,625,550,475,3350,3500,5900,5800,5700,4600,4625,4725,11650,11200,11200 ;x2 = 175,100,25,0,75,100,150,200,50,600,500,225,100,1225,1600,2000,1200,1000,1550 ;x= x1,x2;y= 1.44E-02,1.80E-02,6.08E-02,5.59E-02,3.42E-02,7.74E-03,1.17E-03,6.16E

9、-03,1.91E-04,1.91E-04,1.02E-03,2.83E-03,9.52E-05,3.77E-04,2.70E-04,1.87E-04,3.98E-04,4.04E-04,4.02E-04 ;beta0 = 0.1 0.1 1 1;myfun = (a,x)4030.0./pi./4.2./(a(1).*x(:,1).a(2).*a(3).*x(:,1).a(4).*exp(-(x(:,2).2./2./(a(1).*x(:,1).a(2).2+30.0.2./2./(a(3).*x(:,1).a(4).2);a,b,c,d,res = nlinfit(x,y,myfun,be

10、ta0);a,resplot3(x1,x2,y,o,x1,x2,myfun(a,x)% 值的选取没有定法,与实际问题的模型有关。(2).regress()线性的不行,用二次函数。formatlongA=.0.213.6850325127.47.79.9365831413.95.810.8730743326.87.709.70671725723.87.59.8760928021.7推荐精选5.611.3427153314.66.27.652169482253.239.16165168044.10.3311.3173668554.10.149.5142459156.65.59.718184331.

11、62.38.933612250114.93.34.67392751661.99.732175150107.50.69.933088242142.30.2211.71862056760.41.8811.762788526771.62.7810.9217807658.7x=A(:,1:4),Y=A(:,5)x11=x(:,1).*x(:,1);x12=x(:,1).*x(:,2);x13=x(:,1).*x(:,3);x14=x(:,1).*x(:,4);x22=x(:,2).*x(:,2);x23=x(:,2).*x(:,3);x24=x(:,2).*x(:,4);x33=x(:,3).*x(:

12、,3);x34=x(:,3).*x(:,4);x44=x(:,4).*x(:,4);X=x(:,:),x11,x12,x13,x14,x22,x23,x24,x33,x34,x44B,BINT,R=REGRESS(Y,ones(length(Y),1),X)B就是系数,R就是预测值与实际值的差值。(3).lsqcurvefit()clearclcx = 405060708090100110120135150;y = 0.00960.01450.01940.03480.05010.07510.10000.14970.19930.24960.2999;z = 0.24000.28650.33300

13、.36000.38700.40100.41500.43900.46300.48750.5120;X0 = 1 1 1 1 1 1;% 只要这样写就可以了f=(p,x)( p(1) + p(2)*x(1,:) + p(3)*x(2,:) + p(4)*x(1,:)推荐精选.2 + p(5)*x(1,:).*x(2,:) + p(6)*x(2,:).2);p=lsqcurvefit(f,X0,x;y,z);5.稳健回归函数:robust()稳健回归是指此回归方法相对于其他回归方法而言,受异常值的影响较小。调用格式:b = robustfit(x,y)b,stats = robustfit(x,y)

14、b,stats = robustfit(x,y,wfun,tune,const)说明:b:系数估计向量;stats:各种参数估计;wfun:指定一个加权函数;tune:为调协常数;const:值为on(默认值)时添加一个常数项,为off 时忽略常数项。例:演示一个异常数据点如何影响最小二乘拟合值与稳健拟合。首先利用函数y=10-2x加上一些随机干扰的项生成数据集,然后改变一个y的值形成异常值。调用不同的拟合函数,通过图形观查影响程度。程序:x=(1:10);y=10-2*x+randn(10,1);y(10)=0;bls=regress(y,ones(10,1) x);% 线性拟合brob=robustfit(x,y);% 稳健拟合scatter(x,y;hold onplot(x,bls(1)+bls(2)*x,:);plot(x,brob(1)+brob(2)*x,r);结果 : bls=8.4452-1.4784brob=10.2934-2.0006 (注:可编辑下载,若有不当之处,请指正,谢谢!) 推荐精选

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!