跳转到内容

FP2 第七章:麦克劳林级数与泰勒级数

FP2 讲义:麦克劳林级数与泰勒级数

Section titled “FP2 讲义:麦克劳林级数与泰勒级数”

泰勒级数和麦克劳林级数提供了用多项式逼近函数的强大方法。这些近似在微积分、工程和物理学中至关重要,使我们能够用更简单的多项式表达式来表示复杂的函数。

记法:

  • f(x)f'(x)f(1)(x)f^{(1)}(x):一阶导数
  • f(x)f''(x)f(2)(x)f^{(2)}(x):二阶导数
  • f(x)f'''(x)f(3)(x)f^{(3)}(x):三阶导数
  • f(n)(x)f^{(n)}(x)nn 阶导数(莱布尼茨记法:dnfdxn\frac{d^n f}{dx^n}

高阶导数计算示例:

对于 f(x)=exf(x) = e^x

f(x)=exf(x)=exf(x)=ex\begin{aligned} f'(x) &= e^x \\ f''(x) &= e^x \\ f'''(x) &= e^x \end{aligned}

exe^x 的所有导数都等于 exe^x 本身!

对于 f(x)=sinxf(x) = \sin x

f(x)=cosxf(x)=sinxf(x)=cosxf(4)(x)=sinx\begin{aligned} f'(x) &= \cos x \\ f''(x) &= -\sin x \\ f'''(x) &= -\cos x \\ f^{(4)}(x) &= \sin x \end{aligned}

sinx\sin x 的导数遵循四个函数的循环。

对于 f(x)=xnf(x) = x^n(其中 nn 为正整数):

f(x)=nxn1f(x)=n(n1)xn2f(x)=n(n1)(n2)xn3\begin{aligned} f'(x) &= nx^{n-1} \\ f''(x) &= n(n-1)x^{n-2} \\ f'''(x) &= n(n-1)(n-2)x^{n-3} \end{aligned}

这个模式一直持续到第 nn 阶导数,等于 n!n!(常数),所有更高阶导数都为零。

让我们从考虑一个在 x=0x = 0 附近逼近函数 f(x)f(x) 的多项式 P(x)P(x) 开始:

P(x)=a0+a1x+a2x2+a3x3++anxnP(x) = a_0 + a_1x + a_2x^2 + a_3x^3 + \cdots + a_nx^n

如果我们希望这个多项式在 x=0x = 0 处匹配 f(x)f(x) 及其导数,我们需要:

P(0)=f(0)a0=f(0)P(0)=f(0)a1=f(0)P(0)=f(0)2!a2=f(0)a2=f(0)2!P(0)=f(0)3!a3=f(0)a3=f(0)3!\begin{aligned} P(0) &= f(0) &\Rightarrow \quad a_0 &= f(0) \\ P'(0) &= f'(0) &\Rightarrow \quad a_1 &= f'(0) \\ P''(0) &= f''(0) &\Rightarrow \quad 2!\,a_2 &= f''(0) &\Rightarrow \quad a_2 &= \frac{f''(0)}{2!} \\ P'''(0) &= f'''(0) &\Rightarrow \quad 3!\,a_3 &= f'''(0) &\Rightarrow \quad a_3 &= \frac{f'''(0)}{3!} \end{aligned}

继续这个模式,我们发现 an=f(n)(0)n!a_n = \frac{f^{(n)}(0)}{n!}

将这些值代入多项式:

P(x)=f(0)+f(0)x+f(0)2!x2+f(0)3!x3++f(n)(0)n!xnP(x) = f(0) + f'(0)x + \frac{f''(0)}{2!}x^2 + \frac{f'''(0)}{3!}x^3 + \cdots + \frac{f^{(n)}(0)}{n!}x^n

这就是 nn麦克劳林多项式。当 nn 趋近于无穷大时,我们得到麦克劳林级数

f(x)=n=0f(n)(0)n!xn=f(0)+f(0)x+f(0)2!x2+f(0)3!x3+f(x) = \sum_{n=0}^{\infty} \frac{f^{(n)}(0)}{n!}x^n = f(0) + f'(0)x + \frac{f''(0)}{2!}x^2 + \frac{f'''(0)}{3!}x^3 + \cdots

