资源描述
引例:万能拉拔机凸轮设计设计一个圆柱形凸轮,底圆半径为上端面要根据从动杆位移变化的需要进行设计制造根据设计要求,将底圆周18等分,旋转一周。得到下面的图表,第 个分点对应柱高要求计算出圆周任一点的柱高数据插值和拟合插值:确定一个初等函数y=P(x)(一般是多项式或者是分段多项式函数)通过已知各数据点。分段线性插值:将各数据点用折线连接起来多项式插值:求一个多项式通过所有数据点,可以假设出多项式的系数,最后通过求解方程得到每个系数数据拟合MATLAB命令多项式插值和拟合p=polyfit(x,y,k):用k次多项式拟合向量数据(x,y),返回多项式的降幂系数。当kn-2时,该命令实现多项式插值三次样条插值yi=spline(x,y,xi):等价于 yi=interp1(x,y,xi,spline)Pp=spline(x,y):返回样条插值的分段多项式 (pp形式)(注:要求x是单调上升的,且只能做内插)线性最小二乘拟合线性最小二成拟合可直接用求解超定线性方程组的方法,而有些非线性函数也可化为线性问题求解。例如上述函数y=aexp(bx)两边取对数得z=lna+bx然后通过除法解超定方程组得到每个系数实验例题凸轮设计对于引例的凸轮设计问题,可以通过分段线性插值和样条插值的方法解决人口预测按照统计数据建立人口增长的数学模型。(1)Malthus模型:用指数函数最小二乘拟合(2)Logistic 模型:用Logistic函数拟合非线性最小二乘拟合C=leastsq(fun,c0)使用迭代法搜索最有参数c。其中自变量为参数c的函数fun是误差向量y-f(c,x)(x,y为数据);C=curvefit(fun2,c0,x,y)使用更方便,从外部输入数据,这里fun2为函数f(c,x)。
展开阅读全文