跳转至

高等数学(四)级数

章节概述

级数是研究无限项求和的数学工具,在数学分析和应用数学中占有重要地位。本章将介绍数项级数、幂级数和傅里叶级数。

学习目标

  • 理解级数的概念和收敛性
  • 掌握级数收敛的判别法
  • 理解幂级数的概念和性质
  • 了解傅里叶级数的基本概念

(一)数项级数

数项级数的定义

数项级数是指形如:

Σ(n=1 to ∞) aₙ = a₁ + a₂ + a₃ + ...
的无穷和。

级数收敛的定义

如果级数的前 n 项和 Sₙ = Σ(k=1 to n) aₙ 当 n → ∞ 时有极限 S,则称级数收敛,S 称为级数的和。

常见级数

1. 等比级数

Σ(n=0 to ∞) arⁿ = a/(1-r)  (|r| < 1)

2. 调和级数

Σ(n=1 to ∞) 1/n  (发散)

3. p-级数

Σ(n=1 to ∞) 1/nᵖ  (收敛当 p > 1)

级数收敛的判别法

1. 比较判别法

如果 0 ≤ aₙ ≤ bₙ,且 Σ bₙ 收敛,则 Σ aₙ 收敛。

极限形式:如果 lim(n→∞) aₙ/bₙ = l (0 < l < ∞),则 Σ aₙ 与 Σ bₙ 同敛散。

2. 比值判别法(达朗贝尔判别法)

计算 lim(n→∞) |aₙ₊₁/aₙ| = ρ - 如果 ρ < 1,级数收敛(绝对收敛) - 如果 ρ > 1(或 ρ = ∞),级数发散 - 如果 ρ = 1,无法判断

3. 根值判别法(柯西判别法)

计算 lim(n→∞) √[n]{|aₙ|} = ρ - 如果 ρ < 1,级数收敛 - 如果 ρ > 1(或 ρ = ∞),级数发散 - 如果 ρ = 1,无法判断

4. 积分判别法

设 f(x) 是 [1, ∞) 上的正的单调递减函数,则 Σ f(n) 与 ∫₁^∞ f(x) dx 同敛散。

5. 交错级数判别法(莱布尼茨判别法)

对于交错级数 Σ(-1)ⁿ⁺¹aₙ (aₙ > 0),如果满足: - aₙ ≥ aₙ₊₁(单调递减) - lim(n→∞) aₙ = 0

则级数收敛。

6. 绝对收敛与条件收敛

  • 如果 Σ|aₙ| 收敛,则 Σaₙ 绝对收敛
  • 如果 Σaₙ 收敛但 Σ|aₙ| 发散,则 Σaₙ 条件收敛
  • 绝对收敛的级数一定收敛

常见级数类型

数值计算方法

import math

def series_sum(terms, n_terms=1000):
    """
    计算级数的前 n 项和

    参数:
        terms: 生成级数项的函数
        n_terms: 项数

    返回:
        float: 级数和的近似值

    示例:
        >>> series_sum(lambda n: 1/2**n, 20)
        0.9999990463256836
    """
    return sum(terms(n) for n in range(n_terms))

def convergence_test(series_func, max_terms=1000, tolerance=1e-10):
    """
    测试级数是否收敛

    参数:
        series_func: 生成级数项的函数
        max_terms: 最大项数
        tolerance: 收敛容差

    返回:
        tuple: (是否收敛, 近似和)
    """
    partial_sum = 0
    for n in range(max_terms):
        term = series_func(n)
        partial_sum += term
        if abs(term) < tolerance:
            return True, partial_sum
    return False, partial_sum

实例分析

实例1:计算等比级数 Σ(n=0 to ∞) (1/2)ⁿ

def geometric_term(n):
    """等比级数的第 n 项"""
    return (1/2)**n

sum_geometric = series_sum(geometric_term, 20)
print(f"Σ(n=0 to ∞) (1/2)ⁿ ≈ {sum_geometric:.10f}")
print(f"理论值: 1/(1-1/2) = 2.0")

实例2:测试调和级数的收敛性

def harmonic_term(n):
    """调和级数的第 n 项"""
    return 1/(n+1)

converges, sum_harmonic = convergence_test(harmonic_term, max_terms=100000)
print(f"调和级数收敛: {converges}")
print(f"前 100000 项和: {sum_harmonic:.6f}")

(二)幂级数

幂级数的定义

幂级数是指形如:

Σ(n=0 to ∞) aₙ(x-x₀)ⁿ
的级数,其中 x₀ 是级数的中心。

收敛半径与收敛区间

收敛半径的求法:

  1. 比值法:R = 1/lim(n→∞) |aₙ₊₁/aₙ|
  2. 根值法:R = 1/lim(n→∞) √[n]{|aₙ|}

