Exp. Phys. 5, WS16/17 Denninger Dies ist die Sammlung des

Werbung
Exp. Phys. 5, WS16/17 Denninger
skript_23_12_2016_a
Dies ist die Sammlung des Materials von Dienstag, 06.12. bis Freitag 16.12.2016.
Inhalt:
1.
beugung_intro.pdf
Seite 2
Einführung in die Beugung von Wellen
2.
kristallstruktur.pdf
Seite 7
Knappe Einführung in Kristallstrukturen
3.
beugungs_sonden.pdf
Seite 13
Beugungssonden: Photonen, Elektronen, Neutronen
4.
beugung_1D.pdf
Seite 14
Beugung an der eindimensionalen "Kette" von Objekten
5.
beugung_2d.pdf
Seite 28
Beugung an zwei- und dreidimensionalen Strukturen
6.
graphene.pdf
Seite 38
Struktur des 2-dimensionalen Graphen-Gitter
7.
graphene_lattice.pdf
Details des 2-dimensionalen Graphen-Gitter
Seite 48
beugung intro.jnt
Seite 2
Seite 3
Seite 4
Seite 5
Seite 6
kristallstruktur.jnt
Seite 7
Seite 8
Seite 9
Seite 10
Seite 11
Seite 12
GAWD's MATLAB Analysen
Sonden für Beugungsexperimente
Zur Strukturbestimmung durch Beugungsmethoden kommen alle Teilchen (auch Photonen sind in diesem
Sinne Teilchen) in Frage, welche eine (am besten einstellbare) Wellenlänge im Bereich der relevanten
Atomabstände haben.
Die Wellenlänge eines Teilchens ist universell durch die de Broglie Beziehung gegeben:

h
p
Dabei ist h die Planck'sche Konstante und p der Impuls des Teilchens. Diese Beziehung hat
universelle Gültigkeit und ist ohne Einschränkungen anwendbar.
In vielen Fällen möchte man jedoch den Impuls durch die Energie des Teilchens ausdrüchken, und dann
die Wellenlänge als Funktion der Energie bestimmen. Dazu benutzt man auch die allgemein gültige
Energie-Impulsbeziehung:
E 2  p 2c 2  m 02  c 4
Hier ist m0 die Ruhemasse und c die Lichtgeschwindigkeit.
Wir unterscheiden jetzt Teilchen ohne Ruhemasse (m0 = 0 ) und Teilchen mit Ruhemasse (m0  0).
1. Teilchen ohne Ruhemasse (z.B. Photonen)
E  p c
Für Photonen ist der Impuls p  k 
Damit wird dann die Wellenlänge:

hc
E
h  h f

Misst man die Energie in eV, dann gilt:
SI_e=1.602176462e-19;
SI_h=6.62606876e-34;
SI_c=299792458;
fact_photon=SI_h*SI_c/SI_e,
fact_photon =
1.2398e-006
Die Wellenlänge bei Photonen ist also: 1.2398m/E(eV).
NE=1000;
E=logspace(1,6,NE);
lambda=fact_photon./E;
loglog(E,lambda*1e9,'Linewidth',3);xlabel('Energie /eV');ylabel('Wellenlänge /nm');
'beugungs_sonden.doc'
8.12.2016 GAWD
Seite 13
1
GAWD's MATLAB Analysen
3
10
2
10
1
Wellenlänge /nm
10
0
10
-1
10
-2
10
-3
10
1
10
2
10
3
10
4
10
5
10
6
10
Energie /eV
Man benötigt also Photonenenergien von etwa 10 keVund mehr, um Wellenlängen im Bereich der
Atomabstände zu haben.
Bei 10 keV Photonenenergie ist die Wellenlänge gerade 0.12398 nm. Dies liegt im Bereich der relevanten
Atomabstände in Festkörpern.
2. Teilchen mit Ruhemasse m0.
Hier unterscheiden wir jetzt noch die Bereiche niedriger Energie ( Ekin << m0c2) und die Bereiche hoher
Energie. Die Energie E ist die Summe aus Ruhenergie und kinetischer Energie.
E  m0c 2  Ekin
Damit ist dann:
2
E 2   m0c 2  Ekin  2  m02 c 4  2m0c 2  Ekin  Ekin
Relevant für die Beugung an Festkörpern ist der Bereich niedriger Energie (Ekin << m0c2). Dort kann man
sich auf die ersten beiden Terme beschränken
2
E 2  m02 c 4  2m0c 2  Ekin
 p 2c 2  m02 c 4
