如何延长数值积分方法,以允许在对象阵列集成?(How to extend numerical int

2019-10-29 17:53发布

我想执行数值积分的插值函数的g(x)相乘,通过一些其它多变量函数f(x,a,b,NN)其中x是变量被集成在与a,b,NN被定义为数字量。

从答案继使用lambdify -符号表达转化为一个数字在四用? 我想看看如何扩展所做的事情,让我乘f一些插值功能。

如果我(也许天真地)乘以插值功能func_spline(x)f如下

expr =  fA(ktsq,qbarsq,NN,a,b,w)

f = lambdify((ktsq,qbarsq,NN,a,b,w), expr, "mpmath")

from scipy.integrate import quad
import mpmath as mp

result = mp.quad(lambda x: func_spline(x)*f(x,qbarsq,NN,a,b,w),[1,(w**2-MJpsi**2)/4])

该系统将返回错误

ValueError: object arrays are not supported

所以,我想知道是否有一种方法可以延伸过这样的对象阵列上面,以允许整合(我假定必须涉及到内插功能)在乘法与数值上定义的函数f

文章来源: How to extend numerical integration method to allow integration over an object array?