当我们可视化多项式近似如何收敛到原函数时,麦克劳林级数变得更加清晰。

例如,考虑函数 f(x)=exf(x) = e^x 及其麦克劳林多项式:

P0(x)=1P1(x)=1+xP2(x)=1+x+x22\begin{aligned} P_0(x) &= 1 \\ P_1(x) &= 1 + x \\ P_2(x) &= 1 + x + \frac{x^2}{2} \end{aligned}

e^x 的麦克劳林近似

观察:

  • 每个多项式 Pn(x)P_n(x)x=0x = 0 处匹配函数 f(x)f(x) 及其前 nn 阶导数
  • 随着 nn 增加,近似在更宽的 xx 值范围内变得更准确
  • x=0x = 0 附近,即使是低次近似也相当准确
  • 随着远离 x=0x = 0,我们需要更高次项才能获得良好的近似

对于其他常见函数如 sinx\sin xcosx\cos xln(1+x)\ln(1+x) 也会出现类似的视觉模式,尽管每个函数都有自己的收敛特征。

模块四:常见麦克劳林级数示例

Section titled “模块四:常见麦克劳林级数示例”

以下是一些基本函数的麦克劳林级数展开:

指数函数:

ex=1+x+x22!+x33!+x44!+=n=0xnn!e^x = 1 + x + \frac{x^2}{2!} + \frac{x^3}{3!} + \frac{x^4}{4!} + \cdots = \sum_{n=0}^{\infty} \frac{x^n}{n!}

正弦函数:

sinx=xx33!+x55!x77!+=n=0(1)nx2n+1(2n+1)!\sin x = x - \frac{x^3}{3!} + \frac{x^5}{5!} - \frac{x^7}{7!} + \cdots = \sum_{n=0}^{\infty} \frac{(-1)^n x^{2n+1}}{(2n+1)!}

余弦函数:

cosx=1x22!+x44!x66!+=n=0(1)nx2n(2n)!\cos x = 1 - \frac{x^2}{2!} + \frac{x^4}{4!} - \frac{x^6}{6!} + \cdots = \sum_{n=0}^{\infty} \frac{(-1)^n x^{2n}}{(2n)!}

自然对数:

ln(1+x)=xx22+x33x44+=n=1(1)n1xnn\ln(1+x) = x - \frac{x^2}{2} + \frac{x^3}{3} - \frac{x^4}{4} + \cdots = \sum_{n=1}^{\infty} \frac{(-1)^{n-1}x^n}{n}

二项式展开:

(1+x)k=1+kx+k(k1)2!x2+k(k1)(k2)3!x3+(1+x)^k = 1 + kx + \frac{k(k-1)}{2!}x^2 + \frac{k(k-1)(k-2)}{3!}x^3 + \cdots

我们可以利用 exe^x 的麦克劳林级数,令 x=1x = 1 来计算 ee 的值:

e=e1=1+1+12!+13!+14!+e = e^1 = 1 + 1 + \frac{1}{2!} + \frac{1}{3!} + \frac{1}{4!} + \cdots

让我们计算逐步精确的近似值:

1=1.00001+1=2.00001+1+12=2.50001+1+12+16=2.66671+1+12+16+124=2.70831+1+12+16+124+1120=2.7167\begin{aligned} 1 &= 1.0000 \\ 1 + 1 &= 2.0000 \\ 1 + 1 + \frac{1}{2} &= 2.5000 \\ 1 + 1 + \frac{1}{2} + \frac{1}{6} &= 2.6667 \\ 1 + 1 + \frac{1}{2} + \frac{1}{6} + \frac{1}{24} &= 2.7083 \\ 1 + 1 + \frac{1}{2} + \frac{1}{6} + \frac{1}{24} + \frac{1}{120} &= 2.7167 \end{aligned}

ee 的实际值精确到小数点后5位是 2.71828。即使只有几项,我们也能得到相当准确的近似。

例题:用麦克劳林级数计算 sin(0.1)\sin(0.1)

Section titled “例题:用麦克劳林级数计算 sin⁡(0.1)\sin(0.1)sin(0.1)”

我们可以用麦克劳林级数计算 sin(0.1)\sin(0.1)

sin(0.1)=0.1(0.1)33!+(0.1)55!(0.1)77!+\sin(0.1) = 0.1 - \frac{(0.1)^3}{3!} + \frac{(0.1)^5}{5!} - \frac{(0.1)^7}{7!} + \cdots

