在 python 中具有可变积分限制的图

Plot with variable limit of integration in python

我有函数 f(x) 并且我想将函数从 0 积分到某个点 x 在区间 (0,2) 中。我知道如何在 mathematica 中解决这个问题,但是我不知道如何在 python.

中解决这个问题

数学

OM=0.3
OL=0.7
f[x_] := ((1 + x)^3 OM + OL)^(-1/2);
Plot[NIntegrate[f[x], {x, 0, z2}], {z2, 0, 2}]

我的代码在python:

import numpy as np
import matplotlib.pyplot as plt
from scipy import integrate

y = np.linspace(0, 2, 20)
Om=0.3
Ol=1-Om

def H(x):
    return (Om*(1+x)**3 +Ol)**(-1./2)

#Integral from a single point in the inverval
print quad(H,0,2)

我怎样才能在 python 中做完全相同的事情?

[integrate.quad(H, 0, t)[0] for t in y]

quad的输入是f, a, b,在这里你对y中的所有t进行从0t的整合。