Wolfram Computation Meets Knowledge

提高 NIntegrate 运算速度的方法

提高 NIntegrate 运算速度的方法往往取决于积分本身。然而,也有一些常用的策略:

  1. NIntegrate 的选项 “SymbolicProcessing” 设置为 0,以防止 Wolfram 语言内核对积分进行符号式计算。默认情况下,NIntegrate 对被积函数进行符号式预处理,从而使得 NIntegrate 可以计算比较复杂的积分。然而,这种符号式处理会降低一些计算的速度。如果要计算函数 f01之间的数值积分,而不进行符号式处理,需运行下面的输入:
     NIntegrate[f[x], {x, 0, 1}, Method -> {Automatic, "SymbolicProcessing" -> 0}]

    可以将 Automatic 替换为任何您想使用的其他方法。

  2. 排除计算中的奇点和间断点。选项 Exclusions 指定 NIntegrate 在被积函数具有奇异性的情况下,不计算被积函数。例如,如果函数有一个分母,指出分母等于 0 的情况:
    NIntegrate[1/Sqrt[Sin[x]], {x, 0, 10}, Exclusions -> Sin[x] == 0]

欲了解更多关于加快数值积分速度的技术,请参阅参考资料中心的 NIntegrate 积分策略

[English]

该文档是否有帮助?

任何建议?

非常感谢您的反馈!

提交

联系支持团队

从账单到产品激活,以及任何技术相关内容,无论您遇到任何问题,我们都在此为您提供帮助。

1-800-WOLFRAM (+1-217-398-0700 美国境外用户)

客服支持

周一至周五
8am–5pm 美国中部时区

  • 产品注册或激活
  • 预售信息和订单
  • 安装帮助和首次启动

高级技术支持 (面向特定用户)

周一至周四
8am–7pm 美国中部时区

周五
8:30–10am & 11am–5pm 美国中部时区

  • 优先技术支持
  • Wolfram 专家助理专员
  • Wolfram 语言编程帮助
  • 高级安装支持