首先,您需要问自己一个问题,是否需要一个将积分作为黑盒的全方位正交例程。如果是这样的话,您只能选择自适应正交,希望该自适应能够抓住被积数中的“困难”点。这就是Piessens等人的原因之一。为高斯-克朗罗德(Gauss-Kronrod)规则选择的规则(这种类型的规则允许您使用相同的函数求值来计算积分的近似值和近似误差的估计值),在自适应方案中应用适度阶数(用最大误差),直到达到所需的公差为止。Wynn-epsilon算法可以提供收敛加速,并且通常在存在端点奇点的情况下提供帮助。
但是,如果您确实知道被积物的“形式”或“类型”,则可以根据需要定制方法,这样就可以根据需要的准确性来限制计算成本。因此,您需要查看以下内容:
被积分
- 平滑度:是否可以通过正交多项式族的多项式近似(很好)(如果这样,高斯正交会很好)
- 奇异性:可以将积分拆分为仅具有端点奇异性的整数(如果这样,则在每个子区间上,IMT规则或双指数正交都可以)
- 评估的计算成本?
- 可以计算被积数吗?还是只有有限的逐点数据可用?
- 高度振荡的被积:寻找Levin型方法。
| x−c |- αCα
积分间隔:有限,半无限或无限。在半无限或无限间隔的情况下,是否可以通过变量转换将它们减小为有限间隔?如果不是,则可以在高斯正交方法中使用Laguerre或Hermite多项式。
通常,我没有用于正交的真实流程图的参考,但是QUADPACK手册(不是Netlib手册,而是真实的手册)具有一个流程图,可以根据要评估的积分选择适当的例程。该书还描述了Piessens等人在算法中的选择。对于不同的例程。
对于低维积分,通常使用嵌套的一维积分。在二维积分(温育)的特殊情况下,对于积分域的不同情况存在积分规则。R. Cools在他的养育配方百科全书中收集了大量规则,并且是Cubpack软件包的主要作者。对于高维积分,通常采用蒙特卡洛类型方法。但是,为了获得合理的准确性,通常需要大量的被评估数。对于低维积分,逼近方法(例如正交/温和/嵌套正交)通常优于这些随机方法。
一般有趣的参考:
- Quadpack,彼得森,罗伯特;de Doncker-Kapenga,Elise;Überhuber,克里斯托夫·W;卡汉纳(David Kahaner)(1983)。QUADPACK:用于自动集成的子程序包。施普林格出版社。书号978-3-540-12553-2
- 数值积分方法:第二版,戴维斯博士和拉比诺维茨博士,2007年,多佛数学书籍,ISBN 978-0486453392