收敛区间: - 收敛区间为 (-R, R) - 端点 x = ±R 需要单独判断

阿贝尔定理: - 如果幂级数在 x = x₀ 处收敛,则在 |x| < |x₀| 内绝对收敛 - 如果幂级数在 x = x₀ 处发散,则在 |x| > |x₀| 内发散

幂级数的运算

加法和减法:收敛区间取交集

乘法:柯西乘积

除法:转化为乘法

逐项求导:在收敛区间内可以逐项求导

逐项积分:在收敛区间内可以逐项积分

泰勒级数与麦克劳林级数

泰勒级数:

函数 f(x) 在 x₀ 处的泰勒级数为:

f(x) = Σ(n=0 to ∞) [f⁽ⁿ⁾(x₀)/n!] · (x-x₀)ⁿ

麦克劳林级数(x₀ = 0):

f(x) = Σ(n=0 to ∞) [f⁽ⁿ⁾(0)/n!] · xⁿ

常见泰勒/麦克劳林级数

1. eˣ

eˣ = 1 + x + x²/2! + x³/3! + ... = Σ(n=0 to ∞) xⁿ/n!  (对所有 x)

2. sin x

sin x = x - x³/3! + x⁵/5! - x⁷/7! + ... = Σ(n=0 to ∞) (-1)ⁿx^(2n+1)/(2n+1)!  (对所有 x)

3. cos x

cos x = 1 - x²/2! + x⁴/4! - x⁶/6! + ... = Σ(n=0 to ∞) (-1)ⁿx^(2n)/(2n)!  (对所有 x)

4. ln(1+x)

ln(1+x) = x - x²/2 + x³/3 - x⁴/4 + ... = Σ(n=1 to ∞) (-1)ⁿ⁺¹xⁿ/n  (-1 < x ≤ 1)

5. 1/(1-x)

1/(1-x) = 1 + x + x² + x³ + ... = Σ(n=0 to ∞) xⁿ  (-1 < x < 1)

6. arcsin x

arcsin x = x + x³/(2·3) + (1·3)x⁵/(2·4·5) + ...  (|x| ≤ 1)

实例分析

实例:用泰勒级数计算 e^1

def taylor_exp(x, terms=20):
    """
    用泰勒级数计算 eˣ

    参数:
        x: 指数
        terms: 项数

    返回:
        float: eˣ 的近似值
    """
    result = 0
    for n in range(terms):
        result += x**n / math.factorial(n)
    return result

for terms in [5, 10, 15, 20]:
    approx = taylor_exp(1, terms)
    error = abs(approx - math.e)
    print(f"{terms} 项: e^1 ≈ {approx:.10f}, 误差: {error:.10f}")

(三)傅里叶级数

傅里叶级数的定义

周期为 2π 的函数 f(x) 的傅里叶级数为:

f(x) = a₀/2 + Σ(n=1 to ∞) [aₙ cos(nx) + bₙ sin(nx)]

其中傅里叶系数为:

a₀ = (1/π) ∫[-π, π] f(x) dx
aₙ = (1/π) ∫[-π, π] f(x) cos(nx) dx
bₙ = (1/π) ∫[-π, π] f(x) sin(nx) dx

傅里叶级数的收敛性

狄利克雷收敛定理: - 如果 f(x) 在 [-π, π] 上满足: - 只有有限个第一类间断点 - 只有有限个极值点 - 则 f(x) 的傅里叶级数处处收敛 - 在连续点处收敛于 f(x) - 在间断点处收敛于 [f(x⁺) + f(x⁻)]/2

正弦级数与余弦级数

正弦级数(奇延拓): 如果 f(x) 是奇函数,则 aₙ = 0,级数只含正弦项。

余弦级数(偶延拓): 如果 f(x) 是偶函数,则 bₙ = 0,级数只含余弦项。

一般周期的傅里叶级数

对于周期为 2L 的函数,作变量替换 t = πx/L,得到:

f(x) = a₀/2 + Σ(n=1 to ∞) [aₙ cos(nπx/L) + bₙ sin(nπx/L)]

其中:

a₀ = (1/L) ∫[-L, L] f(x) dx
aₙ = (1/L) ∫[-L, L] f(x) cos(nπx/L) dx
bₙ = (1/L) ∫[-L, L] f(x) sin(nπx/L) dx

实战练习

练习1:计算级数和

计算 Σ(n=1 to ∞) 1/n²

def p_series_term(n, p=2):
    """p-级数的第 n 项"""
    return 1/(n+1)**p

sum_p2 = series_sum(p_series_term, 10000)
print(f"Σ(n=1 to ∞) 1/n² ≈ {sum_p2:.10f}")
print(f"理论值: π²/6 ≈ {math.pi**2/6:.10f}")

