加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

matlab数值分析离散数据拟合相关函数

(2010-11-15 12:55:39)
标签:

it

分类: 软件工程
转载自http://blog.163.com/caoyaqiang0410@126/blog/static/16778872320102296522330/

polyfit()
求离散数据的多项式拟合
命令格式:a=polyfit(x,y,n),x,y是离散数据自变量和因变量构成的向量,n为拟合多项式的次数,输出项a为拟合多项式的系数,系数由高到低排列。
 
polyval()求多项式在某一点出的函数值
命令格式:y=polyval(p,x)其中p为多项式,y是拟合多项式在点x处的值。
例子:某实验测得数据,求数据表的最小二乘拟合函数
  -2   -1  0 1  2  3  
  19.5  10.2     3.5       4.8        12.4     26.1     43.9 
x=[-2   -1 0  1  2 3  ];
y=[ 19.5    10.2   3.5     4.8     12.4   26.1    43.9 ];
a=polyfit(x,y,2);
xx=-2:0.1:4;
yy=polyval(a,xx);
plot(xx,yy,x,y,'*')
 
lsqcurvefit()非线性最小二乘拟合函数
命令格式:x=lsqcurvefit(fun,x0,xdata,ydata)
Fun是要拟合的非线性函数,x0是初始参数向量,xdataydata是拟合点的数据
例子 求一形如y=aexp(bx)的经验公式,使他和下面的数据拟合
Xi  4
Yi  11 17 27
x=[1 4];
y=[7 11 17 27];
f=inline('a(1)*exp(a(2).*x)','a','x');
a=lsqcurvefit(f,[4 0.4],x,y)
 
lsqnonlin()非线性最小二乘拟合函数
命令格式:x=lsqnonlin(fun,x0)
其中fun的与lsqcurvefit中的fun有差别
 
nlinfit()非线性回归函数,可以用于求非线性最小二乘问题
命令格式:beta=nlinfit(x,y,fun,beta0)
Xy是离散数据自变量与因变量构成的向量,fun被回归(拟合)的函数,beta0是初始参数向量
例子 求一形如y=aexp(bx)的经验公式,使他和下面的数据拟合
Xi  4
Yi  11 17 27
x=[1 4];
y=[7 11 17 27];
f=inline('a(1)*exp(a(2).*x)','a','x');
a=nlinfit(x,y,f,[4 0.4])

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有