计算:

0.1=0.10000000.1(0.1)36=0.10.0001667=0.09983330.0998333+(0.1)5120=0.0998333+0.0000000833=0.0998334\begin{aligned} 0.1 &= 0.1000000 \\ 0.1 - \frac{(0.1)^3}{6} &= 0.1 - 0.0001667 = 0.0998333 \\ 0.0998333 + \frac{(0.1)^5}{120} &= 0.0998333 + 0.0000000833 = 0.0998334 \end{aligned}

sin(0.1)\sin(0.1) 精确到小数点后7位的实际值是 0.0998334。仅用三项就得到了极其精确的近似,展示了麦克劳林级数对于较小 xx 值可以多快收敛。

模块五:泰勒级数——推广麦克劳林级数

Section titled “模块五:泰勒级数——推广麦克劳林级数”

函数 f(x)f(x)x=ax = a 处无穷次可微的泰勒级数为:

f(x)=n=0f(n)(a)n!(xa)nf(x) = \sum_{n=0}^{\infty} \frac{f^{(n)}(a)}{n!}(x-a)^n

前提是这个无穷级数在 aa 的某个邻域内的 xx 值处收敛于 f(x)f(x)

泰勒级数与麦克劳林级数的关系

Section titled “泰勒级数与麦克劳林级数的关系”

麦克劳林级数只是泰勒级数在展开中心 a=0a = 0 时的特殊情况。

何时使用泰勒级数 vs. 麦克劳林级数:

  • 当你关注函数在 x=0x = 0 附近的行为时,使用麦克劳林级数
  • 当你关注函数在 x=ax = a 附近的行为时,使用在 x=ax = a 处展开的泰勒级数
  • 泰勒级数对于接近其中心点 aa 的值通常收敛更快

例子: 如果我们想在 x=2x = 2 附近近似 ln(x)\ln(x),以 a=2a = 2 为中心的泰勒级数会比以 a=0a = 0 为中心的麦克劳林级数提供更好的结果。

模块六:用级数方法求解微分方程

Section titled “模块六:用级数方法求解微分方程”

例题:求解 y+2y=xyy'' + 2y' = xy 及初始条件

Section titled “例题:求解 y′′+2y′=xyy'' + 2y' = xyy′′+2y′=xy 及初始条件”

让我们求解微分方程 y+2y=xyy'' + 2y' = xy,初始条件为 y(1)=1y(1) = 1y(1)=2y'(1) = 2

由于初始条件在 x=1x = 1 处给出,我们使用以 x=1x = 1 为中心的泰勒级数:

y(x)=n=0y(n)(1)n!(x1)ny(x) = \sum_{n=0}^{\infty} \frac{y^{(n)}(1)}{n!} (x-1)^n

第一步: 初始条件给出:

y(1)=y(0)(1)=1y(1)=y(1)(1)=2\begin{aligned} y(1) &= y^{(0)}(1) = 1 \\ y'(1) &= y^{(1)}(1) = 2 \end{aligned}

第二步: 由原方程 y+2y=xyy'' + 2y' = xyx=1x = 1 时:

y(1)+2y(1)=1y(1)y''(1) + 2y'(1) = 1 \cdot y(1)

因此 y(1)=1y(1)2y(1)=1122=3y''(1) = 1 \cdot y(1) - 2 \cdot y'(1) = 1 \cdot 1 - 2 \cdot 2 = -3

第三步: 对原方程求导,得到:

y+2y=y+xyy''' + 2y'' = y + xy'

因此 y(1)=y(1)+1y(1)2y(1)=1+122(3)=9y'''(1) = y(1) + 1 \cdot y'(1) - 2 \cdot y''(1) = 1 + 1 \cdot 2 - 2 \cdot (-3) = 9

第四步: 三阶级数解为:

y(x)=1+2(x1)32(x1)2+96(x1)3=1+2(x1)32(x1)2+32(x1)3y(x) = 1 + 2(x-1) - \frac{3}{2}(x-1)^2 + \frac{9}{6}(x-1)^3 = 1 + 2(x-1) - \frac{3}{2}(x-1)^2 + \frac{3}{2}(x-1)^3