【发布时间】:2017-11-13 19:09:29
【问题描述】:
我正在尝试对一个函数进行三重集成。
from scipy.integrate import tplquad
S = 40
P1 = 0.37
P2 = 0.43
P3V = .05
UND = 1 - (P1+P2+P3V)
b1 = S*P1
b2 = S*P2
b3 = S*P3
b4 = S*UND
x1 = 48
x2 = 47
x3 = 4
x4 = 1
tp1 = tplquad(lambda x, y, z: ((x**(b1 + x1 - 1))*(y**(b2 + x2 - 1))*(z**(b3 + x3 - 1))*((1-x-y-z)**(x4+b4-1))), 0, 1, lambda z: z, lambda z: (1-z)/2, lambda x,z: 0, lambda x,z: x)
这是投掷:
ValueError: 负数不能乘以分数次方
我正在尝试集成功能(x**(b1 + x1 - 1))*(y**(b2 + x2 - 1))*(z**(b3 + x3 - 1))*((1-x-y-z)**(x4+b4-1))
超出以下限制:
首先,
y从 0 到 x,那么,
x从 z 变为 (1-z)/2,然后,
z从 0 变为 1。
谁能告诉我我做错了什么?
【问题讨论】:
标签: python python-2.7 math scipy integration