用python实现牛顿-柯特斯公式

2021/10/30 14:09:47

本文主要是介绍用python实现牛顿-柯特斯公式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

import numpy as np
import math
from scipy import integrate

def f(x):
    return math.exp(-x**2)

def g(x):
    return math.exp(-x**2)

def func(a,b,n,g):

    x = np.linspace(a,b,n+1)

    sum = 0
    
    h =(b-a)/n

    for i in range(n):
        
        if i%2 == 0:
            
            sum = sum + 2*g(x[i])
        
        if i%2 != 0:
            
            sum = sum + 4*g(x[i])
            
    sum = (h/3)*(sum -g(x[0])-g(x[n]))
            
    return sum

answer = func(0,1,1000,g)
print(answer)

value, error = integrate.quad(f,0, 1)
print (value,error)

在这里插入图片描述

结果
0.7467996075163496
0.7468241328124271 8.291413475940725e-15



这篇关于用python实现牛顿-柯特斯公式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程