You are on page 1of 15

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

Symulacje
komputerowe
w fizyce
Autor: Maciej Matyka
ISBN: 83-7197-713-1
Format: B5, stron: 194
Zawiera CD-ROM

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl

Ksika prezentuje algorytmy umozliwiajce komputerowe symulowanie rozmaitych


procesw fizycznych. Po przedstawieniu metody rnicowej rozwizywania
zwyczajnych rwna rniczkowych, Autor pokazuje, w jaki sposb zastosow j przy
rozwizywaniu konkretnych problemw fizycznych.
Opisano midzy innymi:

Symulowanie zjawisk mechaniki klasycznej w oparciu o prawa dynamiki Newtona


Rozwizanie numeryczne rwnania falowego
Symulacje dynamiki cieczy nieciliwej
Rozwizanie numeryczne rwnania Schrdingera

Symulacje komputerowe w fizyce to ksika, ktr powinni zainteresowa si nie


tylko fizycy: niektre przedstawione tu algorytmy znajduj zastosowanie w aplikacjach
CAD/CAM, a nawet przy tworzeniu gier komputerowych.

Spis treci
Wstp ............................................................................................... 7
Rozdzia 1. Schematy rnicowe rozwizywania rwna rniczkowych zwyczajnych.. 11
1.1. Rwnania rniczkowe zwyczajne i rnice skoczone...........................................12
1.2. Rwnania rniczkowe zwyczajne i rachunek cakowy ...........................................13
1.2.1. Schemat rnicowy Eulera.............................................................................14
1.2.2. Rozwizanie rwnania rozpadu promieniotwrczego........................................16
1.2.3. Metoda skokowa z wstpnymi obliczeniami Eulera ......................................19
1.2.4. Wahado matematyczne .................................................................................24
1.2.5. Punkt materialny przymocowany do spryny ..............................................32
1.3. Dokadniejsze metody wyznaczania rozwiza rwna rniczkowych .................38
1.3.1. Metoda punktu rodkowego (ang. MidPoint) drugiego rzdu .......................38
1.3.2. Metoda Rungego-Kutty czwartego rzdu.......................................................41
1.4. Zestawienie poznanych schematw rozwizywania
rwna rniczkowych zwyczajnych........................................................................43
1.5. Podsumowanie ..........................................................................................................43

Rozdzia 2. Dynamika wedug sir Isaaca Newtona............................................... 45


2.1. Rachunek wektorowy................................................................................................45
2.1.1. Klasa Wektor..................................................................................................46
2.1.2. Operacje na wektorach ...................................................................................47
2.1.3. Rachunek wektorowy podsumowanie.......................................................52
2.2. Zasady dynamiki Newtona........................................................................................53
2.2.1. Pierwsza zasada dynamiki Newtona ..............................................................53
2.2.2. Druga zasada dynamiki Newtona...................................................................54
2.2.3. Trzecia zasada dynamiki Newtona.................................................................54
2.3. Model fizyczny dynamiki ukadw punktw materialnych......................................54
2.3.1. Elementy skadowe modelu............................................................................55
2.4. Punkt materialny .......................................................................................................58
2.4.1. Przechowywanie danych. Lista jednokierunkowa .............................................58
2.4.2. Rwnania ruchu pojedynczego punktu materialnego ....................................61
2.5. Kolizje .......................................................................................................................65
2.5.1. Prosta metoda wykrywania kolizji punkt-ciana................................................65
2.5.2. Nieruchoma sfera kolizji ................................................................................67
2.6. Oddziaywania midzy punktami materialnymi .......................................................75
2.6.1. Prawo powszechnego cienia .......................................................................75
2.6.2. Oddziaywanie spryste pary punktw.........................................................77
2.7. Konstruowanie obiektw zoonych............................................................................81
2.7.1. Model dwuwymiarowego sznura ...................................................................81
2.7.2. Symulacja trjwymiarowych tkanin...............................................................84

