2014-06-06 43 views
1

目前我正在試圖計算出一個整體與scipy.integrate.quad,併爲特定值,我得到以下錯誤:SciPy的四路集成:準確警告

/Library/Frameworks/Python.framework/Versions/ 7.3/lib/python2.7/site-packages/scipy/integrate/quadrature.py:616:AccuracyWarning:超過divmax(20)。最新的區別= 2.005732e-02 AccuracyWarning)

看看文檔,我不完全清楚爲什麼會引發此警告,意味着什麼,以及爲什麼它只出現在某些值上。

+0

您能展示生成警告的代碼的最簡單版本嗎?快速瀏覽最新的scipy源代碼顯示,可以在'scipy.integrate.romberg'中引發警告,但顯然不在'scipy.integrate.quad'中。 –

回答

0

in scipy.integrate.quad有一個較低層次的調用差異函數的迭代,它的迭代次數爲divmax次。在你的情況下,默認爲divmax=20。有一些功能可以覆蓋此默認設置 - 例如scipy.integrate.quadrature.romberg可讓您將divmax(默認設置爲10)設置爲關鍵字。當差值函數的公差不滿足時會引發警告。將divmax設置爲更高的值將會運行更長時間,並有望滿足容差要求。