美文网首页
了解多项式

了解多项式

作者: 巴之丛林 | 来源:发表于2020-01-30 23:19 被阅读0次

            多项式(Polynomials)是通过变量自身的不同次方(以最高次方为主导)的组合来实现的变换,每一项都可以看着是一个幂函数,只不过每项代表的增长或者递减的速度不同。当然多项式里面一般还会带上一些不变的常量系数。多项式组成的方程式等于0的解一直是代数领域基本内容,同时导数等于0是工程上常常需要面对的问题。

    1. 多项式的定义

            多项式(Polynomials)是形如:f(x)=a_{1} x+a_{2} x^2+a_{3} x^3+...+a_{n} x^n的函数式,它的导数也是多项式。多项式比较受工程技术人员的喜爱,相比于指数和对数函数,多项式更容易理解、操作处理和实现。所以为了方便,一般都会尽量把问题建模为多项式形式或者转化近似成多项式的形式来处理,比如泰勒展开式等。

    2. 多项式的表示

            当我们拿到研发项目的实验数据的时候,如果想用多项式来表示这些数据的话,通常可以采用Lagrange多项式法或者Newton's Divided Difference牛顿差商法 ^{[1]}来得到多项式的具体表达式。

            Lagrange法的表达式形如:p(x)=\sum_{k=0}^n f(x_{k} )L_{k}(x)

            Newton's Divided Difference的表达式形如:p_{n}=a_{0} +a_{1}(x-x_{0} ) +...+a_{n} (x-x_{0} )(x-x_{1} )...(x-x_{n-1} )

            但是在一般情况下,工程应用上都事先会为已得到的数据找个可能的方程模型,再结合优化算法(比如最小二乘)来计算模型参数,常称为曲线拟合。

    3. 多项式方程的解

            跟多项式相关的另一个问题是多项式等于零的解,对于二次多项式:f(x)=ax^2+bx+c=0 ,它的解为\frac{-b\pm \sqrt{b^2-4ac } }{2a} ,而三次及三次以上的多项式方程的解的表达式就更复杂了。所以在数值计算上通常方法是先把问题转化为求矩阵的特征值问题,并通过QR分解来求得这些特征值^{[2]}  ,这些特征值就是所要求得的方程的解了。假设一个四次多项式方程:p(x)=x^4 +ax^3 +bx^2 +cx+d,则转化的矩阵(a,b,c,d已知)如下:

                                                       C_{p} =\begin{bmatrix} 0 & 1 & 0 & 0 \\                                        0 & 0 & 1 & 0 \\                                       0 & 0 & 0 & 1 \\                                      -d & -c & -b & -a \end{bmatrix}

            由\vert \lambda I-C_{p}  \vert = 0可得\lambda ^4 +a\lambda ^3 +b\lambda ^2 +c\lambda +d=0,所以只要得到四个特征值即可。求取矩阵特征值,尤其是这种稀疏矩阵比较好的方法是QR分解来实现,分解完成后得到的矩阵的对角线上的元素就是所求的特征值的近似解了。


    参考文献:

    [1]. Polynomial Interpolation(多项式插值)

    [2]. polyroot(多项式的根)

    相关文章

      网友评论

          本文标题:了解多项式

          本文链接:https://www.haomeiwen.com/subject/lepjthtx.html