Symulacje komputerowe w fizyce


2.7.3. Konstrukcja bryy sztywnej............................................................................85
2.7.4. Konstrukcja modelu poruszajcej si postaci.................................................87
2.8. Podsumowanie ..........................................................................................................90

Rozdzia 3. Rozwizanie numeryczne rwnania falowego ..................................... 91


3.1. Co to jest fala?...........................................................................................................91
3.2. Klasyczne rwnanie falowe ......................................................................................92
3.3. Rwnanie falowe w jednym wymiarze........................................................................92
3.3.1. Podzia rwnania falowego na ukad dwch sprzonych rwna
rniczkowych pierwszego rzdu ..................................................................93
3.3.2. Siatka rnicowa Eulera w jednym wymiarze ...............................................94
3.3.3. Rozwizanie algorytmiczne ukadu rwna sprzonych................................94
3.3.4. Algorytm programu realizujcego rwnanie falowe 1D ..................................96
3.3.5. Efekty dziaania przedstawionego algorytmu ..............................................101
3.4. Rwnanie falowe w dwch i wicej wymiarach przestrzennych ..............................106
3.4.1. Siatka rnicowa Eulera w dwch wymiarach.............................................106
3.4.2. Realizacja symulacji rwnania falowego w dwch wymiarach...................110
3.5. Podsumowanie ........................................................................................................113

Rozdzia 4. Symulacje cieczy nieciliwej .......................................................... 117


4.1. Rwnanie Naviera-Stokesa dla cieczy nieciliwej ................................................117
4.1.1. Warunek nieciliwoci cieczy.....................................................................118
4.1.2. Pola wektorowe ............................................................................................119
4.1.3. Analiza rwnania Naviera-Stokesa ..............................................................121
4.2. Rozwizanie uproszczone rwna NS.......................................................................124
4.2.1. Rwnanie pytkiej wody...............................................................................124
4.2.2. Warunek zachowania masy ..........................................................................125
4.2.3. Kocowa posta rwnania dla pytkiej wody...............................................126
4.2.4. Przyblienie dyskretne .................................................................................126
4.2.5. Efekty dziaania............................................................................................130
4.3. Pene rozwizanie rwna NS dla cieczy nieciliwej............................................132
4.3.1. Reprezentacja cieczy ....................................................................................133
4.3.2. Schematy rnicowe dla rwnania NS.........................................................139
4.3.3. Warunki brzegowe .......................................................................................148
4.3.4. Algorytm programu......................................................................................152
4.3.5. Wizualizacja rezultatw oblicze.................................................................165
4.4. Podsumowanie ........................................................................................................169

Rozdzia 5. Rwnanie Schrdingera ................................................................... 171


5.1.
5.2.
5.3.
5.4.
5.5.
5.6.

Funkcja falowa wektor stanu ukadu kwantowego ............................................171


Ewolucja w czasie stanu ukadu kwantowego ........................................................172
Dyskretna posta operatora ewolucji w czasie........................................................173
Schemat rozwizania rnicowego .........................................................................174
Stan pocztkowy ukadu .........................................................................................175
Implementacja .........................................................................................................175
5.6.1. Algorytm programu......................................................................................176
5.6.2. Konstrukcja stanu pocztkowego.................................................................176
5.6.3. Ptla obliczeniowa........................................................................................178
5.7. Rezultaty .................................................................................................................180
5.8. Podsumowanie ........................................................................................................181

Bibliografia .................................................................................... 183


Skorowidz...................................................................................... 189

Rozdzia 5.

