本文内容来自于学习麻省理工学院公开课:单变量微积分-数值积分-网易公开课
用python解方程组_星-耀的博客-CSDN博客_python解方程组
开发环境准备:CSDN
目录
1、黎曼集合(Riemann sums) 。。。。。(老师语:效率低, 而且结果不令人满意)
2、梯形法 。。。。。。(老师语:效率低, 而且结果不令人满意)
3、辛普森方法(Simpson's rule)。。。(老师语:神奇的方法)
二、数值积分
1、黎曼集合(Riemann sums) 。。。。。(老师语:效率低, 而且结果不令人满意)
这个就是把函数曲线下面到x轴按 分为n个矩形相加得到面积的那个
目标:平均值和累加y 来得到 的近似值
左侧和:
右侧和:
用刚刚的权重函数做个例子
x = symbols('x')
expr = 2 *np.pi * x * np.e**(-x**2)
DrawXY(0,3,100,expr,'blue','2 *np.pi * x * e**(-x**2)',plt)
DrawRects(0,3,20,expr,'gray',plt, label='rect')
plt.legend(loc='upper left')
plt.show()
添加图片注释,不超过 140 字(可选)
2、梯形法 。。。。。。(老师语:效率低, 而且结果不令人满意)
这个方法和黎曼和的方法类似,就是不简单的切分矩形,而是换成根据平局的间隔 切分出不同的梯形,再累加。
从结果看明显比黎曼和要好些....
(黎曼左侧和+黎曼右侧和) / 2
3、辛普森方法(Simpson's rule)。。。(老师语:神奇的方法)
(如下图)按平均距离 分割曲线到x轴的空间,分割份数必须为偶数,用抛物线连接这两份 \Delta x切割的图形中的3个顶点
这个切割的图形的公式=底边*抛物线的3个组成点的平均值(这个平均值是加权平均值)
。。。。。。(这里可以看出这条中线的y值权重大于其他两个,抛物线即是如此)
(注:在画抛物线的过程中需要用到解方程组,抛物线的公式 , 把3个顶点的坐标代入即可取得a,b,c的值)
x = symbols('x')
expr = 2 *np.pi * x * np.e**(-x**2)
DrawXY(0,3,100,expr,'blue','2 *np.pi * x * e**(-x**2)',plt)
DrawParabola(0,3,20,expr,'red',plt, label='Parabola')
plt.legend(loc='upper left')
plt.show()
在与上面两种方法比较后,可以发现这种方法确实更优! 面积公式:
模式
模式:14242....41
面积公式: