C++中使用Boost求积的三重积分

2024-04-24 19:04:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用C++的高斯-克朗德求积函数编写一个三重积分例程,用于返回一个复杂结果的函数。我没有设置Boost库,如果有其他库符合我的要求,欢迎提供更好的建议。我正在寻找scipy的替代方法,因为它不支持返回复数值的被积函数,这意味着我必须进行两次积分(复数部分和实数部分),我正在寻找一种更快的方法。你知道吗

你知道吗科学整合提供集成f(x,y,z)的tplquad函数。积分间隔甚至可以指定为lambda函数,因此可以在球面域上积分。Scipy还有nquad,它可以集成n维。 到目前为止,我还没有编写类似C++的东西,因为Boost集成没有一个ARGS参数,允许我将额外的参数传递给函数。在Python中,使用scipy的quad 1D集成例程,我可以将当前的y、z值传递给x集成。你知道吗

This answer有代码,显示了我在C++中想做的事情,使用了一个1D集成例程来进行3D集成。你知道吗


Tags: 方法lambda函数间隔科学scipy例程建议