Rwnanie Schrdingera
Mechanika kwantowa jest bardzo zaawansowan dziedzin fizyki wspczesnej. Jej
zrozumienie jest zadaniem na lata i czytelnik raczej nie znajdzie tu systematycznego
wykadu z tej dziedziny. Postaramy si natomiast przedstawi kompletne rozwizanie
numeryczne rwnania Schrdingera1, ktrego interpretacj fizyczn i analiz znajdzie
czytelnik w wykadach z mechaniki kwantowej w pracach [18], [19], [20] czy [21].
W literaturze tematu, oprcz wietnej pozycji [19], raczej trudno znale ciekawe wizualizacje efektw kwantowych. Rozwizania zagadnie mechaniki kwantowej s trudne
do wyobraenia i sprzeczne z nasz intuicj. Zazwyczaj autorzy pozycji traktujcych
o MK poprzestaj na ogromnej iloci wzorw, ktrych pikno samo w sobie dostrzec
mona dopiero po latach wytonej pracy. W tym rozdziale postaramy si przedstawi
graficznie rozwizania numeryczne rwnania Schrdingera w jednym i dwch wymiarach przestrzennych. Jak si okae, numeryczne rozwizywanie zagadnie mechaniki
kwantowej nie jest niczym strasznym, a rezultaty s niesamowite i pikne. Wizualizacja
rozwiza bdzie analogiczna do wizualizacji rozwiza z rozdziau trzeciego; wszak
rozwizaniem naszym jest te fala...

5.1. Funkcja falowa wektor stanu


ukadu kwantowego
Aby rozpocz rozwaania na temat rozwizania numerycznego rwnania Schrdingera,
musimy pozna niezbdne minimum wiedzy na jego temat, czyli okreli, czego tak
naprawd szukamy. Jakich rozwiza mamy si spodziewa? Jak interpretacj fizyczn maj rozwizania tego rwnania?
Odpowied na te pytania jest w zasadzie prosta, lecz interpretacja jej rozwiza ju nie.
Zagadnienie funkcji falowej w mechanice kwantowej ma bezporedni zwizek z pojciem prawdopodobiestwa2. Wemy pojedyncz czstk elektron. W przypadku
1
2

Na pycie CD zostaa uyta pisownia nazwiska w formie Schroedinger.


Zakadamy, e pojcie prawdopodobiestwa nie jest czytelnikowi obce.

172

Symulacje komputerowe w fizyce

klasycznym opisujemy go, podajc jego pooenie i pd. W przypadku kwantowym


stan elektronu opisuje funkcja falowa zwana te czsto wektorem stanu. W takim
razie nawet najprostszy ukad, jakim jest pojedynczy elektron, musi mie odpowiadajc
mu funkcj falow . Skoro tak, to jaka jest funkcja falowa poruszajcego si elektronu? Czy jest to po prostu punkt w paszczynie dwuwymiarowej, ktry porusza si
w okrelonym kierunku3?
I tu pojawia si problem zwany nieoznaczonoci Heisenberga. Niestety nawet dla pojedynczej czstki kwantowej nie moemy jednoznacznie okreli jednoczenie jej pooenia i pdu. W takim razie funkcja falowa (zwana te wektorem w przestrzeni Hilberta stanu ukadu kwantowego) musi by rozmyta w przestrzeni. Funkcja falowa okrela nam
prawdopodobiestwo znalezienia elektronu w danym miejscu przestrzeni. Rozwizujc
rwnanie Schrdingera zalene od czasu, dla kadego kroku czasowego otrzymamy rozkad prawdopodobiestwa znalezienia czsteczki w konkretnym miejscu w przestrzeni.
Doskonale widoczne bdzie te rozmywanie w czasie stanu ukadu, tak e wreszcie wskazanie gdzie znajduje si elektron w danym momencie nie bdzie moliwe.

5.2. Ewolucja w czasie stanu


ukadu kwantowego
Chcielibymy wprowadzi kilka standardowych poj wystpujcych w mechanice
kwantowej. Mamy nadziej, e czytelnik nie zrazi si do tego, bo w gruncie rzeczy
zostanie poprowadzony za rk i nie powinien mie problemw ze zrozumieniem tekstu.
Wana jest znajomo pewnych podstaw matematycznych (rwnanie czstkowe, dziaania na liczbach zespolonych). Warto te, aby czytelnik zajrza do wspomnianej we
wstpie literatury tematu.
Interesujcym nas zagadnieniem jest ewolucja stanu ukadu kwantowego. Ewolucja
w czasie opisywana jest przez rwnanie rniczkowe czstkowe drugiego rzdu zwane
rwnaniem Schrdingera z czasem:
r
(5.1)
r
(r , t )
= H (r , t )
ih
t
gdzie odpowiednio:

