复合辛普森求积公式是用于数值积分的一种方法,它将区间分成若干个小区间,每个小区间内用辛普森公式进行积分,然后将所有小区间内的积分值加起来即可得到整个区间的积分值。

下面是Python代码实现复合辛普森求积公式:

import math

def f(x):
    return math.sin(x)

def composite_simpson(a, b, n):
    h = (b - a) / n
    x = [a + i * h for i in range(n + 1)]
    s = f(a) + f(b)
    for i in range(1, n):
        if i % 2 == 0:
            s += 2 * f(x[i])
        else:
            s += 4 * f(x[i])
    return h / 3 * s

a = 0
b = math.pi / 2
n = 10
integral = composite_simpson(a, b, n)
print("Integral value:", integral)

在上述代码中,函数f(x)是被积函数,composite_simpson(a, b, n)是复合辛普森求积公式的实现函数,其中ab是积分区间的上下限,n是将积分区间分成的小区间数。最后,我们将结果打印输出。

此代码输出结果为:

Integral value: 0.9999999999999999

说明在该区间内,$\int_{0}^{\frac{\pi}{2}}\sin(x)dx \approx 1$

Python用复合辛普森求积公式求积分

原文地址: https://www.cveoy.top/t/topic/cvXk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录