牛顿法求解一元函数
对于一个简单的一元方程我们可以通过代数运算来求解,但是对于一个非线性的复杂一元函数例如 −2x5−8x2+sin(x∗x)−2x=0 − 2 x 5 − 8 x 2 + s i n ( x ∗ x ) − 2 x = 0 这样的方程,想要通过人力计算就很难办到。
下面介绍利用牛顿法来构建的一个一元函数方程求解的程序。
牛顿法
当方程没有求根公式或者求根公式特别复杂时,利用牛顿法都可以进行迭代求解。
维基对牛顿法的定义为:
它是一种在实数域和复数域上近似求解方程的方法。方法使用函数f(x)的泰勒级数的前面几项来寻找方程 f(y)=0的根。
先理解下泰勒级数
如果一个函数是以实数或者复数为变量,并且该函数是可导的,那么这个函数就可以被展开为泰勒多项式。
有如下定理:
设 n 是一个正整数。如果定义在一个包含 a 的区间上的函数 f 在 a 点处 n+1 次可导,那么对于这个区间上的任意 x,都有:
f(x)=f(a)+f′(a)1!(x−a)+