h=

h
2

r
(r , t )

jest sta Plancka dzielon przez 2 ,


jest wektorem (przestrzeni Hilberta) stanu ukadu kwantowego,

Cay czas mwi bdziemy o reprezentacji pooeniowej funkcji falowej; z innymi reprezentacjami
stanu ukadw kwantowych czytelnik moe zapozna si we wspomnianej literaturze.

Rozdzia 5. Rwnanie Schrdingera

173

jest hamiltonianem kwantowym ukadu (operatorem Hamiltona),

oznacza cz urojon liczby zespolonej (tu cz urojon rwnania).

Naszym zadaniem jest znale ewolucj wektora stanu (r , t ) . Aby to zrobi, naley
przede wszystkim rozwin hamiltonian do postaci jawnej. Dla swobodnej paczki falowej
reprezentujcej np. swobodny elektron hamiltonian zapisujemy w postaci:

H =

(5.2)

r
h2 2
+ V (r )
2m

gdzie

h2 2

2m

jest kwantowym operatorem pdu, a V (r ) okrela niezaleny od czasu potencja.


Tak zdefiniowany hamiltonian, po podstawieniu do rwnania (5.1) i wprowadzeniu
specjalnych jednostek, dla ktrych h = 1 i m=1/2, sprowadza rwnanie (5.1) do postaci4:
r
(5.3)
r
r
(r , t )
= 2 + V (r ) (r , t )
i
t

Dla wprowadzonych jednostek oglna posta rozwizania rwnania (5.3) jest znana:
r
r
(5.4)
(r , t ) = e iHt (r ,0 )

gdzie wyraz e
nazywa si operatorem ewolucji czasowej, a wektor (r ,0 ) okrela
stan pocztkowy ukadu w chwili t=0. Oznacza to, e dla zadanego stanu pocztkowego
moemy wyznaczy stan ukadu w dowolnej chwili t>0, korzystajc z operatora ewolucji czasowej.
iHt

5.3. Dyskretna posta


operatora ewolucji w czasie
Zadanie nasze w praktyce sprowadzi si do przyblienia rnicowego operatora ewolucji
czasowej oraz rozwizania tak zadanego rwnania rniczkowego. Dyskretna posta
tego operatora nadajca si do rozwizania rnicowego nosi nazw postaci Caleya:

e iHt

1 iHt / 2
1 + iHt / 2

(5.5)

Patrz pozycja [9], strona 851. Postpujemy tak jedynie dla uproszczenia rwnania Schrdingera,
ktre mona byoby rozwizywa wraz z wszystkimi staymi. Podejcie takie stosuje si czsto
w celu uproszczenia formy zapisu rwna opisujcych zjawiska fizyczne.

174

Symulacje komputerowe w fizyce

Jest to przyblienie funkcji GZR do wyrazu t 2 wcznie. Tak zdefiniowany operator


rnicowy jest unitarny, czyli zachowuje norm5 funkcji falowej. Jak przedstawiono
w pracy [18], operator ewolucji czasowej po podstawieniu hamiltonianu rozbi mona
na dwa wyrazy6:

e iHt = e i (

+V ) t

= e i (

t ) iVt

z ktrych pierwszy wyraz zostanie przybliony schematem (5.5). W takim ukadzie


otrzymujemy kompletn reprezentacj rnicow operatora ewolucji czasowej, ktr
zastosujemy w rwnaniu (5.4):
r
1 + i (t / 2) 2 iVt r
(r ,0)
e
(r , t ) =
1 i (t / 2) 2

