matlab的函数的拟合和求二次导
x=9:0.1:10.5y=[3.523.683.984.214.725.135.405.575.705.805.895.966.026.076.146.19];想拟合并...
x=9:0.1:10.5
y=[3.52 3.68 3.98 4.21 4.72 5.13 5.40 5.57 5.70 5.80 5.89 5.96 6.02 6.07 6.14 6.19];
想拟合并求出其二阶导数的曲线以找出拐点
后面的代码怎么写啊?最好能用diff啊
急啊,大神帮帮忙吧 展开
y=[3.52 3.68 3.98 4.21 4.72 5.13 5.40 5.57 5.70 5.80 5.89 5.96 6.02 6.07 6.14 6.19];
想拟合并求出其二阶导数的曲线以找出拐点
后面的代码怎么写啊?最好能用diff啊
急啊,大神帮帮忙吧 展开
1个回答
展开全部
多项式拟合:
经验证,9次多项式能够很好的拟合
x=9:0.1:10.5;
y=[3.52 3.68 3.98 4.21 4.72 5.13 5.40 5.57 5.70 5.80 5.89 5.96 6.02 6.07 6.14 6.19];
[p,s,mu]=polyfit(x,y,9);
y1=polyval(p,x);
plot(x,y,'b',x,y1,'r');
legend('原始曲线','拟合曲线');
得:
获取拟合表达式:
f=poly2sym(p);
求二阶导数:
g=diff(f,2);
求二阶导数为0的点
result=eval(solve(g));
输出:
result =
10.4060
9.3815
9.0444
9.9794
9.8306
10.2321
9.0211
有7个拐点
追问
其实这是一条滴定曲线,我想找到其中的等当量点,也就是其中斜率最大的点,这7个点,我选哪个啊?大神,再帮我筛一下吧,最可能的一个是谁?
追答
将一阶导数画出来综合判断呗
h=diff(f,1);
x=9:0.1:10.5;
y2=subs(h,x);
用:
plot(x,y2,'b');
自己画一阶导数图形来观察
东莞大凡
2024-08-07 广告
2024-08-07 广告
在东莞市大凡光学科技有限公司,我们利用Halcon软件处理机器视觉项目时,会用到自定义标定板以满足特定需求。Halcon支持用户根据实际应用场景自定义标定板形状与标记点。这不仅可以灵活应对不同工作环境,还能提高标定精度。通过调整圆点数量、间...
点击进入详情页
本回答由东莞大凡提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询