Вы находитесь на странице: 1из 25

Integrao da equao

de Schrdinger
Os mtodos de integrao de equaes diferenciais
apresentados at agora pressupem que as condies
fronteira do problema so dadas no ponto inicial
Problemas deste tipo (Initial Value Problems)
so, por exemplo, os problemas tpicos da mecnica
newtoniana, em que so conhecidas a posio e a
velocidade inicial de todas as partculas em jogo
Tuesday, March 27, 12

Integrao da equao
de Schrdinger
Mas, tipicamente, ao integrar a equao de
Schrdinger, as condies fronteira so dadas em
pontos diferentes... o valor da funo de onda na
origem e no infinito, o valor da funo de onda nos
dois extremos de uma caixa, etc.
Esta classe de problemas (Boundary Value
Problems) pode obviamente ser resolvida
recorrendo aos integradores standard (RungeKutta, por exemplo), mas preciso reformular o
processo de incluso das condies fronteira...
Tuesday, March 27, 12

Integrao da equao
de Schrdinger
Exemplo: partcula numa caixa de paredes infinitas
V (x) =

0,
1,

0xa
x < 0 ou x > a

A equao de Schrdinger fica:


1
2

00

(x) = E (x)

(x) = 0 se x < 0 ou x > a


Tuesday, March 27, 12

Integrao da equao
de Schrdinger
Para integrar a partir de x=0, e como a equao de
2 ordem, necessitamos de duas condies fronteira,
mas s temos uma:
(0) = 0

O mesmo se passa se quisermos integrar a


equao partindo de x=a:
(a) = 0
Tuesday, March 27, 12

Integrao da equao
de Schrdinger
Como podemos ento proceder?

Escolher arbitrariamente um valor


para a derivada em x=0

Escolher arbitrariamente um valor


Integrar de x=0 at um certo x=xm
para a derivada em x=a

Tuesday, March 27, 12

Integrar de x=a at x=xm

(xm )

(xm )

Integrao da equao
de Schrdinger

Para fazer estas integraes necessrio escolher


um valor para a energia, visto ainda no
conhecermos os seus valores prprios...

Podemos comparar as duas integraes em x

analisar o resultado...

Como a funo de onda tem de ser contnua em

xm, podemos multiplicar uma delas por um factor


de escala apropriado:
(x)

Tuesday, March 27, 12

(x)

(xm )
(xm )

PROGRAM numerov

F90

IMPLICIT NONE
INTEGER, PARAMETER :: r8=8, n_esq=1000,n_dir=1500
INTEGER :: i
REAL(r8), PARAMETER :: a=1.0_r8, dx=a/(n_esq+n_dir-2)
REAL(r8) :: psi_esq(n_esq), psi_dir(n_dir), x_esq, x_dir, E, f
E=4.0
psi_esq(1) = 0.0_r8
psi_esq(2) = 0.1_r8
x_esq = dx
DO i=2, n_esq-1
psi_esq(i+1)=(psi_esq(i)*(2.0_r8+5.0_r8*f(x_esq,E)*dx**2/6.0_r8)+ &
psi_esq(i-1)*(f(x_esq-dx,E)*dx**2/12.0_r8-1.0_r8))/ &
(1.0_r8-f(x_esq+dx,E)*dx**2/12.0_r8)
x_esq = x_esq + dx
END DO
psi_dir(1) = 0.0_r8
psi_dir(2) = 0.33_r8
x_dir = a-dx
DO i=2, n_dir-1
psi_dir(i+1)=(psi_dir(i)*(2.0_r8+5.0_r8*f(x_dir,E)*dx**2/6.0_r8)+ &
psi_dir(i-1)*(f(x_dir+dx,E)*dx**2/12.0_r8-1.0_r8))/ &
(1.0_r8-f(x_dir-dx,E)*dx**2/12.0_r8)
x_dir = x_dir - dx
END DO
END PROGRAM numerov

Tuesday, March 27, 12

F90
x_esq = 0.0_r8
DO i=1, n_esq
WRITE(*,*) x_esq, psi_esq(i)
x_esq = x_esq + dx
END DO

Para
escrever
a funo
de onda

x_dir = a-(n_dir-1)*dx
DO i=n_dir, 1, -1
WRITE(*,*) x_dir, (psi_esq(n_esq)/psi_dir(n_dir))*psi_dir(i)
x_dir = x_dir + dx
END DO

FUNCTION f(x,E)
IMPLICIT NONE
INTEGER, PARAMETER :: r8 = 8
REAL(r8), INTENT(IN) :: x, E
REAL(r8) :: f
f = -2.0_r8*E
END FUNCTION f
Tuesday, March 27, 12

Integrao da equao
de Schrdinger
100
E=1
90
80
70

psi(x)

60
50
40
30
20
10
0
0

0.1

0.2

0.3

0.4

0.5
x/a

Tuesday, March 27, 12

