仕事で図を作る必要があったので、練習がてらまとめた。
位相シフトなどの概念にについては、wikipedia等を参照して頂きたい。
散乱振幅 - Wikipedia
簡単に言うと、「ポテンシャルが無い時の波は、ポテンシャルによってどれくらい変調されたか?」を表す量である。
ある部分波(角運動量)の位相シフトに対するサイト行列は、次の式で与えられる。
位相シフトは、ある程度エネルギーが高くなると単調に減少する。
ここでは簡略化し、一次で減少するとする。
この時のの実部(赤点)と虚部(青点)、及びそのArgand diagramは次の図のようになる。
左巻きでグルグルする。
仮に、一次で単調に増加するようにすると、右巻きでグルグルする。
向きは後で大事になる。
次に、(準)共鳴準位がある場合を考える。
共鳴準位のエネルギー位置で位相は急激に変化し、最終的にずれる。
これを簡単にで表すとする。ただし、原点を通る様に下駄を履かせている。
Argand diagramにおいて、共鳴準位のある20 eV近傍で、急激に(分かりにくいが)右巻きに回転しているのがわかる。
最後に、両方を組み合わせた位相シフトの変化を考える。
急に右巻きの成分が現れ、共鳴準位のから遠ざかるとまた左巻きに戻っているのがわかるかと思う。
この様な挙動から、共鳴準位の有無を観察することが出来る。
以下ソースコード。
import numpy as np from matplotlib import pyplot as plt def wavenumbers( energy_ev ): RYD2EV = 13.605 EV2RYD = 1. / RYD2EV return np.sqrt( energy * EV2RYD ) energy = np.linspace( 1., 100, 199 ) #delta = - energy / 20. #delta = np.arctan( energy - 20 ) + np.pi / 2. delta = - energy / 20. + np.arctan( energy - 20 ) + np.pi / 2. plt.plot( energy, delta ) plt.xlabel( "Energy [eV]" ) plt.ylabel( "$\delta_l$" ) plt.show() #plt.savefig( "delta.png" ) #plt.close() t_l = ( np.exp( 2.j * delta ) - 1. ) / ( 2.j * wavenumbers( energy ) ) plt.plot( energy, t_l.real, "ro" ) plt.plot( energy, t_l.imag, "bo" ) plt.xlabel( "Energy [eV]" ) plt.ylabel( "$t_l$" ) plt.show() #plt.savefig( "tl.png" ) #plt.close() fig = plt.figure( figsize = ( 4.72, 4.72 ) ) ax = fig.add_subplot( 1, 1, 1 ) ax.plot( t_l.real, t_l.imag, "go" ) ax.set_xlim( - 1.1 * m_t, 1.1 * m_t ) ax.set_ylim( - 0.1 * m_t, 2.1 * m_t ) ax.set_xlabel( "Re( $t_l$ )" ) ax.set_ylabel( "Im( $t_l$ )" ) for ie, ene in enumerate( energy ): if ene % 10 == 0: ax.text( t_l.real[ie], t_l.imag[ie], "{:4.0f} eV".format( energy[ie] ) ) plt.show() #plt.savefig( "arg.png" ) #plt.close()