Matlab中数值积分的准确性

4

我试图在一个矩形区域上集成一个分析函数(由sqrt和三角函数组合而成)。这个区域内没有奇异点,看起来很适合使用 dblquad。我的问题是如何评估Matlab提供给我的数值的准确性。如果不知道积分的精确值,我们如何证明这些有效数字?当你需要给出一定精度的值时,你应该能够说明其正确性。如果使用Matlab计算,是否可能达到这个目标?

2个回答

2

除非您另行设置,否则dblquad将使用默认容差阈值(在最新版本中为10-6)来计算绝对积分误差。积分的近似值将在指定容差范围内产生误差。


1
你可以查看dblquad的源代码,它会使用一定数量的“步骤”。我猜你可以创建一个新的m文件,提取使积分起作用的重要部分,并尝试调整步数,直到计算机需要很长时间并且结果不变。个人而言,我使用自定义辛普森规则进行数值积分,只需将N(步数)更改为较大的数字即可。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接