Контрольная работа по "Моделированию"
Автор: melvit • Август 3, 2023 • Контрольная работа • 574 Слов (3 Страниц) • 176 Просмотры
Группа M32041 | К работе допущен |
Студент Ладыгина Виктория и Шашкевич Эльфрида | Работа выполнена Ладыгиной Викторией и Шашкевич Эльфридой |
Преподаватель Музыченко Яна Борисовна | Отчет принят_Лабунцовым Виктором |
Рабочий протокол и отчет по
моделированию №5
1. Задачи, решаемые при выполнении работы.
Частица массы находится в потенциальной яме со следующими параметрами[pic 1]
[pic 2]
[pic 3]
(a) Найти параметры α, β
(b) Показать как будет меняться со временем данная волновая функция
2. Рабочие формулы.
[pic 4]
[pic 5]
3. Ход работы
Функция psi(n, x, t)
- Решаем интеграл функция которого представлена в def f(x).
- Из формул приведенных выше находим альфу, бета и энергию.
- Возвращаем вычисленное значение пси(x, t)
from scipy import integrate
from scipy import constants
import numpy as np
import matplotlib.pyplot as plt
a = 1
def f(x):
return (-np.abs(x)+a)**2
def psi(n, x, t):
integral, err = integrate.quad(f, -a, a)
alpha = 1/integral**2
beta = alpha*a
E_n = (np.pi**2 * constants.h**2)/(2*constants.m_e*a)*n**2
psi_x = alpha*np.sin((n*np.pi)/a*x) + beta*np.cos((n*np.pi)/a*x)
return psi_x*np.exp(-1j/constants.h*E_n*t)
x_list = np.linspace(-2, 2, 100)
t_list = np.linspace(0, 4, 100)
psi_list_n1 = np.zeros((len(t_list)), dtype=np.complex128)
psi_list_n2 = np.zeros((len(t_list)), dtype=np.complex128)
psi_list_n3 = np.zeros((len(t_list)), dtype=np.complex128)
for i in range(100):
psi_list_n1[i] = psi(1, x_list[i], t_list[i])
psi_list_n2[i] = psi(2, x_list[i], t_list[i])
psi_list_n3[i] = psi(3, x_list[i], t_list[i])
plt.figure(1)
plt.plot(x_list, np.abs(psi_list_n1), label="при n = 1")
plt.xlabel('x')
plt.ylabel('|ψ(x)|')
plt.title('Wave Function')
plt.legend()
plt.figure(2)
plt.plot(x_list, np.abs(psi_list_n2), label="при n = 2")
plt.xlabel('x')
plt.ylabel('|ψ(x)|')
plt.title('Wave Function')
plt.legend()
plt.figure(3)
plt.plot(x_list, np.abs(psi_list_n3), label="при n = 3")
plt.xlabel('x')
plt.ylabel('|ψ(x)|')
plt.title('Wave Function')
plt.legend()
plt.show()
...