'beugungs_sonden.doc'
8.12.2016 GAWD
Seite 14
2
GAWD's MATLAB Analysen
p 2c 2
p2
Ekin 

2m 0c 2 2m 0
Somit wird:
p  2m0 Ekin
und somit:
, und für die Wellenlänge hat man:
h
2m0 Ekin

Die kinetische Energie der Teilchen wird meistens in eV angegeben, und somit hat man:
a) Für Elektronen und Neutronen:
SI_me=9.10938188e-31;
SI_mn=1.67492716e-27;
fact_elektronen=SI_h/sqrt(2*SI_me*SI_e),
fact_neutronen=SI_h/sqrt(2*SI_mn*SI_e),
fact_elektronen = 1.2264e-009
fact_neutronen = 2.8601e-011
lambda_elektronen=fact_elektronen./sqrt(E);
lambda_neutronen=fact_neutronen./sqrt(E);
loglog(E,lambda_elektronen*1e9,'b-',E,lambda_neutronen*1e9,'r','Linewidth',3);xlabel('Energie /eV');ylabel('Wellenlänge /nm');
0
10
-1
Wellenlänge /nm
10
-2
10
-3
10
-4
10
-5
10
1
10
2
10
3
10
4
10
5
10
6
10
Energie /eV
'beugungs_sonden.doc'
8.12.2016 GAWD
Seite 15
3
GAWD's MATLAB Analysen
Während die Wellenlängen für Elektronen im Bereich bis ca. 100 eV (langsame Elektronen) durchaus im
richtigen Bereich der Atomabstände liegen, muss man für Neutronen zu deutlich niedrigeren Energien
gehen.
Eneutron=logspace(-3,2,NE);
lambda_neutronen=fact_neutronen./sqrt(Eneutron);
loglog(Eneutron,lambda_neutronen*1e9,'r-','Linewidth',3);xlabel('Energie
/eV');ylabel('Wellenlänge /nm');
0
10
-1
Wellenlänge /nm
10
-2
10
-3
10
-3
10
-2
10
-1
10
0
10
1
10
2
10
Energie /eV
Bei Neutronen muss die Energie im Bereich von ca. 10 meV bis 100 meV liegen, um die Wellenlängen in
den für die Streuung an Festkörpern relavanten Bereich zu bringen.
Neutronen mit dieser niedrigen Energie nennt man "thermische Neutronen".
'beugungs_sonden.doc'
8.12.2016 GAWD
Seite 16
4
beugung_1D.jnt
Seite 17
delta=0.005
1
0.9
0.8
Elektronendichte
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
Seite 18
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
1.1
1.2 1.3
Ort (nm)
1.4
1.5
1.6
1.7
1.8
1.9
2
2.1
2.2
2.3
2.4
2.5
400
delta = 0.005
350
300
FFT Amplitude
250
200
150
100
50
0
0
5
10
15
20
25
Ortsfrequenz (nm-1)
30
35
40
45
50
1
delta = 0.02
0.9
0.8
Elektronendichte
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
Seite 19
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
1.1
1.2 1.3
Ort (nm)
1.4
1.5
1.6
1.7
1.8
1.9
2
2.1
2.2
2.3
2.4
2.5
1500
delta = 0.02
FFT Amplitude
1000
500
0
0
5
10
15
20
25
Ortsfrequenz (nm-1)
30
35
40
45
50
delta = 0.05
1
0.9
0.8
Elektronendichte
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
Seite 20
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
1.1
1.2 1.3
Ort (nm)
1.4
1.5
1.6
1.7
1.8
1.9
2
2.1
2.2
2.3
2.4
2.5
2500
delta=0.05
2000
FFT Amplitude
1500
1000
500
0
0
5
10
15
20
25
Ortsfrequenz (nm-1)
30
35
40
45
50
1
0.9
0.8
Elektronendichte
0.7
0.6
0.5
0.4
0.3
0.2
0.1
delta=0.1nm
0
0
Seite 21
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
1.1
1.2 1.3
Ort (nm)
1.4
1.5
1.6
1.7
1.8
1.9
2
2.1
2.2
2.3
2.4
2.5
800
700
600
FFT Amplitude
500
400
300
200
100
0
0
Seite 22
5
10
15
20
25
Ortsfrequenz (nm-1)
30
35
40
45
50
delta = 0.04
1
Elektronendichte
0.8
0.6
0.4
0.2
0
0
0.5
1
1.5
2
2.5
Ort (nm)
3
3.5
4
4.5
5
2500
delta = 0.04
FFT Amplitude
2000
1500
1000
500
0
0
Seite 23
5
10
15
20
25
30
Ortsfrequenz (nm-1)
35
40
45
50
delta = 0.04
1
Elektronendichte
0.8
0.6
0.4
0.2
0
0
0.5
1
1.5
2
2.5
Ort (nm)
3
3.5
4
4.5
5
1200
delta = 0.04
1000
FFT Amplitude
800
600
400
200
0
0
Seite 24
5
10
15
20
25
30
Ortsfrequenz (nm-1)
35
40
45
50
delta = 0.01
Bais: 2 Atome
1
Elektronendichte
0.8
0.6
0.4
0.2
0
0
0.5
1
1.5
2
2.5
Ort (nm)
3
3.5
4
4.5
5
1200
delta = 0.01
Bais: 2 Atome
1000
FFT Amplitude
800
600
400
200
0
0
Seite 25
5
10
15
20
25
30
Ortsfrequenz (nm-1)
35
40
45
50
delta = 0.01
Basis: 2 Atome
1
Elektronendichte
0.8
0.6
0.4
0.2
0
0
Seite 26
0.5
1
1.5
2
2.5
Ort (nm)
3
3.5
4
4.5
5
1200
delta = 0.01
Basis: 2 Atome
1000
FFT Amplitude
800
600
400
200
0
0
Seite 27
5
10
15
20
25
30
Ortsfrequenz (nm-1)
35
40
45
50
beugung_2d.jnt
Seite 28
50
create_exp_2d(512,16,10,0.01,0.01,500)
10000
40
9000
30
8000
O rts fre q u e n z (n m -1 )
20
7000
10
6000
0
5000
-10
4000
-20
3000
-30
2000
-40
1000
-50
-50
Seite 29
-40
-30
-20
-10
0
10
Ortsfrequenz (nm-1)
20
30
40
50
50
create_exp_2d(512,16,10,0.01,0.01,500)
10000
40
9000
30
8000
O rts fre q u e n z (n m -1 )
20
7000
10
6000
0
5000
-10
4000
-20
3000
-30
2000
-40
1000
-50
-50
-40
-30
-20
-10
0
10
Ortsfrequenz (nm-1)
20
30
40
50
create_exp_2d(512,16,10,0.01,0.01,500)
x-Schnitt
600
FFT Amplitude
500
400
300
200
100
0
-50
Seite 30
-40
-30
-20
-10
0
10
Ortsfrequenz(nm-1)
20
30
40
50
create_exp_2d(512,16,10,0.01,0.01,500)
y-Schnitt
600
FFT Amplitude
500
400
300
200
100
0
-50
Seite 31
-40
-30
-20
-10
0
10
-1
Ortsfrequenz (nm )
20
30
40
50
50
create_exp_2d(512,16,10,0.01,0.01,100)
1400
40
30
1200
O rts fre q u e n z (n m -1 )
20
1000
10
800
0
-10
600
-20
400
-30
-40
-50
-50
Seite 32
200
-40
-30
-20
-10
0
10
Ortsfrequenz (nm-1)
20
30
40
50
1000
1000
800
800
600
600
400
400
200
200
0
-50
-40
Seite 33
-30
-20
-10
0
10
Ortsfrequenz (nm-1)
20
30
40
create_exp_2d(512,16,10,0.01,0.01,100)
Schnitt: y
1200
create_exp_2d(512,16,10,0.01,0.01,100)
Schnitt: x
F F T A m p le
F F T A m p litu d e
1200
50
0
-50
-40
-30
-20
-10
0
10
Ortsfrequenz (nm-1)
20
30
40
50
x 10
50
a (0.875,0.125) , b (0.25,0.75)
2.5
40
30
2
O rts fre q u e n z (n m -1 )
20
10
1.5
0
-10
1
-20
-30
0.5
-40
-50
-50
Seite 34
-40
-30
-20
-10
0
10
Ortsfrequenz (nm-1)
20
30
40
50
4
Seite 35
Seite 36
Seite 37
graphene.jnt
benzene
anthracene
naphtalene
pyrene
Seite 38
Seite 39
Seite 40
Seite 41
Seite 42
Seite 43
Seite 44
Seite 45
Seite 46
Seite 47
GAWD's MATLAB Analysen
Das Graphen-Gitter
Schaut man Graphen im Ortsraum oberflächlich an, dann hat man den Eindruck einer hexagonalen
Struktur. Dies ist jedoch nicht der Fall, denn im Zentrum jedes Hexagons ist eben kein C-Atom! Das
Gitter ist vielmehr ein "Honigwaben-Gitter".
a1=[1 0];
a2=[0.5 –sqrt(3)/2];
b1=[0 0];
b2=(2/3)*(a1+a2);
Jetzt erzeugen wir z.B. 20*20 Einheitszellen:
Nx=20;
Ny=20;
x=zeros(1,2*Nx*Ny);
y=zeros(1,2*Nx*Ny);
ind=0;
for i1=1:Nx
for i2=1:Ny
ind=ind+1;
x(ind)=(i1-1)*a1(1)+(i2-1)*a2(1)+b1(1);
y(ind)=(i1-1)*a1(2)+(i2-1)*a2(2)+b1(2);
ind=ind+1;
x(ind)=(i1-1)*a1(1)+(i2-1)*a2(1)+b2(1);
y(ind)=(i1-1)*a1(2)+(i2-1)*a2(2)+b2(2);
end
end
plot(x,y,'ro','Linewidth',2);axis([10 20 -15 -5]);
'graphene_lattice.doc'
8.12.2016 GAWD
Seite 48
1
GAWD's MATLAB Analysen
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
10
11
12
13
14
15
16
17
18
19
20
Jetzt
tic;
Nxx=1024;
Nyy=1024;
xx=linspace(10,20,Nxx);
yy=linspace(-16,-6,Nyy);
rho=zeros(Nxx,Nyy);
for i3=1:800
if( (x(i3) >=10) && (x(i3)<=20))
if( (y(i3) >=-16) && (y(i3)<=-6))
for i1=1:Nxx
for i2=1:Nyy
rr=(xx(i1)-x(i3))^2+(yy(i2)-y(i3))^2;
rho(i1,i2)=rho(i1,i2)+exp(-10*rr);
end
end
end
end
end
toc,
Elapsed time is 1008.440921 seconds.
meshc(rho);
'graphene_lattice.doc'
8.12.2016 GAWD
Seite 49
2
GAWD's MATLAB Analysen
So sieht die Ladungsdichte aus.
pcolor(rho);shading('interp');colorbar();
'graphene_lattice.doc'
8.12.2016 GAWD
Seite 50
3
GAWD's MATLAB Analysen
Man erkennt die Honigwabenstruktur.
mittelwert=sum(sum(rho))/(Nxx*Nyy),
mittelwert =
0.7078
rho=rho-mittelwert;
tic;
rho_fft=fft2(rho);
toc,
rho_fft=fftshift(rho_fft);
kx=linspace(-0.05,0.05,Nxx);
ky=linspace(-0.05,0.05,Nyy);
Elapsed time is 0.081016 seconds.
pcolor(kx,ky,sqrt(abs(rho_fft).^2));shading('interp');axis([-0.004 0.004 -0.004
0.004]);colorbar();
'graphene_lattice.doc'
8.12.2016 GAWD
Seite 51
4
GAWD's MATLAB Analysen
Im Wesentlichen sieht man Punkte im reziproken Gitter.
rho_log=10*log10(sqrt(abs(rho_fft).^2));
for i1=1:Nxx
for i2=1:Nyy
if(rho_log(i1,i2) < 30)
rho_log(i1,i2)= 30;
end
end
end
pcolor(kx,ky,rho_log);shading('interp');axis([-0.004 0.004 -0.004
0.004]);colorbar();
'graphene_lattice.doc'
8.12.2016 GAWD
Seite 52
5
GAWD's MATLAB Analysen
'graphene_lattice.doc'
8.12.2016 GAWD
Seite 53
6
Herunterladen