You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SymPy积分√(1-x²)(x²-1/4)²返回0 是否属于BUG?

该问题属于SymPy的已知BUG

这是SymPy 1.5~1.8版本中积分模块的符号推导逻辑错误导致的问题。

错误原因

SymPy 1.5版本对定积分的默认代换逻辑做了重构,处理包含sqrt(1-x²)的被积函数时会优先触发三角代换规则。但代换后代码没有正确处理偶次幂展开后的绝对值分支判断,在对称区间[-1, 1]上错误地将正负半轴的积分值抵消,最终返回了不符合预期的0结果。

可行的规避方案

你测试的两种方法都是官方推荐的临时解决方案:

  • 将对称区间拆分为[-1, 0]和[0, 1]分别计算后求和
  • 先调用.expand()方法展开被积函数后再执行积分
    除此之外,你也可以选择临时降级到SymPy 1.4版本,或者升级到后续已经修复该问题的更新版本。

内容的提问来源于stack exchange,提问作者Makoto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 14:27:05