(5.6)

Posta t wykorzystamy bezporednio w tej formie w rozwizaniu rnicowym rwnania Schrdingera.

5.4. Schemat rozwizania


rnicowego
Rwnanie (5.6) rozwiemy metod iteracyjn Jacobiego, zaczynajc od postaci7:

r
r
2
(r , t + t ) =
1 e iVt (r , t )
2
1 i (t / 2)

(5.7)

Rwnanie to jest tylko inaczej zapisanym (5.6) wprowadmy dla wygody nowe
oznaczenie:
? =

r
2 e iVt (r , t )
1 i (t / 2) 2

Rwnanie (5.7) przyjmie teraz bardziej zwart form:


r
r
(r , t + t ) = ? e iVt (r , t )

6
7

(5.8)

(5.9)

O normie funkcji falowej powiemy wicej przy interpretacji otrzymanych rozwiza, na razie czytelnik
powinien wiedzie, e zachowanie normy funkcji falowej jest niezbdne do otrzymania dobrych
(fizycznych) rozwiza.
We wzorach rnicowych nie bdziemy ju wpisywa jawnie zalenoci funkcji od zmiennych.
Metod t zaproponowa dr G. Jastrzbski w pozycji [18].

Rozdzia 5. Rwnanie Schrdingera

175

Naszym zadaniem jest rozwizanie zagadnienia dla nieznanej funkcji ? zdefiniowanej wzorem (5.8). Bezporednio z (5.8) rozwizanie na funkcj ? zapisujemy wzorem
iteracyjnym8:
(5.10)
r
n?+1 = 2 e iVt (r , t ) + i t 2 n?
gdzie operator 2 przybliamy odpowiednio wzorem picio- lub dziewiciopunktowym,
w zalenoci od rozmiarw siatki w poziomie i w pionie9. Indeks dolny n/n+1 oznacza
w tym kontekcie przynaleno do kroku iteracyjnego. Za warunek startowy iteracji
przyjmujemy10 0? = 0 . Ilo iteracji ma bezporedni wpyw z jednej strony na czas
rozwizania, z drugiej na jego dokadno.

5.5. Stan pocztkowy ukadu


W prezentowanym programie jako warunek pocztkowy wybralimy zgodnie z sugesti w [4] dobrze okrelony fizycznie stan gaussowski unormowany, ktry zapisa
moemy wzorem:

( x, y, t ) = Ne ( ( x px )^ 2( y py )^ 2ikx )

(5.11)

gdzie N jest sta normalizacyjn dla tego stanu. Tak zapisany stan ukadu wyznacza
gaussian o wektorze falowym k.

5.6. Implementacja
Teoretyczne wyprowadzenie schematu rozwizania rwnania (5.1) byo niezbdne i cho
w tym momencie moe wydawa si dosy skomplikowane, to majc tak wprowadzon
teori, sprowadzamy implementacj do zastosowania kilku podstawowych zasad. Chodzi
gwnie o operacje na liczbach zespolonych oraz zastosowanie siatki rnicowej do
reprezentacji stanu ukadu kwantowego. Siatk rnicow potrafimy ju dobrze okreli
(rozdziay 3., 4.). W tym przypadku na siatce rnicowej umieszczamy w centrum wartoci funkcji falowej okrelajcej stan ukadu kwantowego. Rnic w stosunku do
przedstawionych w poprzednich rozdziaach siatek rnicowych bdzie to, i siatka w
naszym przypadku bdzie zespolona. Do stworzenia siatki uyjemy konstrukcji 
z biblioteki standardowej11 C++. Deklaracja siatki rnicowej o danych zespolonych,
wielkoci  na 
, reprezentujcej funkcj falow  , przyjmie nastpujc posta:
 
 
8
9
10
11

Patrz pozycje [18], [11].


