我试图在一个100x100点的网格上计算一个函数f(x,y)。该函数是一个数值积分。但是,在这些点上评估函数,然后绘制( plt.contourf
),我得到了一个奇怪的结果。我怀疑整合可能是原因,但这种行为是非常意外的,所以我不能确定。积分通过以下公式计算: scipy.integrate.quad(lambda s: f(s,x,y),0,np.Inf)
在x和y坐标上使用嵌套for循环(无网格)
蓝色实线也是我希望我的函数进行评估的地方。显然,它的形状是正确的,但有一些可疑的事情正在发生;我无法解释锯齿状的行为。这些点在对数空间中均匀分布。
如果有帮助的话,我可以展示函数的更多细节。你知道这是怎么回事吗?还有其他数值积分技术可能更好吗?我尝试了quadpy,但它给出了相同的结果,这可能是意料之中的。如果您有任何关于如何进一步调查的想法,我们也将不胜感激
我还绘制了函数f(x,y),沿着1d,而摆动似乎只沿着一个轴。即
对
感谢阅读,非常感谢您的帮助。
1条答案
按热度按时间juud5qan1#
也许只是用一个黎曼和,你用数字编码,这样你就可以调整dx,dy。。。
很抱歉,我没有足够的声誉来写这篇评论。