Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Punto para Parcial Cuántica
Punto para Parcial Cuántica
Método de Runge-Kutta
Para hallar la densidad de probabilidad del el oscilador armónico clásico se necesita encontrar primero
una función dtT para poder definir el la relación tiempo que pasa por un dx y tiempo total (T ) por lo
que inicialmente se define la ecuación de un oscilador clásico
Y el tiempo que se demora en recorre de un extremo a otro corresponde a medio periodo, por lo que:
T ω
Tr = = (2)
2 π
Derivando la ecuación de la posición y despejando dt
dx
dt = (3)
Aωcos(ωt − ϕ)
Dividiendo a ambos lados por T
dt ωdx
= (4)
T r πωAcos(ωt − ϕ)
Pero de la ecuación de la velocidad se puede deducir
Y el segundo termino del marentes de la derecha se sabe que es x(t), por lo que:
√
v = ω A2 − x 2 (6)
1
import numpy as np
import math
import matplotlib . pyplot as plt
for _ in range(int(Paso)):
x = x_0[-1]
y = y_0[-1]
z = z_0[-1]
l1 = h * g(x, y, z)
k1 = h * f(x, y, z, B, E)
l2 = h * g(x + h/2, y + l1/2, z + k1/2)
k2 = h * f(x + h/2, y + l1/2, z + k1/2, B, E)
l3 = h * g(x + h/2, y + l2/2, z + k2/2)
k3 = h * f(x + h/2, y + l2/2, z + k2/2, B, E)
l4 = h * g(x + h, y + l3 , z + k3)
k4 = h * f(x + h, y + l3 , z + k3 , B, E)
Oscilador cuántico
La resolución de este oscilador fue la realizada en clase, partiendo desde la ecuación de Schrödinger,
se llega a una solución de la forma:
α2 x 2
φ(x) = h(x)e− 2 (9)
2
Donde la función h(x) es el producto de una serie que genera polinomios de Hermite (hn (x)) y otro
termino Nn . Donde cada una de estas funciones está representada por:
N
X (−1) s n!(2ξ)n−2s
hn (x) = (10)
s=0
s!(n − 2s)!
n
2
si n es par
Nn =
(11)
n−1
2
si n es impar
Llegando a que para diferentes valores de N, n, s cambia la función del oscilador. Se realiza el código
en phyton en la plataforma de Colab de google y para verificar su veracidad se realiza la graficación
con los primeros 5 estados. Como por ejemplo n = 2 y n = 3
El siguente es el código que se encarga de realizar las gráficas usando las mismas librerı́as: numpy
y matplotlib.pyplot.
# Par metros
#Datos para el Runge - Kutta
xm = 0.5 # Matching
xR0 = 20 # Rango simetrico
h = 0.01 # Delta x para crecimiento
y0 = 0 # Funcion de onda inicial evaluada en el punto inicial para ambos lados
B = 1
##
x0 = -(xR0)
hR = -h # Delta x para decrecimiento
IterL = (xm-x0)/h
IterR = (xR0-xm)/h
# Parametros para hallar la energia de matching
Eo=0.0
dE=0.001
tol=0.01
# Condiciones para aplicar condiciones iniciales
n_0=int(Eo)
n_1=Eo-n_0
3
# Definicion Variables vacias
xL = [0]
yL = [0]
zL = [0]
xR = [0]
yR = [0]
zR = [0]
Df=100
# Graficar el resultado
plt. figure ( figsize =(10 , 5))
plt.show ()
Este realiza su actividad correctamente aproximadamente para n = 63, esto dado que Colab es una
plataforma en lı́nea y el código para los polinomios de Hermite construido en el código seguramente
no está optimizado de manera correcta.