Я пытаюсь создать y в виде массива, чтобы создать функцию, повторяющуюся через дзета, которая зависит от E, используя цикл for. Однако значения не добавляются в список.
Я также пытался определить переменные и математическую функцию как две разные функции кодирования
снимок экрана
import cmath
import matplotlib.pyplot as plt
a = 2*10**-15
Vo = 83*10**6
m = 1.6726*10**(-27)
pi = cmath.pi
E = []
E.append(-83*10**6)
hbar = 6.62607015*10**(-34)/ pi
K = 16.032280*10**6
y = []
y.append(51311.18131)
def variables(y, E):
for i in range(1, 83, 1):
alpha = cmath.sqrt(2*m*(E[i-1]+Vo)/(hbar**2))
zeta = alpha*a
eta = cmath.sqrt(k - zeta**2)
y[i] = zeta*cmath.tan(zeta) - eta
E[i] = E[i-1] + 1
return y, E
print('E = ', E, 'Y = ', y)
plt.plot(E, y)
На данный момент программа должна отображать значения y как функцию дзеты, которая изменяется с энергией.