- 积分
- 83
- 注册时间
- 2003-11-14
- 仿真币
-
- 最后登录
- 1970-1-1
|
发表于 2005-9-12 11:24:34
|
显示全部楼层
来自 新疆乌鲁木齐
Re:请教求拟合曲线峰值
本帖最后由 bainhome 于 2010-11-20 23:38 编辑
接你的程序
- >> [maximum,index_y]=max(polc)
- maximum =
- 1.8138
- index_y =
- 78
- >> xx_max=xx(index_y)
- xx_max =
- 15.2000
复制代码
这是从你给定的xx中找到的峰值,如果要找polc的"真正"峰值,先找一下p2的表达式:
- poly2sym(p2);
- digits(3);
- vpa(ans)
- ans =-.315e-2*x^2+.957e-1*x+1.09
复制代码
用一维极值搜索命令fminbnd
- >> f=inline('.315e-2*x.^2-.957e-1*x-1.09','x');
- >> x=fminbnd(f,7.5,20)
- x =
- 15.1905
复制代码
至于平方差不知道是谁和谁的平方差,无从回答,但如果是误差估计的话polyfit命令中有个命令格式
- [p,S] = polyfit(x,y,n)
- [p,S,mu] = polyfit(x,y,n)
复制代码
建议看看,如果是求原来x对应的y和拟合y值的平方差想必就很简单了,不多说. |
|