Pythonの3Dのscatter+cmap+SciPyの特殊関数で水素原子の波動関数の電子分布を描いてみる。
Pythonのmatplotlib.pyplotの散布図を描くscatter, 色として実数を入れてcmapを設定すると値に応じて色の濃淡がつけられることを知った。
それなら実験的に水素原子の波動関数を描いてみよう。
波動関数は、、、ああめんどくさいなと思ったら関数を作ってくれている方がいたのでこのCalcPsiを使わしてもらった。
表示はこんな感じで。nlmによってLmaxの値とpsi2maxを割る値を変えないとうまく行かない。
Nmax=100
Lmax=5
Lmin=-5
nlm=[2,1,0]
L = (Lmin, Lmax, Nmax)
psi2=CalcPsi(nlm,L)
x=np.zeros(Nmax**3)
y=np.zeros(Nmax**3)
z=np.zeros(Nmax**3)
c=np.zeros(Nmax**3)
n=0
psi2max=np.max(psi2)
for i in range(len(xi)):
for j in range(len(yi)):
for k in range(len(zi)):
i f np.abs(psi2[i,j,k])>psi2max/8:
x[n]=xi[i]
y[n]=yi[j]
z[n]=zi[k]
c[n]=psi2[i,j,k]
n+=1
fig = plt.figure(figsize=(8,8))
ax = fig.gca(projection='3d')
ax.scatter3D(x,y,z,c=c,s=1,alpha=0.5,cmap=cm.Spectral)
plt.show()
結果:
さっきのサイトに出ていたnlm=653
nlm=430
nlm=320
nlm=210
うーん、もう一声かな、、、黄色いのを何とか消さないとうまくない。
« Python+NumbaでWikipediaのList of chaotic mapsを1つずつ描く(その5) Cliford attractor | トップページ | Python+Scipyでルンゲクッタ8次のDOP853(Dormand&Prince)を使う(その1) まずは準備編 »
「学問・資格」カテゴリの記事
- 高周波(RF・マイクロ波・ミリ波・5G)関連ニュース2021年2月16日 IEEE Microwave Magazineの特集はオールデジタルのRFID、Microwave JournalはEバンド ミリ波通信に衛星や気球を使う話、アメリカの半導体企業がバイデンに投資を迫る、(2021.02.17)
- カオスを生じる電気回路、Chua’s circuitをLTspiceで回路シミュレーションしてみる。(2021.02.19)
- Labyrinth Chaos(迷宮カオス)を生むThomas-Rössler方程式のパラメータbを色々変えて、Python+Scipyでルンゲクッタ8次のDOP853(Dormand&Prince)を使って計算してGIFアニメ(2021.02.16)
- フィッツヒュー・南雲 (FitzHugh-Nagumo) 方程式をPython+Scipyでルンゲクッタ8次のDOP853(Dormand Prince)で計算。(2021.02.23)
- 「水晶振動子の等価回路計算」をカシオの高精度計算サイトkeisan.casio.jpの自作式としてUP! インピーダンスの大きさと位相がグラフ化できる。(2021.02.12)
« Python+NumbaでWikipediaのList of chaotic mapsを1つずつ描く(その5) Cliford attractor | トップページ | Python+Scipyでルンゲクッタ8次のDOP853(Dormand&Prince)を使う(その1) まずは準備編 »
コメント