泰勒公式的基本思想是通过函数在某点的导数来逐渐构建一个多项式,该多项式能够近似函数在该点附近的值。我们通过一次次引入导数来改进近似,从而得到一个无限级数的展开。
准备工作:函数的定义和导数
假设我们有一个函数f(x)f(x)f(x),并且它在点aaa附近是可导的。我们希望在点aaa附近找到一个多项式,使得该多项式在点aaa处尽可能接近函数值。
首先,我们知道,函数在点aaa处的值为f(a)f(a)f(a),一阶导数为f′(a)f'(a)f′(a),二阶导数为f′′(a)f''(a)f′′(a),以此类推。
从函数值开始(零阶近似)
最简单的近似就是用函数值来逼近函数。这意味着在点aaa附近,我们假设:
f(x)≈f(a)
f(x) \approx f(a)
f(x)≈f(a)
这个近似很粗糙,仅仅考虑了函数在点aaa的值。
加入一阶导数(线性近似)
接下来,我们加入函数在点aaa的导数信息。根据导数的定义,函数f(x)f(x)f(x)在点aaa的导数可以看作是函数值变化的速率。因此,在点aaa附近,我们可以通过直线(切线)来近似函数:
f(x)≈f(a)+f′(a)(x−a)
f(x) \approx f(a) + f'(a)(x - a)
f(x)≈f(a)+f′(a)(x−a)
这个式子表示函数在点aaa附近的线性变化。
加入二阶导数(二次近似)
为了提高近似精度,我们可以进一步引入二阶导数。二阶导数反映了函数变化的加速度,帮助我们更加精确地逼近函数。根据导数的定义和二阶导数的性质,我们可以得到:
f(x)≈f(a)+f′(a)(x−a)+f′′(a)2!(x−a)2
f(x) \approx f(a) + f'(a)(x - a) + \frac{f''(a)}{2!}(x - a)^2
f(x)≈f(a)+f′(a)(x−a)+2!f′′(a)(x−a)2
这个式子提供了二次多项式的近似,精度比一阶多项式更高。
加入更高阶导数
我们可以继续通过引入更高阶的导数来改进逼近。对于第三阶导数,我们得到:
f(x)≈f(a)+f′(a)(x−a)+f′′(a)2!(x−a)2+f(3)(a)3!(x−a)3
f(x) \approx f(a) + f'(a)(x - a) + \frac{f''(a)}{2!}(x - a)^2 + \frac{f^{(3)}(a)}{3!}(x - a)^3
f(x)≈f(a)+f′(a)(x−a)+2!f′′(a)(x−a)2+3!f(3)(a)(x−a)3
依此类推,加入更高阶的导数,从而得到更精确的近似。
无限级数的推导
通过不断增加导数项,我们得到了一个多项式展开形式:
f(x)≈f(a)+f′(a)(x−a)+f′′(a)2!(x−a)2+f(3)(a)3!(x−a)3+⋯
f(x) \approx f(a) + f'(a)(x - a) + \frac{f''(a)}{2!}(x - a)^2 + \frac{f^{(3)}(a)}{3!}(x - a)^3 + \cdots
f(x)≈f(a)+f′(a)(x−a)+2!f′′(a)(x−a)2+3!f(3)(a)(x−a)3+⋯
为了更一般化地表示这个过程,我们将其写成无限级数的形式:
f(x)=∑n=0∞f(n)(a)n!(x−a)n
f(x) = \sum_{n=0}^{\infty} \frac{f^{(n)}(a)}{n!}(x - a)^n
f(x)=n=0∑∞n!f(n)(a)(x−a)n
其中,f(n)(a)f^{(n)}(a)f(n)(a)表示函数在点aaa的nnn阶导数,n!n!n!是阶乘。
余项(误差项)
在实际应用中,我们通常只考虑泰勒展开的有限项。例如,只考虑前nnn项来近似函数。那么这个有限项的近似误差可以通过余项来表示。
在泰勒展开的推导过程中,余项提供了我们用有限项近似时,误差的大小。它的具体形式为拉格朗日余项:
Rn(x)=f(n+1)(c)(n+1)!(x−a)n+1
R_n(x) = \frac{f^{(n+1)}(c)}{(n+1)!}(x - a)^{n+1}
Rn(x)=(n+1)!f(n+1)(c)(x−a)n+1
其中ccc是某个介于aaa和xxx之间的点,具体位置依赖于xxx。这个余项可以用来估计函数值与泰勒多项式近似值之间的误差。
常用函数的泰勒展开
对于一些常见的初等函数,泰勒展开有特别简洁的形式。以下列出几个常用函数的泰勒展开公式(假设展开点为x=0x=0x=0,即Maclaurin级数):
1. 指数函数 exe^xex 的泰勒展开
ex=1+x+x22!+x33!+⋯=∑n=0∞xnn! e^x = 1 + x + \frac{x^2}{2!} + \frac{x^3}{3!} + \cdots = \sum_{n=0}^{\infty} \frac{x^n}{n!} ex=1+x+2!x2+3!x3+⋯=n=0∑∞n!xn
2. 正弦函数 sinx\sin xsinx 的泰勒展开
sinx=x−x33!+x55!−⋯=∑n=0∞(−1)nx2n+1(2n+1)! \sin x = x - \frac{x^3}{3!} + \frac{x^5}{5!} - \cdots = \sum_{n=0}^{\infty} (-1)^n \frac{x^{2n+1}}{(2n+1)!} sinx=x−3!x3+5!x5−⋯=n=0∑∞(−1)n(2n+1)!x2n+1
3. 余弦函数 cosx\cos xcosx 的泰勒展开
cosx=1−x22!+x44!−⋯=∑n=0∞(−1)nx2n(2n)! \cos x = 1 - \frac{x^2}{2!} + \frac{x^4}{4!} - \cdots = \sum_{n=0}^{\infty} (-1)^n \frac{x^{2n}}{(2n)!} cosx=1−2!x2+4!x4−⋯=n=0∑∞(−1)n(2n)!x2n
4. 自然对数函数 ln(1+x)\ln(1+x)ln(1+x) 的泰勒展开
对于∣x∣<1|x| < 1∣x∣<1,ln(1+x)\ln(1+x)ln(1+x)的泰勒展开为:
ln(1+x)=x−x22+x33−x44+⋯=∑n=1∞(−1)n+1xnn
\ln(1+x) = x - \frac{x^2}{2} + \frac{x^3}{3} - \frac{x^4}{4} + \cdots = \sum_{n=1}^{\infty} (-1)^{n+1} \frac{x^n}{n}
ln(1+x)=x−2x2+3x3−4x4+⋯=n=1∑∞(−1)n+1nxn
5. 反正切函数 tan−1x\tan^{-1} xtan−1x 的泰勒展开
对于∣x∣≤1|x| \leq 1∣x∣≤1,tan−1x\tan^{-1} xtan−1x的泰勒展开为:
tan−1x=x−x33+x55−⋯=∑n=0∞(−1)nx2n+12n+1
\tan^{-1} x = x - \frac{x^3}{3} + \frac{x^5}{5} - \cdots = \sum_{n=0}^{\infty} (-1)^n \frac{x^{2n+1}}{2n+1}
tan−1x=x−3x3+5x5−⋯=n=0∑∞(−1)n2n+1x2n+1
利用泰勒展开进行近似计算
1. 计算极限
当我们遇到极限问题时,利用泰勒展开可以将复杂的函数转化为一个多项式形式,进而简化计算。
2. 函数的近似值
泰勒展开也可以用来计算某个函数在某点附近的近似值。假设我们要计算f(x)f(x)f(x)在点aaa附近的值,可以通过有限项的泰勒展开来进行逼近。
3. 解微分方程
在解微分方程时,泰勒展开常常用来近似解。通过泰勒展开可以构造出逐步逼近的解序列,特别是在求解初值问题时。
误差估计
对于泰勒展开的有限项近似,我们可以通过余项估计误差。对于nnn阶泰勒多项式,其误差(拉格朗日余项)通常表示为:
Rn(x)=f(n+1)(c)(n+1)!(x−a)n+1
R_n(x) = \frac{f^{(n+1)}(c)}{(n+1)!}(x - a)^{n+1}
Rn(x)=(n+1)!f(n+1)(c)(x−a)n+1
其中ccc是介于aaa和xxx之间的某个点。误差项提供了有限项展开的精度,帮助我们估计近似的准确性。