Zagadnienia przybliania operatora Laplacea na siatkach rnicowych byy ju dyskutowane w rozdziale 3.
Taki start iteracji zaproponowany zosta w pozycji [11].
Uycie gotowego szablonu dla danych zespolonych bardzo uproci kod programu.

176

Symulacje komputerowe w fizyce

Zapisany w nawiasach trjktnych typ danych okrela, jak zapisane bd odpowiednio


cz rzeczywista i cz urojona liczby zespolonej. Uycie standardowego typu danych
pozwoli nam korzysta z wasnoci liczb zespolonych bez wprowadzania dodatkowych
definicji metod i operatorw12.
Wizualizacja danych przebiega bdzie analogicznie do tej znanej ju z rwnania falowego. Dla kadego kroku czasowego13 rysujemy rozkad funkcji wychyle w trzech
wymiarach przestrzennych. Zagadnieniem wizualizacji nie bdziemy si wic bliej
zajmowa, bo byo to ju omawiane w rozdziale 3.

5.6.1. Algorytm programu


Dalej w znanej ju formie diagramu przedstawiamy na rysunku 5.1 propozycj schematu oglnego dziaania programu rozwizujcego numerycznie rwnanie Schrdingera. Algorytm nie jest zbyt zoony i jak si okae, przeoenie kolejnych punktw
na kod programu nie stanowi wikszego problemu, szczeglnie jeli wykorzystujemy
dobrze napisan klas liczb zespolonych (a tak niewtpliwie jest klasa z biblioteki
standardowej C++).
W przedstawionym algorytmie zapisalimy w nawiasach rwnania, z ktrych bdziemy
korzysta przy kolejnych czciach kroku czasowego. Jak wida, zagadnienie sprowadza si do zastosowania tylko trzech wzorw, ktre wyprowadzilimy wczeniej.

5.6.2. Konstrukcja stanu pocztkowego


Zgodnie z wzorem (5.11) konstruujemy stan pocztkowy, wpisujc odpowiednie wartoci funkcji w siatk rnicow. Niech stan pocztkowy wyznaczy paczka falowa o szerokoci   , w pozycji    na siatce. Korzystajc z tego, e
istnieje w bibliotece standardowej funkcja   , wyliczenie funkcji
 we wzorze (5.11) nie jest trudne i sprowadza si do kilku wierszy kodu w C++.
Korzystamy bezporednio ze wzoru (5.11), pamitajc o wspczynniku normalizacyjnym (tu   ):

 
 !!"