0.6

0.7

0.8

0.9

Integrao da equao
de Schrdinger
O resultado no foi brilhante...
Alm de contnua em x , a funo de onda
m

devia tambm ter derivada contnua nesse


ponto

Que podemos fazer?


... Escolher outro valor para a energia!
Tuesday, March 27, 12

Integrao da equao
de Schrdinger
100
E=1
E=2

90
80
70

psi(x)

60
50
40
30
20
10
0
0

0.1

0.2

0.3

0.4

0.5
x/a

Tuesday, March 27, 12

0.6

0.7

0.8

0.9

Integrao da equao
de Schrdinger
100
E=1
E=2
E=4

90
80
70

psi(x)

60
50
40
30
20
10
0
0

0.1

0.2

0.3

0.4

0.5
x/a

Tuesday, March 27, 12

0.6

0.7

0.8

0.9

Integrao da equao
de Schrdinger
O que procuramos?
... o valor de E para o qual a derivada da
funo de onda contnua em xm

(x)
dx

=
x=xm

d
Tuesday, March 27, 12

(x)
dx

(x; E)
dx

x=xm

d
x=xm

As solues
dependem do valor
escolhido para E
(x; E)
dx

=0
x=xm

Integrao da equao
de Schrdinger
Pode-se ento definir uma funo
z(E) =
=

(x; E)
dx

d
x=xm
!

(xm ; E)

(xm

(x; E)
dx

h; E)

(xm ; E)

(xm

h; E)

x=xm

(xm + h; E)
h

(xm ; E)

(xm + h; E)

e procurar os seus zeros...


...que sero os valores prprios da energia!
Tuesday, March 27, 12

Integrao da equao
de Schrdinger
80
n=1
n=4

2 2

n
En =
2

70
60
50

psi(x)

40
30
20
10
0
-10
-20
0

0.1

0.2

0.3

0.4

0.5
x/a

Tuesday, March 27, 12

0.6

0.7

0.8

0.9

Integrao da equao
de Schrdinger
As funes de onda no ficam normalizadas...
Olhando para o problema inicial, vemos
que foi necessrio arbitrar 3 valores:

As derivadas da funo de onda nos


extremos da caixa

A energia do estado
Tuesday, March 27, 12

Integrao da equao
de Schrdinger
Mas podemos impr 3 condies:

Continuidade da funo de onda em x


Continuidade da derivada da funo de

onda em xm

Normalizao da funo de onda


Tuesday, March 27, 12

Zeros de uma funo


Frequentemente necessrio encontrar o

zero de uma funo complicada resolvendo


uma equao no linear

Vamos comear por considerar apenas

funes de uma varivel (voltaremos a este


problema mais tarde...)

H vrios mtodos numricos bastante

simples e poderosos para o fazer, sendo o


mais robusto deles o chamado
mtodo da bisseco

Tuesday, March 27, 12

Mtodo da bisseco
Seja f(x)=0 a equao que pretendemos
resolver

Um sinal de que h um zero de f num certo


intervalo [a,b]

f (a) f (b) < 0

Comecemos ento por procurar dois pontos


a e b para os quais esta condio se verifique

Tuesday, March 27, 12

Mtodo da bisseco
Determina-se f(c), em que:
c=a+

Se

a
2

f (a) f (c) < 0

h um zero de f em [a,c]

f (c) f (b) < 0

h um zero de f em [c,b]

Recomea-se o processo com o novo intervalo...


Tuesday, March 27, 12

Mtodo da bisseco
f(x)

Tuesday, March 27, 12

Mtodo da falsa posio


O mtodo da bisseco extremamente robusto mas
no muito rpido...

Em muitos casos possvel melhorar o processo de

busca do zero de f se o novo extremo do


intervalo de procura for encontrado fazendo passar
uma recta pelos extremos do intervalo e
determinando o ponto onde essa recta cruza o eixo

Este mtodo conhecido por mtodo da falsa

posio e , em geral, mais rpido que o mtodo da


bisseco. Mas no to robusto, podendo no
encontrar o zero...

Tuesday, March 27, 12

Mtodo da falsa posio


f(x)

Tuesday, March 27, 12

e d

Mtodo da secante
Um outro mtodo, semelhante ao mtodo da falsa
posio, o mtodo da secante

Se [x , x

for o intervalo de busca do zero na


ensima iterao, o intervalo para a iterao seguinte
[xn+1, xn+2] sendo xn+2 o ponto onde a recta que
passa pelos pontos (xn,f(xn)) e (xn+1,f(xn+1)) intersecta o
eixo dos x
n

n+1]

Neste mtodo no h garantia que o zero se


encontre no intervalo de busca...

Tal como o mtodo da falsa posio, este mtodo


nem sempre bem sucedido!

Tuesday, March 27, 12

Mtodo da secante
f(x)

Tuesday, March 27, 12

Вам также может понравиться