Numeryczne rozwiązanie równania Schrödingera zależnego od czasu
Transkrypt
Numeryczne rozwiązanie równania Schrödingera zależnego od czasu
Numeryczne rozwiązanie równania Schrödingera zależnego od czasu Równanie Schrödingera zależne od czasu dla kwantowej cząstki w polu sił o potencjale V (x) ma postać: Ĥ ψ(x, t) = i h̄ ∂ψ ∂t (1) gdzie Ĥ = − h̄2 ∂2 + V (x) 2m ∂x 2 (2) jest operatorem Hamiltona. Postać bezwymiarowa Jesli mamy zamiar numerycznie rozwiązać równanie Schrödingera to wskazane jest sprowadzenie go do postaci bezwymiarowej: ∂2 ψ(x, t) ∂ψ + V (x) ψ(x, t) = i (3) ∂x 2 ∂t Przyjmując za m masę elektronu, a za jednostkę długości a = 1 nm (nanometr) postać bezwymiarową możemy stosować, jeśli za jednostkę czasu przyjmiemy wielkość: − τ= 2ma2 = 17,3 fs (femtosekund) h̄ (4) Jednostką energii będzie: h̄2 = = 38,1 meV (milielektronowoltów) 2ma2 (5) Schemat różnicowy Zapisując zespoloną funkcję falową w postaci: ψ = ψr + i ψi z równania (3) otrzymamy układ dwóch sprzężonych równań dla części rzeczywistej i urojonej funkcji falowej: ∂ψi ∂t ∂ψr Ĥ ψi (x, t) = + ∂t gdzie bezwymiarowy operator Hamiltona wynosi: Ĥ ψr (x, t) = − 1 (6) (7) ∂2 + V (x) ∂x 2 Pochodne cząstkowe możemy przybliżyć przez centralne różnice: Ĥ = − ∂ψ ψ(x, t + ∆t/2) − ψ(x, t − ∆t/2) ≈ ∂t ∆t (8) (9) ∂2 ψ ψ(x + ∆x, t) + ψ(x − ∆x, t) − 2ψ(x, t) ≈ (10) ∂x 2 (∆x)2 gdzie ∆t jest krokiem czasowym, a ∆x jest krokiem przestrzennym. Równanie różniczkowe (6) przyjmuje postać równania różnicowego ψi (x, t + ∆t/2) − ψi (x, t − ∆t/2) (11) ∆t W bezwymiarowym operatorze Hamiltona należy zamienić drugą pochodną po x na odpowiednie wyrażenie różnicowe zgodnie z równaniem (10). Zamieniając równanie (7) na równanie różnicowe do czasu t dodajmy wielkość ∆t/2: Ĥ ψr (x, t) = − Ĥ ψi (x, t + ∆t/2) = + ψr (x, t + ∆t) − ψr (x, t) ∆t (12) Jeśli znamy wartości ψi w chwili czasu t − ∆t/2 i wartości ψr w chwili czasu t to z równania (11) wynika, że możemy obliczyć wartości ψi w chwili czasu t + ∆t/2 za pomocą następującej zależności: ψi (x, t + ∆t/2) = ψi (x, t − ∆t/2) − ∆t · Ĥ ψr (x, t) (13) Podobnie, jeśli znamy wartości ψr w chwili czasu t i wartości ψi w chwili czasu t + ∆t/2 to z równania (12) wynika, że możemy obliczyć wartości ψr w chwili czasu t + ∆t za pomocą następującej zależności: ψr (x, t + ∆t) = ψr (x, t) + ∆t · Ĥψi (x, t + ∆t/2) (14) Algorytm numeryczny Interesujący nas odcinek (x1 , x2 ) na osi x dzielimy na siatkę x[1..N] złożoną z N węzłów z krokiem ∆x. Chwilowe wartości składowych ψr i ψi funkcji falowej możemy przechowywać w postaci wektorów danych: ψr [1..N] i ψi [1..N], gdzie ψ[l] oznacza wartość ψ w l-tym węźle. Zastosujmy krok całkowania h = ∆t/(∆x)2 . Niech wektor V [1..N] przechowuje wartości potencjału V (x) w węzłach siatki, pomnożone przez (∆x)2 . Wówczas 2 schemat różnicowy zawarty w równaniach (12) i (13) możemy zapisać w postaci następującego algorytmu: for l = 1..N ψi [l] → ψi [l] + h ∗ ψr [l + 1] + ψr [l − 1] − 2ψr [l] − V [l] ∗ ψr [l] for l = 1..N ψr [l] → ψr [l] − h ∗ ψi [l + 1] + ψi [l − 1] − 2ψi [l] − V [l] ∗ ψi [l] Stabilność numeryczna Schemat różnicowy zawarty w równaniach (12) i (13) będzie stabilny numerycznie, jeśli podczas jednego kroku obliczeń względna zmiana wartości funkcji falowej będzie dużo mniejsza niż jeden: ∆ψ 1 (15) ψ Maksymalną wartość drugiej pochodnej funkcji falowej możemy oszacować przez: ∂2 ψ ψ ≈ (16) 2 ∂x (∆x)2 Zgodnie z równaniem Schrödingera maksymalna zmiana funkcji falowej w trakcie jednego kroku czasowego wyniesie: " # ψ ∆ψ ≈ + Vmax ψ ∆t (17) (∆x)2 gdzie Vmax jest maksymalną wartością potencjału. Warunek (15) przyjmuje więc postać: " # ∆ψ 1 = + Vmax ∆t 1 (18) ψ (∆x)2 Jeśli za krok całkowania przyjmiemy h = ∆t/(∆x)2 i oznaczymy Vm = Vmax · (∆x)2 to warunek stabilności numerycznej możemy zapisać jako: h 1 Vm + 1 (19) Warunek początkowy Jako warunek początkowy dla numerycznego rozwiązania równania Schrödingera zależnego od czasu przyjmijmy tak zwaną paczką gaussowską: ψ(x, 0) = e−(x−x0 ) /σ · eikx 2 3 2 (20) Opisuje ona cząstkę kwantową zlokalizowaną w pobliżu punktu x0 z niepewnością położenia σ. Porusza się ona w prawo z prędkością grupową vg = h̄k/m. Fale de Broglie’a wykazują dyspersję, to znaczy ich prędkość fazowa v f = ω /k zależy od długości fali. Skutkiem dyspersji jest rozpływanie się paczki gaussowskiej. Niepewność położenia cząstki rośnie w czasie zgodnie z nastepującym wzorem: p (21) σ(t) = σ · 1 + (t/t0 )2 gdzie wielkość t0 = mσ 2 /h̄ nazywamy czasem rozpływania się paczki. Stosując jednostki wymienione wyżej przy zapisie bezwymiarowej postaci równania Schrödingera możemy napisać: v g = 2k, t0 = σ 2 /2. W przypadku symulacji rozpraszania paczki gaussowskiej na barierze potencjału należy tak dobrać v g i t0 , aby paczka dostatecznie szybko dobiegła do bariery i nie zdążyła przedwcześnie się rozpłynąć. Krok całkowania h należy dobrać do wysokości bariery zgodnie ze wzorem (19). Przedział całkowania (x1 , x2 ) powinien być na tyle duży, aby paczka gaussowska nie zdążyła dojść do jego granic. W przeciwnym przypadku pojawią się niepożądane odbicia1 . 1 Można ich uniknąć stosując tak zwane absorbujące warunki brzegowe. 4