Я создаю функцию в python и мне нравится наносить ее на множество (0: 100). Итак, я определил вектор x
, но когда я хочу вычислить y
для каждого x
, python возвращает мне эту ошибку:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Кто-нибудь может мне помочь?
g = 9.81
Qave = 0.05
def efficiency(h):
Qn = 3e-5 *np.sqrt(2*g*h)
NN = np.ceil(Qave/Qn)
teta = 0.9 * np.sqrt(2*g*h)
if (teta>=3.025):
Kl = 2e-5
else:
Kl = 2*np.sqrt(1e-9/np.pi*teta)
inverse_efficiency = np.exp(-Kl*1.2e4*teta)
return(inverse_efficiency)
# plot data
x = np.arange(0.01, 100, 0.01)
y=efficiency(x)
plot.plot(time, amplitude)