练习2:用泰勒级数计算 sin x

def taylor_sin(x, terms=10):
    """
    用泰勒级数计算 sin x

    参数:
        x: 角度(弧度)
        terms: 项数

    返回:
        float: sin x 的近似值
    """
    result = 0
    for n in range(terms):
        sign = (-1)**n
        term = sign * x**(2*n+1) / math.factorial(2*n+1)
        result += term
    return result

x = math.pi/4
for terms in [3, 5, 7, 9]:
    approx = taylor_sin(x, terms)
    error = abs(approx - math.sin(x))
    print(f"{terms} 项: sin({x:.4f}) ≈ {approx:.10f}, 误差: {error:.10f}")

练习3:判断级数收敛性

def test_convergence():
    """测试各种级数的收敛性"""

    # 测试1: 等比级数 Σ(1/2)ⁿ
    converges, sum_val = convergence_test(lambda n: (1/2)**n)
    print(f"等比级数 Σ(1/2)ⁿ: 收敛={converges}, 和≈{sum_val:.6f}")

    # 测试2: p-级数 Σ 1/n² (p=2 > 1, 收敛)
    converges, sum_val = convergence_test(lambda n: 1/(n+1)**2, max_terms=10000)
    print(f"p-级数 Σ 1/n²: 收敛={converges}, 和≈{sum_val:.6f}")

    # 测试3: 调和级数 Σ 1/n (发散)
    converges, sum_val = convergence_test(lambda n: 1/(n+1), max_terms=100000)
    print(f"调和级数 Σ 1/n: 收敛={converges}, 部分和≈{sum_val:.6f}")

test_convergence()

练习4:用泰勒级数计算 eˣ

def taylor_exp(x, terms=20):
    """
    用泰勒级数计算 eˣ

    参数:
        x: 指数
        terms: 项数

    返回:
        float: eˣ 的近似值
    """
    result = 0
    for n in range(terms):
        result += x**n / math.factorial(n)
    return result

for terms in [5, 10, 15, 20]:
    approx = taylor_exp(1, terms)
    error = abs(approx - math.e)
    print(f"{terms} 项: e^1 ≈ {approx:.10f}, 误差: {error:.10f}")

练习5:收敛半径计算

def find_radius_of_convergence(coeffs):
    """
    计算幂级数的收敛半径

    参数:
        coeffs: 系数列表 [a₀, a₁, a₂, ...]

    返回:
        float: 收敛半径
    """
    max_iter = len(coeffs) - 1
    ratios = []

    for n in range(max_iter):
        if abs(coeffs[n]) > 1e-15:
            ratio = abs(coeffs[n+1] / coeffs[n])
            ratios.append(ratio)

    if ratios:
        R = 1.0 / max(ratios)
        return R
    return float('inf')

# 示例:Σ xⁿ/n! 的收敛半径
coeffs = [1/math.factorial(n) for n in range(20)]
R = find_radius_of_convergence(coeffs)
print(f"Σ xⁿ/n! 的收敛半径: R = {R:.2f} (理论值: ∞)")

章节小结

本章介绍了级数的基本概念:

  1. 数项级数:理解级数的定义和收敛性,掌握收敛判别法
  2. 幂级数:理解幂级数的概念和收敛半径
  3. 泰勒级数:掌握泰勒级数展开的方法
  4. 傅里叶级数:了解傅里叶级数的基本概念

级数是数学分析的重要工具,在近似计算和函数表示中有广泛应用。

常见级数判别法总结

判别法 适用范围 关键公式
比较判别法 正项级数 与已知级数比较
比值判别法 正项级数 lim |aₙ₊₁/aₙ|
根值判别法 正项级数 lim √[n]{|aₙ|}
积分判别法 正项级数 与反常积分比较
莱布尼茨判别法 交错级数 单调递减趋于0

常见泰勒级数总结

函数 泰勒级数 收敛域
eˣ Σ xⁿ/n! (-∞, +∞)
sin x Σ (-1)ⁿx^(2n+1)/(2n+1)! (-∞, +∞)
cos x Σ (-1)ⁿx^(2n)/(2n)! (-∞, +∞)
ln(1+x) Σ (-1)ⁿ⁺¹xⁿ/n (-1, 1]
1/(1-x) Σ xⁿ (-1, 1)

下一步

继续学习第五章:多元函数微积分,学习多元函数的极限、偏导数、重积分等内容。


重点提醒: - 级数收敛的判别法很重要 - 泰勒级数是函数近似的重要工具 - 幂级数的收敛半径需要掌握 - 傅里叶级数在信号处理中有广泛应用