Rozdziaª 6 METODA NUMEROVA

Transkrypt

Rozdziaª 6 METODA NUMEROVA
Janusz Adamowski
METODY OBLICZENIOWE FIZYKI
1
Rozdziaª 6
METODA NUMEROVA
6.1 Równanie Poissona
Równanie Poissona sªu»y do wyznaczenia potencjaªu elektrostatycznego
Φ(r) dla zadanej g¦sto±ci ªadunku %(r).
∇2 Φ = −
%
.
ε0
(6.1)
Równanie Poissona we wspóªrz¦dnych sferycznych
Ã
!
1 ∂2
∂
∂2Φ
1
∂Φ
1
%(r, θ, φ)
(rΦ)
+
sin
θ
+
=−
,
2
2
2
2
2
r ∂r
r sin θ ∂θ
∂θ
ε0
r sin θ ∂φ
(6.2)
przy czym Φ = Φ(r, θ, φ). Rozwa»amy rozkªad ªadunku o symetrii sferycznej:
%(r) = %(|r|) = %(r). Zgodnie z metod¡ separacji zmiennych
Φ(r, θ, φ) =
ϕ(r)
Y (θ, φ) ,
r
(6.3)
ϕ(r) = funkcja pomocnicza, Y (θ, φ) = funkcja kulista.
K¡towa cz¦±¢ operatora Laplace'a dziaªa na funkcj¦ kulist¡ nast¦puj¡co:
Ω(θ, φ) Y (θ, φ) = l(l + 1)Y (θ, φ) ,
(6.4)
gdzie l = 0, 1, . . ..
Zredukowana posta¢ równania Poissona (6.2)
r%
d2 ϕ l(l + 1)
+
ϕ=− .
2
2
dr
r
ε0
(6.5)
2
Rozdziaª 6. Metoda Numerova
Sferycznie symetryczne rozwi¡zania równania Poissona (fale kuliste z l = 0)
otrzymujemy z równania
d2 ϕ
r%
=− .
(6.6)
2
dr
ε0
Potencjaª elektrostatyczny
Φ(r) =
ϕ(r)
.
r
(6.7)
6.2 Ogólna posta¢ równa« Poissona i Schr®dingera
d2 y
+ g(x)y = S(x) .
dx2
Dla równania Poissona
g(x) =
(6.8)
l(l + 1)
,
x2
(6.9)
x%(x)
.
ε0
(6.10)
Funkcja ¹ródªa
S(x) = −
Dla równania Schr®dingera
"
#
2m0
l(l + 1)
g(x) = 2 E −
− U (x)
2m0 x2
h̄
(6.11)
S(x) = 0 .
(6.12)
6.3 Algorytm Numerova
Dyskretyzacja na sieci w¦zªów xn = nh, gdzie n = 1, 2, . . ., i rozwini¦cie
w szereg Taylora funkcji y(x) wokóª w¦zªa n
yn±1 = yn ± hyn0 +
h2 00 h3 000 h4 iv
h5 v
y ± yn + y ±
y + O(h6 ) ,
2
6
24
120
df
(6.13)
y(xn ± h) = yn±1 . W (6.13) pochodne liczone s¡ dla x = xn . Podstawowe
równanie algorytmu Numerova
Ã
!
h2
1 + gn+1 yn+1
12
Janusz Adamowski
METODY OBLICZENIOWE FIZYKI
Ã
!
Ã
3
!
5h2
h2
gn yn + 1 + gn−1 yn−1
−2 1 −
12
12
2
h
=
(Sn+1 + 10Sn + Sn−1 ) + O(h6 ) .
12
(6.14)
Jest to równanie algebraiczne liniowe na nieznane warto±ci yn+1 lub yn−1 .
Równanie (6.14) dostarcza wzoru rekurencyjnego na yn+1 (caªkowania równania ró»niczkowego do przodu, w kierunku rosn¡cego x) lub yn−1 (caªkowanie
do tyªu, w kierunku malej¡cego x). Bª¡d lokalny algorytmu = O(h6 ).
Wystartowanie formuªy rekurencyjnej (6.14)
W pierwszym kroku
y(a) = ya ,
(6.15)
y 0 (a) = ya0 .
(6.16)
yn = ya + hya0 .
(6.17)