如x=[ 0 0.0833 0.3269 0.7211 1.2568 1.9252 2.7181 3.6272 4.6448 5.7637 6.9767 8.2771 9.6584 11.1147 12.6400 14.2290 15.8762 17.5770 19.3264],y=[0 0.1375 0.5359 1.1746 2.0340 3.0950 4.3397 5.7509 7.3121 9.0078 10.8230 12.7436 14.7563 16.8484 19.0079 21.2235 23.4846 25.7814 28.1044]
麻烦一下代码,谢谢。
1、根据一组离散点数据拟合出四次多项式曲线函数,可以用regress——线性回归函数来拟合。拟合方法:
x=[。。。];y=[。。。];
X=[ones(1,19) x x.^2 x.^3 x.^4];
a= regress(y,X); %拟合系数
拟合结果:
y=a1+a2*x+a3x^2+a4x^3+a5x^4
a1=0.0043519,a2=1.6277,a3=-0.012987,a4=0.00032848,a5=-6.3049e-06
2、根据公式计算,在(x0,y0)处曲线斜率和曲率半径及曲率中心点的值。计算方法:
syms x
y=a1+a2*x+a3*x^2+a4*x^3+a5*x^4;
dy=diff(y,1); %一阶导数
d2y=diff(y,2);%二阶导数
R=(1+dy^2)^1.5/d2y;%曲率半径
x=x0;y=y0;
K=eval(dy); %斜率值
R=eval(R);%曲率半径值
Xc=eval(x-dy*(1+dy^2)/d2y);%曲率中心的x值
Yc=eval(y+(1+dy^2)/d2y);%曲率中心的y值
3、计算结果