我是量子物理和编码的新手,所以我很感激我的代码提供了一些帮助。我试图在一维中绘制一个Bloch波函数,其中c-常数为c(-1)=0.5, c(0)=1 and c(1)=0.5
,我将c值定义为数组。但我不确定这是最好的方法。布洛赫波函数应经过0-10 (Å)
的x值。
我在Python中编码。我无法理解如何编写代码,希望我的函数能够通过c(-1)=0.5, c(0)=1, c(1)=0.5 for every point in x=[0,10]
。
我非常感谢我对代码的一些反馈:
import numpy as np
from matplotlib import peplos as pl
from matplotlib import animation
import math
#Define constants
N=1
n=1
a=2
L=N*n*a
k=( 2 * math.pi ) / L
G = ( 2 * math.pi * n ) / a
x = np.array([ 0 , 10 ])
#Defining the c-values
c = np.array([0.5,1,0.5])
#Defining the function
def psi(x):
return c*(np.exp((1j*(k+G)*x)))
for x in range:
for c in range:
y=psi(x)
pl.plot(x,y)
pl.show()