许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  MATLAB数据拟合:非线性曲线拟合技巧

MATLAB数据拟合:非线性曲线拟合技巧

阅读数 2304
点赞 53
article_banner

关于非线性曲线拟合问题,有不少可以转化为线性曲线,然后使用线性最小二乘法来算,比如y=a*exp(b*x),只要两边同时取对数,便可转化为线性问题,不过能转化的终究是少数,例如y=c+a*exp(b*x),便不能转化为线性问题了。我学习了matlab指定函数拟合命令fittype和fit,介绍给大家。

问题:x=[1,2,3,4,5,6,7,8];

y=[15.3,20.5,27.4,36.6,49.1,65.6,87.8,117.6];求y=a*exp(b*x)中的a,b

指定函数拟合:

x=x';y=y';%数据必须是列向量

syms t;

f=fittype('a*exp(b*t)','independent','t','coefficient',{'a','b'});

func=fit(x,y,f) %这里已求出来了a=11.42,b=0.2914

y1=func(x);  sum((y-y1).^2)   %算一下误差的平方和是 0.0119

而转化为线性问题求出来的a=11.44,b=0.2913,误差的平方和是 0.0262;

如果大家出现了这个问题

Warning: Start point not provided, choosing random start point.

> In Warning>Warning.throw at 31

  In fit>iFit at 320

  In fit at 109

是因为没有给定a和b的初始值,我们可以在拟合前估计一下a,b,然后把func=fit(x,y,f)改为func2=fit(x,y,f,'startpoint',[11,0.3]);和0.3都是我的估计值

当然指定函数拟合也有它的弊端,对于非常复杂的函数式,博主有好几次都没拟合出满意的曲线。

 

 


武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks ,Hyperworks, Protel,CAXA,OpenWorks LandMark,MATLAB,Enovia,Winchill,TeamCenter,MathCAD,Ansys, Abaqus,ls-dyna, Fluent, MSC,Bentley,License,UG,ug,catia,Dassault Systèmes,AutoDesk,Altair,autocad,PTC,SolidWorks,Ansys,Siemens PLM Software,Paradigm,Mathworks,Borland,AVEVA,ESRI,hP,Solibri,Progman,Leica,Cadence,IBM,SIMULIA,Citrix,Sybase,Schlumberger,MSC Products...

相关文章
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空