#
$%&'()$*" ++ (' (,-. *)/' 0)' ( (
12"
 !!"
#
$%&'()$" ++ 
3' (,-. *)/' 0)'
$$"+%&'()" ++ 
'  0'0
4   
 ""
5
5

12
13

Zakadamy, e czytelnik zna pojcie liczby zespolonej.


Przypominamy, e w rozdziale tym zajmujemy si tylko przypadkiem dwuwymiarowym.

Rozdzia 5. Rwnanie Schrdingera


Rysunek 5.1.
Algorytm
dziaania programu
Schrdinger
(rysunek znajduje si
na pycie CD)

177

Ustal warunki pocztkowe,


inicjuj tablice oraz stae.

Wyznacz stan
pocztkowy 0(11)

Wyznacz procedur
iteracyjn Jacobiego (10).

Wyznacz korzystajc z (9)

Warunki brzegowe

tak

Wizualizuj dane.

Rozwizanie nadal
interesujce?
nie

KONIEC

Wida, e przedstawiony schemat konstrukcji stanu pocztkowego nie jest zoony.


Duym uatwieniem byo tu wykorzystanie standardowej biblioteki C++ i funkcji  
zdefiniowanej dla klasy liczb zespolonych. Na rysunku 5.2 przedstawiamy stan pocztkowy przykadowej paczki falowej.
Rysunek 5.2 przedstawia stan okrelony parametrami:
%&'()+  ++ ()-. '()
  6 ++ (*' 
*  7  ++ (*' *

gdzie  oznacza liczb komrek na siatce w kierunku osi X (w tym konkretnym przypadku 70).

178

Symulacje komputerowe w fizyce

Rysunek 5.2.
Przykadowy stan
pocztkowy ukadu
(rysunek znajduje si
na pycie CD)

5.6.3. Ptla obliczeniowa


Zgodnie z algorytmem z rysunku 5.1 ptl obliczeniow zaczynamy od wyznaczenia
?
nieznanej funkcji .
W osobnej tablicy !!"# przechowywa bdziemy informacje o potencjale w przestrzeni.
Przy zaoeniu, e potencja moe by albo zerowy, albo mie sta warto niezalen
od czasu, wystarczy pamita flagi czy potencja jest zerowy, czy te wynosi e iVt .
Zamy, e w pierwszym kroku algorytmu komrki, w ktrych wyrnilimy potencja, maj ustawion flag $%&'. Ustawiona flaga $%&' w danej komrce oznacza,
e w tym miejscu potencja jest niezerowy. Oznacza to, e wyraz  ()! jest stay
w trakcie dziaania symulacji, dlatego moemy wyliczy go wczeniej i uywa bez
dokonywania powtrnych oblicze. Wyznaczmy zatem zespolon liczb e iVt :
8 4 
  $9:;8""

Dziaanie operatora e iVt sprowadzi si w naszym przypadku do wymnoenia przez


%)*

Schemat (5.10) podzielimy na dwie czci. Najpierw wymnmy komrki odpowiednio


przez 2, jeli komrka ma potencja rwny 0, lub przez wyliczon (i podwojon) wczeniej warto !%), jeli komrka jest typu $%&' (potencja niezerowy). Zadanie
to realizuje podany kod14, w ktrym stosujemy oznaczenia:
psi _ t

psi ?
$!!"
$!!"
<'3 = >?9" ++ 8 @ A
4 
";8 4";4

4 
";4
14

Jawna konwersja zwykych liczb na typ 


 spowodowana jest istnieniem przecionych
operatorw tylko dla liczb, przez ktre sparametryzowany zosta typ .

Rozdzia 5. Rwnanie Schrdingera

179

Kolejnym krokiem jest waciwa procedura iteracyjna, ktra dziki wczeniejszemu


wymnoeniu funkcji  % przez odpowiednie stae staje si o wiele prostsza. Procedur t wykonujemy + +,- razy kad iteracj dwukrotnie, raz zwikszajc,
raz zmniejszajc indeksy tablicy15:
BB4'!!"
#
$!!"
$!!"
#
'  !!$!$!!$
 
"6;"
  4 !  
"9: ; ; '
5
$ $$"
$ $$"
#
'  !!$!$!!$
 
"6;"
  4 !  
"9: ; ; '
5
5

Uwany czytelnik na pewno zauway, e do przyblienia operatora Laplacea uylimy


wzoru piciopunktowego, wprowadzonego ju w rozdziale 3. W omwionej procedurze
iteracyjnej zastosowalimy rwnie oznaczenie % dla urojonego i jako:
 
  " ++  4


Dziki wprowadzeniu urojonego i moglimy bezporednio we wzorze (5.10) wykona


mnoenie16 i t 2 n? .
Kolejn czci kroku czasowego jest bezporednie wyznaczenie rozkadu funkcji falowej , czego dokonujemy za pomoc prostego schematu (5.9), pamitajc o podzieleniu  % przez 2, przez ktre zostao pomnoone przed pierwsz iteracj:
$!!"
$!!"
4 $ 4+ 
"

Ostatni krok przedstawionego algorytmu, ktrym si zajmiemy, to warunki brzegowe


rozwizania. Dla naszych potrzeb prostych stanw pocztkowych ukadu zamy zerowanie funkcji falowej na brzegach, czemu odpowiada prosta ptla zerujca:
 !!"
4 4 
   "
 !!"
4 4 
   "
15

16

Ilo iteracji rzdu 10 na siatkach rozmiaru 7070 i o kroku czasowym '=0.05 daje ju zadowalajce
rezultaty.
W miejscach takich jak to nie sposb nie zauway, jak wspaniaym narzdziem okazuje si C++
i jego obiektowo.

180

Symulacje komputerowe w fizyce

5.7. Rezultaty
Przedstawione rezultaty dziaania programu Schrdinger s zrzutami z ekranu dziaajcej w czasie rzeczywistym animacji. Do wizualizacji wykorzystano stworzone wczeniej na potrzeby programu Waves procedury OpenGL i Fox.
Na rysunku 5.3 przedstawiamy jeden z fundamentalnych efektw kwantowych, czyli
przejcie przez barier potencjau.
Rysunek 5.3.
Przejcie paczki
falowej przez
barier potencjau
(rysunek znajduje
si na pycie CD)

Na przedstawionym rysunku uwidoczniono, e paczka falowa dzieli si na dwie paczki


o mniejszej amplitudzie i przeciwnych wektorach falowych. Interesujcym efektem jest
to, e cz paczki falowej, ktra przesza przez barier, jest gadsza od czci odbitej.
Sytuacja przedstawiona na rysunku 5.3 nie ma odpowiednika w mechanice klasycznej.
Klasycznie bowiem czstka albo przejdzie przez barier potencjau (np. cian), albo
nie przejdzie. Kwantowo rozpatrujemy tylko prawdopodobiestwo przejcia przez barier.
Dlatego niekiedy mwi si, e elektron moe by w dwch miejscach jednoczenie.
Niektrzy uwaaj nawet, e jest w dwch miejscach jednoczenie.
Na rysunku 5.4 przedstawiamy rozbicie gaussowskiej paczki falowej na potencjale
w ksztacie trjktnego klinu. Ciekawe efekty, ktre mona wyczyta z tych rysunkw, to
m.in. charakterystyczne spitrzanie grzbietw fal prawdopodobiestwa w pocztkowym

Rozdzia 5. Rwnanie Schrdingera

181

etapie symulacji oraz podzia paczki na dwie rwne czci. Na tym rysunku uwidoczniono, e na dalszych etapach symulacji wiemy o rozwizaniu coraz mniej funkcja falowa ma teraz przebieg o wiele agodniejszy, co oznacza, e trudno okreli,
gdzie znajduje si nasz elektron.
Rysunek 5.4.
Rozcicie
paczki falowej
na trjktnym klinie
(rysunek znajduje si
na pycie CD)

Ostatnim przykadem, ktry zaprezentujemy, jest przejcie wzajemne dwch paczek


falowych przez siebie (rysunek 5.5). Obie paczki falowe maj te same parametry pocztkowe (amplituda, rozmiary) i przeciwnie skierowane wektory falowe.

5.8. Podsumowanie
W tym rozdziale czytelnik zapozna si ze schematem rozwizania numerycznego
rwnania Schrdingera. Zastosowane tu schematy rnicowe zdaj si by wystarczajce do zaobserwowania ciekawych efektw kwantowych. Istnieje dua dowolno
w stosowaniu przedstawionej metody mona prbowa dowolnych ksztatw i wielkoci potencjaw. Stan pocztkowy nie musi by przedstawiony funkcj Gaussa. Mona te stosowa hamiltonian inny ni dla czsteczki swobodnej. Rezultaty uzyskane
po wprowadzeniu hamiltonianu oscylatora harmonicznego w dwch wymiarach do

182

Symulacje komputerowe w fizyce

Rysunek 5.5.
Rozpraszanie
wzajemne dwch
paczek falowych
(rysunek znajduje si
na pycie CD)

przedstawionego algorytmu zdaj si potwierdza, e przedstawiona metoda rozwizania numerycznego, mimo e prosta, jest dosy oglna i ma szerokie zastosowanie,
dlatego zachcamy czytelnika do samodzielnego rozwijania omawianego programu.