辛普森求积公式 和 复合辛普森求积公式 Matlab 实现
来源:互联网 发布:Mac怎么改变照片日期 编辑:程序博客网 时间:2024/05/16 17:09
辛普森求积公式 和 复合辛普森求积公式 Matlab 实现
辛普森求积公式
利用区间[a,b]的端点及中点计算积分
∫x2x1f(x)dx≈b−a6×(f(a)+4×f(b−a2)−+f(b))
复合辛普森求积公式
将求积区间[a,b]分为n个区间,每个区间步长为h(
h=b−an )在每个区间求辛普森积分
∫x2x1f(x)dx≈h6∫(f(a)+4×∑k=0n−1f(xk+12)+2×∑k=1n−1f(xk)+f(b))
其中xk+12=xk+h2
体会
这项是复合辛普森求积公式比复合梯形求积公式多出的式子∑k=0n−1f(xk+12)
这项是辛普森求积公式多余出计算量也正是 复合更精确的原因
说明
上述公式是我用mathjax写的,如有错误请联系我修正
敬请指正
概述省略了部分推导过程,请查阅详细推导资料
Matlab 实现代码
辛普森求积公式
将该函数存为m文件
function res = Simpson(f,a,b) format long; if b < a c = b; b = a; a = c; end res = (b-a)/6 * (f(a) + 4*f((a+b)/2) + f(b));end
调用下面语句测试函数
f = inline('sin(x)','x')Trapezium(f,0,pi/2)
复合辛普森求积公式
将该函数存为m文件
function res = ComSimpson(f,n,a,b) format long; if b < a c = b; b = a; a = c; end h = (b-a)/n; d = f(a); for i = a+h:h:b-h d = d + (2 * f(i)); end for i = a+h/2:h:b-h/2 d = d + (4 * f(i)); end d = d + f(b); res = (d * h / 6);
调用下面语句测试函数
f = inline('sin(x)','x')ComSimpson(f,4,0,pi/2)
阅读全文
2 0
- 辛普森求积公式 和 复合辛普森求积公式 Matlab 实现
- Python实现复合辛普森求积公式
- 梯形求积公式 和 复合梯形求积公式 Matlab 实现
- matlab函数公式拟合
- 【matlab】向量公式集
- 公式
- 公式
- 公式
- 公式
- 公式
- 公式
- 公式
- 公式
- 公式
- SQL和DataTable实现公式动态计算
- 神经网络简单实现和公式推导
- 用MATLAB求解拟合公式系数和拟合优度
- matlab公式符号计算推倒
- 两表关联,查询一张表数据是否在另外一张表中也有,并且这部分数据标红排序
- 构造函数,析构函数,复制构造函数的理解
- C++——递归求解函数
- linux进程间通信需要知道的函数
- MatLab编程练习-1.6
- 辛普森求积公式 和 复合辛普森求积公式 Matlab 实现
- Mybatis一级、二级缓存
- 剑指offer——面试题51:数组中重复的数字
- Github教程
- 关于数据库原理2
- 关于数据库原理3
- 大话设计模式----模板方法模式
- 浅谈Tarjan——5(用Tarjan求LCA)
- jvm内存结构