from scipy import integrate
import numpy as np


# integral x^2 en 0 a 4
x2 = lambda x: x**2
print(integrate.quad(x2, 0, 4))
# solucion analitica
print(4**3 / 3.)  

# integral e^-x en 0 a inf
invexp = lambda x: np.exp(-x)
print(integrate.quad(invexp, 0, np.inf))


# integral ax con a= 1, en 0 a 1
f = lambda x, a: a*x
y, err = integrate.quad(f, 0, 1, args=(1,))
print(y)

# integral ax con a= 3, en 0 a 1
y, err = integrate.quad(f, 0, 1, args=(3,))
print(y)
