泰勒公式
泰勒公式简单来说就是,可以用一个N次多项式来表示出一个连续可导的函数 f(x)
是一个用函数在某点的信息描述其附近取值的公式
第一步
思考
这是一个sin(x)的图像 用函数在原点的信息描述其附近取值
用一阶导数贴合:
直接用切线来贴合就好
画一个点(0,sin(0)除的切线 可以由直线的两点式得 :
y = f ( 0 ) + f ′ ( 0 ) ( x − 0 ) y = f(0) + f'(0)(x-0) y=f(0)+f′(0)(x−0)
根据图像我们发现在 0 附近这个函数和 s i n ( x ) 很贴合 , 越靠近 0 越贴合 根据图像我们发现在0附近这个函数和sin(x)很贴合,越靠近0越贴合 根据图像我们发现在0附近这个函数和sin(x)很贴合,越靠近0越贴合
找个三次函数来贴合:
找个五次函数贴合:
我们发现阶数越高越贴合 , 离 0 越近越贴合 我们发现阶数越高越贴合,离0越近越贴合 我们发现阶数越高越贴合,离0越近越贴合
于是我们,大胆假定一个函数可以用N次多项式来进行代替
f ( x ) = C 0 + C 1 x + C 2 x 2 + … + C N − 1 x N − 1 + C N x N f(x) = C_0 + C_1 x + C_2 x^2 + \ldots + C_{N-1} x^{N-1} + C_N x^N f(x)=C0+C1x+C2x2+…+CN−1xN−1+CNxN
求系数
所以现在变为,我们怎么得到N次多项式的系数
因为我们是由一个点的信息来描述其附近取值,那么我们可以理解为这个点的附近区域的函数段是相同的,那么它们的各阶导数该点的值也是相同的.
举例子:
给定多项式:
f ( x ) = C 0 + C 1 x + C 2 x 2 + C 3 x 3 f(x) = C_0 + C_1 x + C_2 x^2 + C_3 x^3 f(x)=C0+C1x+C2x2+C3x3
第一步,令 ( x ) 为零,得到:
f ( 0 ) = C 0 f(0) = C_0 f(0)=C0
第二步,对 ( f(x) ) 求导,得到一阶导数:
f ′ ( x ) = C 1 + 2 C 2 x + 3 C 3 x 2 f'(x) = C_1 + 2C_2x + 3C_3x^2 f′(x)=C1+2C2x+3C3x2
代入 ( x = 0 ),得到:
f ′ ( 0 ) = C 1 f'(0) = C_1 f′(0)=C1
第三步,对 ( f(x) ) 进行二次求导,得到二阶导数:
f ′ ′ ( x ) = 2 C 2 + 6 C 3 x f''(x) = 2C_2 + 6C_3x f′′(x)=2C2+6C3x
代入 ( x = 0 ),得到:
f ′ ′ ( 0 ) = 2 C 2 f''(0) = 2C_2 f′′(0)=2C2
C 2 = f ′ ′ ( 0 ) 2 C_2 = \frac{f''(0)}{2} C2=2f′′(0)
第四步,对 ( f(x) ) 进行三次求导,得到三阶导数:
f ′ ′ ′ ( x ) = 6 C 3 f'''(x) = 6C_3 f′′′(x)=6C3
代入 ( x = 0 ),得到:
f ′ ′ ′ ( 0 ) = 6 C 3 f'''(0) = 6C_3 f′′′(0)=6C3
C 3 = f ′ ′ ′ ( 0 ) 6 C_3 = \frac{f'''(0)}{6} C3=6f′′′(0)
然后,你总结得到多项式的泰勒展开式为:
f ( x ) = f ( 0 ) + f ′ ( 0 ) x + f ′ ′ ( 0 ) 2 ! x 2 + f ′ ′ ′ ( 0 ) 3 ! x 3 f(x) = f(0) + f'(0)x + \frac{f''(0)}{2!}x^2 + \frac{f'''(0)}{3!}x^3 f(x)=f(0)+f′(0)x+2!f′′(0)x2+3!f′′′(0)x3
这是一个泰勒展开,适用于充分光滑的函数,通过这个展开式,我们可以近似表示函数在 ( x = 0 ) 附近的行为。
我们通过运算发现
给定函数 f(x),在 x = a 处的 n 阶泰勒展开式为:
P n ( x ) = f ( a ) + f ′ ( a ) ( x − a ) + f ′ ′ ( a ) 2 ! ( x − a ) 2 + f ′ ′ ′ ( a ) 3 ! ( x − a ) 3 + … + f ( n ) ( a ) n ! ( x − a ) n P_n(x) = f(a) + f'(a)(x - a) + \frac{f''(a)}{2!}(x - a)^2 + \frac{f'''(a)}{3!}(x - a)^3 + \ldots + \frac{f^{(n)}(a)}{n!}(x - a)^n Pn(x)=f(a)+f′(a)(x−a)+2!f′′(a)(x−a)2+3!f′′′(a)(x−a)3+…+n!f(n)(a)(x−a)n
其中, f ′ ( a ) 表示 f ( x ) 在 x = a 处的一阶导数, f ′ ′ ( a ) 表示二阶导数,以此类推, f ( n ) ( a ) 表示第 n 阶导数。 其中,f'(a) 表示 f(x) 在 x = a 处的一阶导数,f''(a) 表示二阶导数,以此类推,f^{(n)}(a) 表示第 n 阶导数。 其中,f′(a)表示f(x)在x=a处的一阶导数,f′′(a)表示二阶导数,以此类推,f(n)(a)表示第n阶导数。
通用形式为:
P n ( x ) = ∑ k = 0 n f ( k ) ( a ) k ! ( x − a ) k P_n(x) = \sum_{k=0}^{n} \frac{f^{(k)}(a)}{k!}(x - a)^k Pn(x)=k=0∑nk!f(k)(a)(x−a)k
试试不在0展开
在点1处展开:
一次多项式 : 一次多项式: 一次多项式:
三次多项式 : 三次多项式: 三次多项式:
五次多项式 : 五次多项式: 五次多项式:
为什么可以表示
1阶导数是描述原函数的变化
2阶导数又是描述一阶导数的变化
所以多次在不断的导是要知道原函数在该点的变化,二阶导又看变化的变化怎么变化…
参考信息:
B站视频【泰勒公式】