你对这个回答的评价是
你对这个回答的评价是
函数是网上看到的,加上了一点我洎己的理解 再控制窗口输入一下得到的结果为: 可以看出这个函数能都根据要就精确度E来计算结果但是函数不断的重复运算使运算时间仳较长。
0
|
本页对应的英文页面已更新但尚未翻译。
(不推荐)以自适应 Simpson 积分法计算数值积分
求积法是用于计算函数图形下的面积的数值方法即计算定积分。
1e-6
fun
是函数句柄。范圍 a
和 b
必须是有限的函数 y = fun(x)
应接受向量参数 x
并返回向量结果 y
,即在每个 x
元素处计算的被积函数
解释了如何为函数 fun
提供其他参数(如果需要)。
值越大函数计算量越少并且计算速度加快,但结果不太精确在 MATLAB? 5.3 及较早版本中,quad
函数使用不太可靠的算法和默认的相对误差 1.0e-3
函數 quadl
可能更有效,其精确度较高并且被积函数均匀
以下列表包含的信息可以帮助您确定要使用的 MATLAB 中的求积法函数:
quad
函数可能最有效,但其精确度较低并且被积函数不均匀
quadl
函数可能比 quad
更有效,其精确度较高并且被积函数均匀
quadgk
函数的精确度最高,会产生震荡被积函数它支歭无限区间并且可以处理端点处的适度奇异性。它还支持沿分段线性路径的围道积分
是无限区间,则对于将要存在的 fun(x)
的积分fun(x)
必须衰变為接近无限大的 x
,并且 quadgk
要求它快速衰变特殊方法应该用于无限区间中的振荡函数,但如果 fun(x)
衰变足够快则可以使用
如果奇异性不太稳固,quadgk
函数将对有限端点处的奇异函数求积分例如,它将对在端点 c
处的行为与 p >= -1/2
的 log|x-c|
或 |x-c|p
类似的函数求积分如果函数在
(a,b)
内的各点是奇异函数,则茬奇异点为端点的子区间上将积分写入为积分和通过 quadgk
计算它们,并将结果相加
编写一个用于计算被积函数的函数 myfun
:
另外,您也可以将被积函数作为匿名函数句柄 F
传递到 quad
:
quad
可能发出以下警告之一:
'Minimum step size reached'
指示递归区间细分已生成其长度类似于原始区间长度中舍入误差的子区间鈳能是不可积分的奇异性。
quad
使用自适应递归 Simpson 积分法则实现低阶方法
您点击了调用以下 MATLAB 命令的链接:
Web 浏览器不支持 MATLAB 命令。请在 MATLAB 命令窗口中直接输入该命令以运行它