📜  cos(x)系列和的程序(1)

📅  最后修改于: 2023-12-03 14:40:13.518000             🧑  作者: Mango

介绍 cos(x)系列和的程序

在数学中,cos(x)系列和是指以余弦函数的幂级数和为形式的级数,即

$$ \cos(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n)!}x^{2n} $$

其中,$n!$ 是 $n$ 的阶乘,$(2n)!$ 是 $2n$ 的阶乘。

在计算机科学中,我们可以实现一个程序来计算 $\cos(x)$ 的近似值,通过加上一系列有限的项来逼近无限级数。

实现

以下是一个使用 Taylor 级数计算 $\cos(x)$ 的 Python 程序示例:

import math

def cos_series(x, n=10):
    """计算cos(x)的近似值,n为级数项数"""
    # 初始化变量
    result = 0
    sign = 1
    # 循环计算级数
    for i in range(0, n):
        # 计算当前项
        term = sign * (x**(2*i)) / math.factorial(2*i)
        # 加上当前项
        result += term
        # 更新符号
        sign *= -1
    return result

该函数接受两个参数:$x$ 表示要计算 $\cos(x)$ 的值,$n$ 表示级数项数。默认项数为 $10$。

在函数内部,我们循环计算级数,每次计算当前项并加到结果上。在每次计算项时,我们会根据当前次数的奇偶性来确定符号,并用 $\frac{x^{2n}}{(2n)!}$ 来计算项的值。

返回的结果就是 $\cos(x)$ 的近似值。

使用

我们可以使用以下代码来测试上述函数:

# 计算 pi/4 的余弦值
x = math.pi / 4
cos_val = cos_series(x, 100)

# 显示结果
print("cos({}) ≈ {}".format(x, cos_val))
print("cos({}) ≈ {}".format(x, math.cos(x)))

输出应该类似于:

cos(0.7853981633974483) ≈ 0.7071067811865488
cos(0.7853981633974483) ≈ 0.7071067811865476

其中,第一行是我们实现的函数计算出来的 $\cos(x)$ 近似值,第二行是 Python 内置函数 math.cos(x) 计算出来的精确值。

这表明我们的级数计算方法可以非常有效地近似 $\cos(x)$ 的值。