如何解决如何使用 scipy.integrate.quad 将多元积分的支持更改为 [0,1]^k?
以下 k 维积分具有依赖限制(依赖于 gamma
的支持):
from scipy.integrate import nquad
import numpy as np
def func(*args):
gamma = args[-1]
var = np.array(args[:-1])
return (1-1/(1+gamma-np.sum(var)))*np.prod(((1+var)**-2))
def range_func(*args):
gamma = args[-1]
return (0,gamma-sum(args[:-1]))
gamma,k = 10,2
print(nquad(func,[range_func]*k,args=(gamma,) ))
限制在上面的函数 range_func
中定义
return (0,gamma-sum(args[:-1]))
如何将此支持更改为简单的 [0,1]^k
以便 scipy.integrate.nquad
仍然有效?也就是说,每个整数符号都从 0 到 1。我是否只是将其更改为 return (0,1)
?
(source of code,这只是我打算做的一个玩具示例)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。