3d1eb164113bfd1ba590c55c5c98285122373221
[lectures/latex.git] / nlsop / diplom / simulation.tex
1 \chapter{Simulation}
2 \label{chapter:simulation}
3
4 Im Folgenden soll die Implementation der Monte-Carlo-Simulation nach dem vorangegangen Modell diskutiert werden.
5 Die Simulation tr"agt den Namen {\em nlsop}, was f"ur die Schlagw"orter {\bf N}ano, {\bf L}amellar und {\bf S}elbst{\bf O}ragnisations-{\bf P}rozess steht.
6 Die Simulation ist in der Programmiersprache {\em C} \cite{kerningham_ritchie} geschrieben.
7 Der Simulationscode wurde auf Computern der {\em IA32}-Rechnerarchitektur mit dem {\em GNU C Compiler} auf einem Linux Bestriebssystem "ubersetzt und betrieben.
8
9 Ziel der Simulation ist die Validierung des Modells anhand der experimentellen Ergebnisse, wie sie in Abbildung \ref{img:xtem_img} vorliegen.
10 Es wurden zwei Versionen der Simulation erstellt, die unterschiedliche Tiefenbereiche abdecken.
11 Die erste Version beschreibt den Bereich von der Oberfl"ache des Targets bis zum Beginn der durchgehenden amorphen $SiC_x$-Schicht, also den Tiefenbereich von $0$ bis $300 nm$.
12 Nachdem eine Beschreibung der Bildung lamellarer amorpher Ausscheidungen mit dieser Version sehr gut funktioniert hat, wurde eine zweite Version entwickelt, die den gesamten Implantationsbereich betrachtet.
13 Auf weitere Unterschiede in den zwei Versionen wird in einem gesonderten Abschnitt genauer eingegangen.
14
15 Die Simulation kann grob in drei Abschnitte unterteilt werden.
16 Im ersten Schritt werden die Kollisionen eines Ions im Target und die daraus resultierende Amorphisierung beziehungsweise Rekristallisation eines Gebietes simuliert.
17 Nachdem das Ion seine Energie durch St"o"se im Target abgegeben hat kommt es zur Ruhe.
18 Der Einbau des Kohlenstoffs im Target wird im zweiten Schritt ausgef"uhrt.
19 Als letztes wird die Diffusion von Kohlenstoff von kristallinen in amorphe Gebiete und der Sputtervorgang realisiert.
20
21 Im Folgenden werden der Simulationsalgorithmus und die dazu ben"otigten Annahmen besprochen.
22 Ein weiterer Abschnitt besch"aftigt sich mit der Extraktion von, f"ur die Simulation notwendigen Informationen aus {\em TRIM}-Ergebnissen.
23 Das Kapitel schlie"st mit dem Test der verwendeten Zufallszahlen.
24
25   \section{Annahmen der Simulation}
26
27     \subsection{Unterteilung des Targets}
28     \label{subsection:unterteilung}
29
30     Wie in Abbildung \ref{img:sim_gitter} zu sehen ist, wird das Target in W"urfel mit der Seitenl"ange $a = 3 nm$ zerlegt.
31     \printimg{h}{width=12cm}{gitter_oZ.eps}{Unterteilung des Targets in W"urfel mit $3 nm$ Kantenl"ange. Jedes Volumen ist entwerder amorph (rot) oder kristallin (blau) und protokolliert die lokale Kohlenstoffkonzentration.}{img:sim_gitter}
32     Die Anzahl der W"urfel in $x$, $y$ und $z$ Richtung ist frei einstellbar.
33     Ein solches Volumen kann durch den Ortsvektor $\vec{r}(k,l,m)$, wobei $k$, $l$ und $m$ ganze Zahlen sind, addressiert werden.
34     Jeder W"urfel hat entweder den Zustand amorph (rot), oder ist kristallin (blau).
35     Die lokale Anzahl der implantierten Kohlenstoffatome wird ebenfalls protokolliert.
36
37     Die Ausdehnung des Targets in $x,y$-Richtung ist im Gegensatz zur Tiefe sehr gro"s und kann als unendlich ausgedehnt angenommen werden.
38     Um die Anzahl der W"urfel in diese Richtungen in der Simulation aus Gr"unden der Rechenzeit m"oglichst klein halten zu k"onnen, werden periodische Randbedingungen in der $x,y$-Ebene verwendet.
39
40     In Version 1 der Simulation wurden $x = y = 50$ beziehungsweise $x = y = 64$ und $z = 100$ gesetzt.
41     In Version 2 sind $x = y = 64$ und $z = 233$.
42
43     Zum besseren Vergleich der Simulationsergebnisse mit den experimentell erhaltenen TEM-Aufnahmen k"onnen Querschnitte der amoprh/kristallinen Struktur als Bitmap ausgegeben werden.
44     Kristalline W"urfel sind schwarz und amorphe "Wurfel wei"s dargestellt.
45     F"ur die $x-z$- beziehungsweise  $y-z$-Querschnitte besteht die M"oglichkeit "uber mehrere Querschnittezu mitteln.
46     Die selbe Mittelung "uber den amorph/kristallinen Zustand ist bei den TEM-Aufnahmen, der auf eine Dicke von $100$ bis $300 nm$ pr"aparierten Proben der Fall.
47
48     \subsection{Amorphisierung und Rekristallisation}
49     \label{subsection:a_and_r}
50
51     Nach dem in Kapitel \ref{chapter:modell} vorgestellten Modell gibt es drei statistisch unabh"angige zur Amorphisierung beitragende Mechanismen.
52     Eine lokale Wahrscheinlichkeit f"ur die Amorphisierung $p_{c \rightarrow a}$ eines beliebigen kristallinen Volumens am Ort $\vec{r}$ setzt sich aus den drei Einzelwahrscheinlichkeiten f"ur die ballistische, kohlenstoffinduzierte und spannungsinduzierte Amorphisierung zusammen.
53     Sie wird wie folgt berechnet:
54     \begin{equation}
55     p_{c \rightarrow a}(\vec r) = p_{b} + p_{c} c_C (\vec r) + \sum_{amorphe \, Nachbarn} \frac{p_{s} \, c_C (\vec{r'})}{(\vec r - \vec{r'})^2}
56     \label{eq:p_ca_local}
57     \end{equation}
58
59     Der Beitrag der ballistischen Amorphisierung besteht nur aus der Konstanten $p_b$.
60     Die Wahrscheinlichkeit f"ur die ballistische Amorphisierung in einem Sto"s ist unabh"angig vom Ort und somit eine Konstante.
61     Sie hat die Einheit $1$.
62     Die h"ohere Wahrscheinlichkeit, im Maximum der nuklearen Bremskraft zu amorphisieren, kommt durch die h"ohere Anzahl an St"o"sen in diesem Tiefenbereich zustande.
63     Wieso dieser Beitrag in dieser Art sinnvoll ist, wird in Abschnitt \ref{subsection:parse_trim_coll} gekl"art.
64
65     Die Wahrscheinlichkeit f"ur die kohlenstoffinduzierte Amorphisierung wird proportional zur lokalen Kohlenstoffkonzentration $c_C$ angenommen.
66     $p_c$ ist die dazugeh"orige Proportionalit"atskonstante und hat demnach die Einheit $[p_c] = m^3$.
67
68     Der Beitrag der Druckspannungen setzt sich aus den einzelnen Beitr"agen amorpher Gebiete in der selben Ebene zusammen, da nur diese unrelaxierte Spannungen aus"uben.
69     Dabei ist der Wahrscheinlichkeitsbeitrag eines amorphen Volumens bei $\vec{r'}$ auf das Volumen am Ort $\vec{r}$ wieder proportional zur lokalen Kohlenstoffkonzentration in $\vec{r'}$.
70     Dies ist offensichtlich, denn je mehr Kohlenstoff in einem amorphen Volumen vorhanden ist, desto gr"o"ser ist die ausgehende Spannung auf die Umgebung.
71     Gleichzeitig ist der Beitrag indirekt proportional zum Abstandsquadrat $(\vec r - \vec{r'})^2$, da der Druck quadratisch mit der Entfernung abf"allt.
72     $p_s$ ist eine Proportionalit"atskonstante und hat somit die Einheit $[p_s] = m^5$.
73
74     Die Rekristallisationswahrscheinlichkeit amorpher Gebiete $p_{a \rightarrow c}$ sollte sich genau entgegensetzt zu $p_{c \rightarrow a}$ verhalten und wird deshalb als
75     \begin{equation}
76     p_{a \rightarrow c}(\vec r) = 1 - p_{c \rightarrow a}(\vec r)
77     \label{eq:p_ac_local}
78     \end{equation}
79     angenommen.
80     Jedoch muss die direkte Nachbarschaft des Volumens ber"ucksichtigt werden.
81     Da es sich bei den betrachteten Temperaturen allein um ionenstrahlinduzierte, epitaktische Rekristallisation handelt und einschr"ankend hier nur der Temperaturbereich bis $250 \, ^{\circ} \mathrm{C}$ behandelt wird, in dem keine merkliche ionenstrahlinduzierte Nukleation innerhalb amorpher Bereiche auftritt \cite{basic_phys_proc}, sollte f"ur die Rekristallisation die Strukturinformation einer kristallinen Nachbarschaft notwendig sein.
82     Mit einer zunehmenden Anzahl von amorphen Nachbarn sollte die Rekristallisationswahrscheinlichkeit also sukzessive abnehmen und ganz verschwinden, wenn kein einziger kristalliner Nachbar vorhanden ist.
83     Mit der im Abschnitt \ref{subsection:unterteilung} beschriebenen Unterteilung hat ein Volumen genau sechs Grenzfl"achen, von denen die Rekristallisationsfront ausgehen kann.
84     Damit kann man \eqref{eq:p_ac_local} neu schreiben und man erh"alt:
85     \begin{equation}
86     p_{a \rightarrow c}(\vec r) = (1 - p_{c \rightarrow a}(\vec r)) \Big(1 - \frac{\sum_{direkte \, Nachbarn} \delta (\vec{r'})}{6} \Big) \, \textrm{,}
87     \label{eq:p_ac_genau}
88     \end{equation}
89     mit
90     \begin{equation}
91     \delta (\vec r) = \left\{ 
92     \begin{array}{ll}
93       1 & \textrm{wenn Gebiet bei $\vec r$ amorph} \\
94       0 & \textrm{sonst} \\
95     \end{array}
96     \right.
97     \label{eq:dedltafunc}
98     \end{equation}
99
100     Die Proportionalit"atskonstanten $p_b$, $p_c$ und $p_s$ sind bisher experimentell nicht zug"anglich und werden daher als frei w"ahlbare Simulationsparameter angenommen.
101     Es stellt sich also die Frage, ob ein Satz von Parametern existiert, der es erlaubt, experimentell gefundene Verteilungen, wie sie in Abbildung \ref{img:xtem_img} gezeigt werden, durch die Simulation zu reproduzieren.
102     Durch Variation der gefundenen Parameter k"onnen dann die unterschiedlichen Einfl"usse der verschiedenen Amorphisierungsmechanismen untersucht und der Selbstorganisationsprozess verstanden werden.
103     
104     \subsection{Diffusion}
105
106     Weiterhin sieht das Modell die M"oglichkeit der Diffusion von Kohlenstoff aus kristallinen in umliegende amorphe Volumina vor.
107     In Zeitintervallen $T_{Diff}$ wird ein Anteil $d_r$ des Kohlenstoffs eines kristallinen Volumens in das benachbarte amorphe Volumen transferiert.
108     Da von einem konstanten Strahlstrom ausgegangen wird, kann die Zeit $T_{Diff}$ auf eine Anzahl von implantierten Ionen $d_v$ abgebildet werden.
109     Die Diffusion des Kohlenstoffs von amorphen in kristalline Gebiete wird also durch die zwei Parameter $d_r$ und $d_v$ gesteuert.
110     Die Parameter sind ebenfalls frei w"ahlbar.
111     Aus Gr"unden der Rechenzeit sollte die Diffusionsroutine nicht nach jedem implantierten Ion ausgef"uhrt werden.
112     Diffusion innerhalb kristalliner Gebiete sowie Diffusion innerhalb amorpher Gebiete wird ausgeschlossen.
113     Von einer m"oglichen Kohlenstoff"ubers"attigung im Amorphen wird nicht ausgegangen, da der Kohlenstoff in $a-Si$ gut l"oslich ist.
114     Da die L"oslichkeit von Kohlenstoff in $c-Si$ nahezu Null ist, wird der Kohlenstoff immer bestrebt sein von dem kristallinen Bereich in die amorphen Gebiete zu diffundieren.
115
116     \subsection{Sputtern}
117
118     Es wird von einer, "uber der Oberfl"ache gleichm"assig verteilten und w"ahrend des Implantationsvorgangs konstanten Sputterrate ausgegangen.
119     Auf Grund der Unterteilung des Targets in W"urfel mit der Seitenl"ange $3 nm$ muss diese Sputterrate in Einheiten einer Dosis, welche $3 nm$ sputtert, angegeben werden.
120     Jedesmal, nachdem das Programm diese Dosis durchlaufen hat, wird die Sputterroutine aufgerufen, welche die oberste Targetebene abtr"agt.
121
122   \section{Statistik von Sto"sprozessen}
123
124   F"ur die Simulation ben"otigt man die Statistik der Sto"sprozesse des Kohlenstoffs im Siliziumtarget unter den gegebenen Implantationsbedingungen.
125   Dabei sind insbesondere die nukleare Bremskraft f"ur den Amorphisierungs- beziehungsweise Rekristallisationsschritt und das Implantationsprofil f"ur den Einbau des Kohlenstoffs ins Siliziumtarget von Interesse.
126   {\em NLSOP} benutzt die Ergebnisse des {\em TRIM}-Programms, welches die Wechelswirkung der Ionen mit dem Target simuliert und somit ein geeignetes Bremskraft- und Implantationsprofil, sowie eine genaue Buchf"uhrung "uber die Sto"skaskaden bereitstellt.
127   Durch die Abbildung von Zufallszahlen auf die so erhaltenen Verteilungen k"onnen die eigentlichen physikalischen Abl"aufe sehr schnell und einfach behandelt werden.
128   Im Folgenden wird auf die Ermittlung einiger, f"ur {\em NLSOP} wichtige Statistiken eingegangen.
129
130     \subsection{Implantationsprofil und nukleare Bremskraft}
131
132     \printimg{h}{width=13cm}{trim92_2.eps}{Von {\em TRIM 92} ermittelte Reichweitenverteilung und tiefenabh"angige Bremskr"afte f"ur $180 keV$ $C^+ \rightarrow Si$.}{img:bk_impl_p}
133     Abbildung \ref{img:bk_impl_p} zeigt die von {\em TRIM 92} ermittelte nukleare Bremskraft sowie das Kohlenstoffkonzentrationsprofil f"ur die in dieser Arbeit verwendeten Parameter.
134     Die gestrichelte Linie markiert das Ionenprofilmaximum bei $500 nm$.
135     Sputtereffekte und Abweichungen auf Grund der kontinuierlich ver"anderten Targetzusammensetzung w"ahrend der Hochdosisimplantation werden von {\em TRIM} allerdings nicht ber"ucksichtigt.
136     
137     Die Profile werden von {\em TRIM} selbst in seperate Dateien geschrieben.
138     Tauscht man die Kommata (Trennung von Ganzzahl und Kommastelle) durch Punkte aus, so kann {\em NLSOP} diese Dateien auslesen und die Profile extrahieren.
139    
140     \printimg{h}{width=12cm}{trim_impl.eps}{Durch {\em SRIM 2003.26} berechnetes Implantationsprofil f"ur $180 keV$ $C^+ \rightarrow Si$.}{img:trim_impl}
141     In Abbildung \ref{img:trim_impl} ist das f"ur diese Simulation verwendete, von einer neueren {\em TRIM}-Version ({\em SRIM 2003.26})  berechnete Implantationsprofil abgebildet.
142     Dieses Profil verwendet {\em NLSOP} zum Einbau des Kohelnstoffs.
143     Das Implantationsmaximum liegt hier bei ungef"ahr $530 nm$.
144     Auff"allig ist eine Verschiebung des Maximums um $30 nm$ zu dem Maximum aus Abbildung \ref{img:bk_impl_p}.
145     Dies ist auf eine Ver"anderung in der elektronischen Bremskrfat zuru"ckzuf"uhren.
146
147     \subsection{Durchschnittliche Anzahl der St"o"se der Ionen und Energieabgabe}
148     \label{subsection:parse_trim_coll}
149
150     Weiterhin bietet {\em TRIM} die M"oglichkeit eine Datei Namens {\em COLLISION.TXT} anzulegen, in der s"amtliche Sto"skaskaden protokolliert sind.
151     Zu jedem Sto"s sind Koordinaten und Energie"ubertrag angegeben.
152     Mit dem Programm {\em parse\_trim\_collision} (siehe Anhang \ref{section:hilfsmittel}) kann diese Datei ausgewertet werden.
153     Die daraus gewonnen Erkenntnisse sollen im Folgenden diskutiert werden.
154     F"ur diese Statistik wurden die Sto"skaskaden von $8300$ implantierten Ionen verwendet.
155
156     \printimg{h}{width=12cm}{trim_coll.eps}{Auf das Maximum 1 skalierte tiefenabh"angige Energieabgabe (blau) und Anzahl der Kollisionen (rot).}{img:trim_coll}
157     Abbildung \ref{img:trim_coll} zeigt die nukleare Energieabgabe und die Anzahl der St"o"se von Ionen und Recoils in Abh"angigkeit von der Tiefe.
158     Beide Graphen wurden auf das selbe Maximum skaliert.
159     Man erkennt, dass diese nahezu identisch sind.
160     Die durchschnittliche Energieabgabe pro Sto"s ist also ungef"ahr konstant und unabh"angig von der Tiefe.
161     Dies ist der Grund f"ur die Wahl eines konstanten Beitrags der ballistischen Amorphisierung in Abschnitt \ref{subsection:a_and_r}.
162     Jeder Sto"s "ubertr"agt durchschnittlich einen konstanten Energiebetrag im Falle einer Kollision, und tr"agt somit einen konstanten Anteil zur Amorphisierungswahrscheinlichkeit bei.
163     
164     Desweiteren ist nun die Wahrscheinlichkeit f"ur eine Kollision in einer bestimmten Tiefe bekannt.
165     Sie ist proportional zur Anzahl der Kollisionen in dieser Tiefe.
166     Durch die h"ohere Anzahl der St"o"se im Maximum der nuklearen Bremskraft steigt die Wahrscheinlichkeit f"ur ein Ion in diesem Tiefenbereich zu amorphisieren.
167
168     \printimg{h}{width=12cm}{trim_nel.eps}{Durch {\em SRIM 2003.26} berechneter nuklearer Energieverlust f"ur $180 keV$ $C^+ \rightarrow Si$.}{img:trim_nel}
169     Zum Vergleich zeigt Abbildung \ref{img:trim_nel} die von {\em SRIM 2003.26} selbst berechnete nukleare Bremskraft.
170     Wie zu erwarten entspricht sie ungef"ahr dem Verlauf der in Abbildung \ref{img:trim_coll} gezeigten Energieabgabe.
171     Daher wird dieses Profil f"ur {\em NLSOP} zur Verteilung der Kollisionen im Taregt verwendet.
172
173     Ein implantiertes Ion und dadurch entstandene Recoils verursachen durchschnittlich eine Anzahl von $1088$ Kollisionen, bis alle Teilchen bis auf Energien unterhalb der Verlagerungsenergie f"ur $Si$ Atome von $15 eV$ \cite{ziegler_biersack_littmark} abgesunken sind.
174     Die Zahl der getroffenen W"urfel, also Volumina in denen ein Ion mindestens eine Kollision verursacht, ist sehr viel geringer.
175     Das Auswertungsprogramm {\em parse\_trim\_collision} z"ahlt durchschnittlich $75$ getroffene Volumina pro implantiertem Ion.
176     Genauer gesagt z"ahlt das Programm die Anzahl der Ebenen mit $3 nm$ H"ohe in denen Kollisionen verursacht werden.
177     Teilchenbahnen parallel zur Targetoberfl"ache verf"alschen diese Zahl.
178     Ausserdem werden mehrmalige Durchl"aufe der Ebenen nicht mitgez"ahlt.
179     Man sollte weiterhin beachten, dass Volumina in denen selbst nur eine Kollision stattfindet mitgez"ahlt werden, was allerdings nur sehr unwahrscheinlich zur Amorphisierung f"uhren wird.
180     Daher wird eine Trefferzahl von $h=100$ f"ur die Simulation angenommen.
181
182   \section{Simulationsalgorithmus}
183
184   Die Simulation kann in die drei Abschnitte Amorphisierung/Rekristallisation, Fremdatomeinbau und Diffusion/Sputtern gegliedert werden.
185   Die beschriebenen Prozeduren werden sequentiell abgearbeitet und beliebig oft durchlaufen.
186
187   Wenn, wie in Version 2 der Simulation, pro Durchlauf die Anzahl der simulierten Sto"skaskaden gleich der Anzahl der getroffenen Volumina ist, entspricht ein Durchlauf genau einem implantierten Ion.
188   Im Folgenden sei die Anzahl der W"urfel in $x$, $y$ und $z$ Richtung $X$, $Y$ und $Z$.
189   Eine Anzahl von $N$ Durchl"aufen ist damit "aquivalent zur Dosis $D$, die wie folgt gegeben ist:
190   \begin{equation}
191   D = \frac{N}{XY(3 nm)^2} \, \textrm{.}
192   \label{eq:dose_steps}
193   \end{equation}
194
195   Es wird mit einem komplett kristallinen und kohlenstofffreien Target gestartet.
196
197     \subsection{Amorphisierung und Rekristallisation}
198     \label{subsection:a_r_step}
199
200       \begin{figure}[h]
201       \begin{center}
202       \begin{pspicture}(0,0)(15,18)
203
204         \rput(7,18){\rnode{start}{\psframebox{{\em NLSOP} Start}}}
205
206         \rput(7,16){\rnode{random1}{\psframebox{\parbox{8.5cm}{
207           Ausw"urfeln der Zufallszahlen:\\
208           $R_1$, $R_2$, $R_3$ entsprechend nuklearer Bremskraft\\
209           $R_4 \in [0,1[$
210         }}}}
211         \ncline[]{->}{start}{random1}
212
213         \rput(7,14){\rnode{koord_wahl}{\psframebox{\parbox{7.5cm}{
214           Bestimmung von $\vec{r}(k,l,m)$ durch Abbildung von $R_1$, $R_2$ und $R_3$ auf $k$, $l$ und $m$
215         }}}}
216         \ncline[]{->}{random1}{koord_wahl}
217
218         \rput(7,11){\rnode{berechnung_pca}{\psframebox{\parbox{12cm}{
219           Berechnung von $p_{c \rightarrow a}(\vec{r})$ und $p_{a \rightarrow c}(\vec{r})$:
220           \[
221           \begin{array}{lll}
222           p_{c \rightarrow a}(\vec r) & = & p_{b} + p_{c} \, c_{Kohlenstoff}(\vec r) + \sum_{amorphe \, Nachbarn} \frac{p_{s} \, c_{Kohlenstoff}(\vec{r'})}{(\vec r - \vec{r'})^2} \\
223           p_{a \rightarrow c}(\vec r) & = & (1 - p_{c \rightarrow a}(\vec r)) \Big(1 - \frac{\sum_{direkte \, Nachbarn} \delta (\vec{r'})}{6} \Big)
224           \end{array}
225           \]
226           \[
227           \delta (\vec r) = \left\{
228             \begin{array}{ll}
229             1 & \textrm{wenn Gebiet bei $\vec r$ amorph} \\
230             0 & \textrm{sonst} \\
231             \end{array}
232           \right.
233           \]
234         }}}}
235         \ncline[]{->}{koord_wahl}{berechnung_pca}
236
237         \rput(7,8){\rnode{status}{\psframebox{Volumen $\vec{r}(k,l,m)$ amorph?}}}
238         \ncline[]{->}{berechnung_pca}{status}
239
240         \rput(4,6){\rnode{cryst}{\psframebox[linestyle=solid,linecolor=blue]{$R_4 \le p_{c \rightarrow a}$?}}}
241         \rput(10,6){\rnode{amorph}{\psframebox[linestyle=solid,linecolor=red]{$R_4 \le p_{a \rightarrow c}$?}}}
242         \ncline[]{->}{status}{cryst}
243         \lput*{0}{nein}
244
245         \ncline[]{->}{status}{amorph}
246         \lput*{0}{ja}
247
248         \rput(4,4){\rnode{do_amorph}{\psframebox[linestyle=solid,linecolor=red]{Setze Volumen amorph}}}
249         \ncline[]{->}{cryst}{do_amorph}
250         \lput*{0}{ja}
251
252         \rput(10,4){\rnode{do_cryst}{\psframebox[linestyle=solid,linecolor=blue]{Setze Volumen kristallin}}}
253         \ncline[]{->}{amorph}{do_cryst}
254         \lput*{0}{ja}
255
256         \rput(7,3){\rnode{check_h}{\psframebox{Anzahl der Durchl"aufe gleich Anzahl der Treffer pro Ion?}}}
257
258         \rput(7,6){\pnode{h_2}}
259         \ncline[]{amorph}{h_2}
260         \ncline[]{->}{h_2}{check_h}
261         \lput*{0}{nein}
262
263         \rput(7,6){\pnode{h_3}}
264         \ncline[]{cryst}{h_3}
265         \ncline[]{->}{h_3}{check_h}
266         \lput*{0}{nein}
267
268         \rput(14,3){\pnode{h_4}}
269         \rput(14,16){\pnode{h_5}}
270         \ncline[]{check_h}{h_4}
271         \ncline[]{h_4}{h_5}
272         \lput*{0}{nein}
273         \ncline[]{->}{h_5}{random1}
274
275         \ncline[]{->}{do_cryst}{check_h}
276         \ncline[]{->}{do_amorph}{check_h}
277
278         \rput(7,1){\rnode{weiter_1}{\psframebox{$\bigotimes$}}}
279         \ncline[]{->}{check_h}{weiter_1}
280         \lput*{0}{ja}
281
282       \end{pspicture}
283       \caption{{\em NLSOP} Ablaufschema Teil 1: Amorphisierung und Rekristallisation.}
284       \label{img:flowchart1}
285       \end{center}
286       \end{figure}
287
288     Im ersten Schritt sollen die Kollisionen und die daraus resultierende Amorphisierung beziehungsweise Rekristallisation simuliert werden.
289     Das zugeh"orige Ablaufschema ist in Abbildung \ref{img:flowchart1} gezeigt.
290     Zun"achst muss das gesto"sene Volumen ausgew"ahlt werden.
291     Die St"o"se sind bez"uglich der $x$ und $y$ Richtung statistisch isotrop verteilt.
292     Es werden zwei gleichverteilte Zufallszahlen $r_1 \in [0,X[$ und $r_2 \in [0,Y[$ nach \eqref{eq:gleichverteilte_r} ausgew"urfelt.
293     Diese werden auf die ganzen Zahlen $k$ und $l$ abgebildet und bestimmen die Lage des getroffenen Volumens in der $x,y$-Ebene.
294     Eine weitere, mit Hilfe der Verwerfungsmethode aus Abschnitt \ref{subsubsection:verwerf_meth} erzeugte Zufallszahl $r_3 \in [0,Z[$ entsprechend der nuklearen Bremskraft, abgebildet auf die ganze Zahl $m$, legt die Tiefe des getroffenen Volumens fest.
295     Somit hat man den Ortsvektor $\vec{r}(k,l,m)$ f"ur den Amorphisierungs- oder Rekristallisationsvorgang bestimmt.
296     Nun kann die Amorphisierungs- beziehungsweise Rekristallisationswahrscheinlichkeit nach \eqref{eq:p_ca_local} beziehungsweise \eqref{eq:p_ac_genau} berechnet werden.
297     Eine weitere Zufallszahl $r_4 \in [0,1[$ entscheidet dann "uber einen eventuellen Statuswechsel des Volumens.
298     Es gibt folgende M"oglichkeiten:
299     \begin{enumerate}
300     \item Volumen $\vec{r}(k,l,m)$ ist kristallin.\\
301           Wenn $r_4$ kleiner gleich $p_{c \rightarrow a}$ ist, wechselt der Status zu amorph.
302           Ansonsten bleibt der Status unver"andert.
303     \item Volumen $\vec{r}(k,l,m)$ ist amorph.\\
304           Wenn $r_4$ kleiner gleich $p_{a \rightarrow c}$ ist, wechselt der Status zu kristallin.
305           Ansonsten bleibt der Status unver"andert.
306     \end{enumerate}
307
308     Der gesamte Amorphisierungs- und Rekristallisationsschritt wird f"ur die Anzahl der getroffenen Volumina pro implantierten Ion $h$ wiederholt.
309
310     \subsection{Einbau des implantierten Kohlenstoffs ins Target}
311
312       \begin{figure}[h]
313       \begin{center}
314       \begin{pspicture}(0,0)(15,5)
315
316         \rput(2,5){\rnode{weiter_2}{\psframebox{$\bigotimes$}}}
317
318         \rput(7,5){\rnode{random2}{\psframebox[fillstyle=solid,fillcolor=green]{\parbox{8.5cm}{
319           Ausw"urfeln der Zufallszahlen:\\
320           $R_5$, $R_6$, $R_7$ entsprechend Reichweitenverteilung
321         }}}}
322         \ncline[]{->}{weiter_2}{random2}
323
324         \rput(7,3){\rnode{koord_wahl_i}{\psframebox[fillstyle=solid,fillcolor=green]{\parbox{7cm}{
325           Bestimmung von $\vec{r}(k,l,m)$ durch Abbildung von $R_5$, $R_6$ und $R_7$ auf $k$, $l$ und $m$
326         }}}}
327         \ncline[]{->}{random2}{koord_wahl_i}
328
329         \rput(7,1){\rnode{inc_c}{\psframebox[fillstyle=solid,fillcolor=green]{\parbox{7cm}{
330           Erh"ohung des Kohlenstoffs im Volumen $\vec{r}(k,l,m)$
331         }}}}
332         \ncline[]{->}{koord_wahl_i}{inc_c}
333
334         \rput(12,1){\rnode{weiter_3}{\psframebox{$\bigotimes$}}}
335         \ncline[]{->}{inc_c}{weiter_3}
336
337       \end{pspicture}
338       \caption{{\em NLSOP} Ablaufschema Teil 2: Einbau des Kohlenstoffs (gr"un).}
339       \label{img:flowchart2}
340       \end{center}
341       \end{figure}
342
343     Nachdem das Ion die Sto"sprozesse beendet hat, kommt es im Target zur Ruhe.
344     Die Wahl des Volumens, in das das Ion eingebaut wird, ist analog zur Wahl der Ermittlung des zu sto"senden Volumens.
345     Lediglich die Implantationstiefe wird durch eine Zufallszahl bestimmt, deren Wahrscheinlichkeitsverteilung dem Konzentrationsprofil entspricht.
346     Zur Erzeugung der entsprechenden Zufallszahl wird wieder die in \ref{subsubsection:verwerf_meth} beschriebene Verwerfungsmethode benutzt.
347
348     In dem ausgew"ahlten W"urfel $\vec{r}(k,l,m)$ wird der Z"ahler f"ur den Kohlenstoff um eins erh"oht.
349
350     \subsection{Diffusion und Sputtern}
351
352       \begin{figure}[h]
353       \begin{center}
354       \begin{pspicture}(0,0)(15,14)
355
356         \rput(7,14){\rnode{weiter_4}{\psframebox{$\bigotimes$}}}
357
358         \rput(11,12){\rnode{is_d}{\psframebox[fillstyle=solid,fillcolor=yellow]{Durchlauf vielfaches von $d_v$?}}}
359         \ncline[]{->}{weiter_4}{is_d}
360
361         \rput(3,12){\rnode{is_s}{\psframebox[fillstyle=solid,fillcolor=red]{Durchlauf vielfaches von $n$?}}}
362         \ncline[]{->}{is_d}{is_s}
363         \lput*{0}{nein}
364
365         \rput(11,10){\rnode{loop_d}{\psframebox[fillstyle=solid,fillcolor=yellow]{Gehe alle/verbleibende Volumina durch?}}}
366         \ncline[]{->}{is_d}{loop_d}
367         \lput*{0}{ja}
368
369         \rput(11,9){\rnode{d_is_amorph}{\psframebox[fillstyle=solid,fillcolor=yellow]{Volumen $\vec{r}(k,l,m)$ amorph?}}}
370         \ncline[]{->}{loop_d}{d_is_amorph}
371
372         \rput(11,7){\rnode{loop_dn}{\psframebox[fillstyle=solid,fillcolor=yellow]{\parbox{4cm}{
373           Gehe alle/verbleibende\\
374           direkte Nachbarn durch
375         }}}}
376         \ncline[]{->}{d_is_amorph}{loop_dn}
377         \lput*{0}{ja}
378
379         \rput(11,6){\rnode{is_cryst}{\psframebox[fillstyle=solid,fillcolor=yellow]{Nachbarvolumen kristallin?}}}
380         \ncline[]{->}{loop_dn}{is_cryst}
381
382         \rput(12,4){\rnode{transfer}{\psframebox[fillstyle=solid,fillcolor=yellow]{\parbox{3.5cm}{
383           "Ubertrage den Anteil $d_r$ des Kohlenstoffs
384         }}}}
385         \ncline[]{->}{is_cryst}{transfer}
386         \lput*{0}{ja}
387
388         \rput(11,3){\rnode{check_dn}{\psframebox[fillstyle=solid,fillcolor=yellow]{Alle Nachbarn durch?}}}
389         \ncline[]{->}{transfer}{check_dn}
390         \rput(9.5,5){\pnode{h1}}
391         \ncline[]{is_cryst}{h1}
392         \rput(9.5,3.2){\pnode{h2}}
393         \ncline[]{->}{h1}{h2}
394         \lput*{0}{nein}
395         \rput(14,3){\pnode{h3}}
396         \ncline[]{check_dn}{h3}
397         \rput(14,7){\pnode{h4}}
398         \ncline[]{h3}{h4}
399         \lput*{0}{nein}
400         \ncline[]{->}{h4}{loop_dn}
401
402         \rput(11,1){\rnode{check_d}{\psframebox[fillstyle=solid,fillcolor=yellow]{Alle Volumina durch?}}}
403         \ncline[]{->}{check_dn}{check_d}
404         \lput*{0}{ja}
405         \rput(14.5,1){\pnode{h5}}
406         \ncline[]{check_d}{h5}
407         \rput(14.5,10){\pnode{h6}}
408         \ncline[]{h5}{h6}
409         \lput*{0}{nein}
410         \ncline[]{->}{h6}{loop_d}
411         \rput(7,1){\pnode{h7}}
412         \ncline[]{check_d}{h7}
413         \lput*{0}{ja}
414         \rput(7,11){\pnode{h8}}
415         \ncline[]{h7}{h8}
416         \rput(5.4,11.9){\pnode{h9}}
417         \ncline[]{->}{h8}{h9}
418
419         \rput(3,9){\rnode{s_p}{\psframebox[fillstyle=solid,fillcolor=red]{\parbox{7cm}{
420           Sputterroutine:\\
421           \begin{itemize}
422             \item Kopiere Inhalt von Ebene $i$ nach\\
423                   Ebene $i-1$ f"ur $i = Z,Z-1,\ldots ,2$
424             \item Setze Status jedes Volumens in Ebene $Z$ kristallin
425             \item Setze Kohlenstoff jedes Volumens in Ebene $Z$ auf Null
426           \end{itemize}
427         }}}}
428         \ncline[]{->}{is_d}{loop_d}
429         \lput*{0}{ja}
430         \ncline[]{->}{is_s}{s_p}
431
432         \rput(3,5){\rnode{check_n}{\psframebox{\parbox{4cm}{
433           Anzahl Durchl"aufe entsprechend Dosis?
434         }}}}
435         \ncline[]{->}{s_p}{check_n}
436
437         \rput(5,3){\rnode{start}{\psframebox{{\em NLSOP} Start}}}
438         \ncline[]{->}{check_n}{start}
439         \lput*{0}{nein}
440         \rput(1,3){\rnode{stop}{\psframebox{{\em NLSOP} Stop}}}
441         \ncline[]{->}{check_n}{stop}
442         \lput*{0}{ja}
443
444       \end{pspicture}
445       \caption{{\em NLSOP} Ablaufschema Teil 2: Diffusion (gelb) und Sputtervorgang (rot).}
446       \label{img:flowchart3}
447       \end{center}
448       \end{figure}
449
450     Im Folgenden wird auf die Realisierung der Diffusion eingegangen.
451     Die Simulation geht der Reihe nach alle Volumina durch.
452     Im Falle eines amorphen Volumens werden aus direkt anliegenden kristallinen Volumina ein Anteil $d_r$ des Kohlenstoffs abgezogen und zu dem amorphen Volumen addiert.
453     Da nur ganze Atome "ubertragen werden k"onnen, wird der Betrag auf die n"achst kleinere ganze Zahl abgerundet.
454     Dieser Diffusionsvorgang wird alle $d_v$ Schritte ausgef"uhrt.
455
456     Hier sei angemerkt, dass die Simulation prinzipiell auch Diffusion von Kohlenstoff innerhalb kristalliner Volumina behandeln kann.
457     Die erste Idee war, dass Kohlenstoff in kristalline Gebiete diffundieren kann, die bereits einen grossen Anteil ihres Kohlenstoffs an einen amorphen Nachbarn abgegeben haben.
458     Da jedoch das Konzentrationsprofil durch Diffusionsprozesse nicht ver"andert wird \cite{goetz}, wurde die rein kristalline Diffusion in $z$-Richtung ausgeschlossen.
459     %Da weiterhin die Implantationsprofile von experimentellen Messungen und {\em TRIM}-Simulationen recht gut "ubereinstimmen, kann Diffusion in $z$-Richtung tats"achlich ausgeschlossen werden.
460     Eine Vorzugsrichtung der Diffusion ist unphysikalisch, weshalb die gesamte Diffusion innerhalb kristalliner Gebiete in den folgenden Simulationen ausgeschlossen wurde.
461     Als Relikt bleibt die Option die Diffusion auch vom Kristallinen ins Amorphe in $z$-Richtung auszuschalten.
462     Setzt sich die Diffusionsrate aus einem Beitrag $d_r^{x,y}$ f"ur Diffusion in der Ebene und einem Beitrag $d_r^z$ f"ur Diffusion in $z$-Richtung zusammen, so kann durch diese Option $d_r^z = 0$ gesetzt werden.
463
464     Die Sputterroutine wird nach der Dosis, die einem Abtrag von einer Ebene von Zellen ($3 nm$) entspricht, ausgef"uhrt und bewirkt, dass diese oberste Ebene entfernt wird.
465     Der Zusammenhang zwischen Sputterrate $S$ und Anzahl der Simulationsdurchl"aufe $n$ ist demnach wie folgt gegeben:
466     \begin{equation}
467     S = \frac{(3 nm)^3 XY }{n} \quad \textrm{.}
468     \end{equation}
469     Nach $n$ Simulationsdurchl"aufen wird eine kohlenstofffreie, kristalline Ebene von unten her eingeschoben.
470     Der Inhalt der Ebene $i$ wird auf die Ebene $i-1$ (f"ur $i = Z, Z-1, \ldots, 2$) "uberschrieben.
471     Die Information der obersten Ebene $i=1$ geht dabei verloren.
472     Diese entspricht der abgetragenen Ebene.
473     Die Ebene $i=Z$ erh"alt kristallinen Status und die Kohlenstoffkonzentration Null.
474
475     Dies macht allerdings nur Sinn, wenn das Implantationsprofil und die nukleare Bremskraft f"ur die Ebenen tiefer $Z$ auf Null abgefallen ist, um kristalline, kohlenstofffreie Ebenen zu garantieren.
476     Daher wird das Sputtern nur in Simulationen "uber gro"se Tiefenbereiche ber"ucksichtigt.
477
478     Die Sputterrate kann durch {\em TRIM} beziehungsweise Messungen des Kohlenstoffprofils bestimmt werden.
479     Bei den gegebenen Bedingungen werden ungef"ahr $50 nm$ des Targets bei einer Dosis von $4,3 \times 10^{-17} cm^{-2}$ abgetragen \cite{basic_phys_proc}.
480
481   \section{Simulierte Tiefenbereiche}
482   \label{section:sim_tiefenbereich}
483
484   Wie bereits erw"ahnt wurden zwei verschiedene Versionen des Programms entwickelt. Sie simulieren zwei unterschiedlich gro"se Tiefenbereiche, welche im Folgenden Simulationsfenster genannt werden.
485
486   Da in erster Linie der Selbstorganisationsprozess der lamellaren Ausscheidungen an der vorderen Grenzfl"ache der amorphen $SiC_x$-Schicht simuliert werden soll, behandelt die erste Version den Tiefenbereich von der Oberfl"ache bis zum Beginn der durchgehend amorphen Schicht.
487   Dies entspricht einer Tiefe von ungef"ahr $300 nm$ und somit einer Anzahl von $Z=100$ W"urfeln in $z$-Richtung.
488
489   Wie in Abbildung \ref{img:bk_impl_p} gut zu erkennen ist, kann in diesem Tiefenbereich sowohl die Reichweitenverteilung, als auch die nukleare Bremskraft durch eine von der Tiefe linear abh"angige Funktion gen"ahert werden.
490   Daher ergeben sich "Anderungen zu den im vorigen Abschnitt erkl"arten Methoden zur Wahl des Volumens, in dem ein Sto"sprozess beziehungsweise eine Konzentrationserh"ohung stattfindet.
491
492   Die Zufallszahl $z$, die auf die Tiefenkoordinate $m$ abgebildet wird, muss der Verteilung $p(z)dz = (sz + s_0)dz$ gen"ugen.
493   Dabei beschreiben $s$ und $s_0$ die linear gen"aherte nukleare Bremskraft.
494   Die Transformation wird wie in Abschnitt \ref{subsubsection:lin_g_p} beschrieben durchgef"uhrt.
495   Dasselbe betrifft die Wahl der Tiefenkoordinate f"ur den Einbau des Kohlenstoffatoms.
496   Anstatt der Wahrscheinlichkeitsverteilung der nuklearen Bremskraft entsprechend, wird eine Verteilung entsprechend dem  linear gen"aherte Implantationsprofil verwendet.
497   Ausserdem wird nicht nach jedem Durchlauf ein Ion im Simulationsbereich zur Ruhe kommen.
498   Da das Maximum der Reichweitenverteilung sehr viel tiefer liegt, werden die meisten Ionen ausserhalb des Simulationsfensters liegen bleiben.
499   Daher wird immer nur dann ein Ion eingebaut, wenn der im Simulationsbereich vorhandene Kohlenstoff $n_c$ kleiner als die Anzahl der Durchl"aufe $n$ multipliziert mit dem Verh"altnis der Fl"ache der Kohlenstoffverteilungskurvekurve $c_C(z)$ bis $300 nm$ zur Fl"ache der gesamten Kohlenstoffverteilungskurve ist.
500   \begin{equation}
501   n_c < n \frac{\int_0^{300 nm} c_C(z) dz}{\int_0^{\infty} c_C(z) dz}
502   \end{equation}
503
504   Da sowohl die Reichweitenverteilung, als auch die nukleare Bremskraft in Ebenen gr"osser $Z$ ungleich Null ist, kann Sputtern nicht beachtet werden.
505   Der Diffusionsprozess ist uneingeschr"ankt m"oglich.
506   In der ersten Version wurde der Einfluss der amorph/kristallinen Struktur direkter Nachbarn auf die Rekristallisation nach \eqref{eq:p_ac_genau} noch nicht beachtet.
507   Die Rekristallisationswahrscheinlichkeit ergibt sich hier aus \eqref{eq:p_ac_local}.
508   Die Rechenzeit einer Simulation mit $3 \times 10^7$ Durchl"aufen, einem $64 \times 64 \times 100$ grossem Target und Diffusion alle $100$ Schritte betr"agt auf einem $900 Mhz$ {\em Pentium 3} ungef"ahr $3$ Stunden.
509
510   In der zweiten Version wird die gesamte Implantationstiefe simuliert.
511   Das Simulationsfenster geht von $0-700 nm$.
512   Dies entspricht einer Anzahl $Z=233$ von W"urfeln in $z$-Richtung.
513
514   Die Tiefenkoordinaten f"ur den Sto"sprozess und die Kohlenstoffinkorporation werden, wie in Abschnitt \ref{subsection:a_r_step} beschrieben, nach der Verwerfungsmethode entsprechend dem nuklearen Bremskraftprofil und der Reichweitenverteilung gewonnen.
515
516    Da sowohl der nukleare Energieverlust als auch die Kohlenstoffkonzentration in Ebenen gr"osser $Z$ auf Null abgesunken ist, kann die Sputterroutine ausgef"uhrt werden.
517    Der Diffusionsprozess ist ebenfalls uneingeschr"ankt m"oglich.
518    Auf dem selben Rechner ben"otigt eine Simulation f"ur ein Target der oben genannten Ausdehnung, einer Anzahl von $100$ Treffern pro Ion und $160 \times 10^6$ Schritten mit Diffusion alle $10^6$ Schritte ungef"ahr $3$ Tage.
519
520   \section{Test der Zufallszahlen}
521
522   Die Simulation kann auf zwei verschiedene Arten die ben"otigten Zufallszahlen beziehen.
523   Die erste M"oglichkeit ist das Lesen der Zufallszahlen aus einer speziellen, vom Betriebssystem bereitgestellten Zeichendatei {\em /dev/urandom}.
524   Das Betriebssystem generiert aus dem Rauschen einiger Treiber, zum Beispiel den Treibern f"ur Tastatur, Maus und Festplatte einen Vorrat an Entropie.
525   Eine Zufallszahl wird durch Anwendung des {\em SHA}-Algorithmus (kurz f"ur {\bf S}ecure {\bf H}ash {\bf A}lgorithm) auf den Inhalt des Entropievorrates erzeugt.
526   Eine zweite M"oglichkeit ist die Verwendung des Zufallszahlengenerators der Standardbibliothek der Programmiersprache {\em C}.
527   Diese generiert die Zufallszahlensequenz nach der im Abschnitt \ref{subsection:rand_gen} vorgestellten linearen Kongruenzmethode.
528   Das zuletzt genannte Verfahren ist damit unabh"angig vom Betriebssystem.
529
530   F"ur vern"unftige Ergebnisse muss die Qualit"at der Zufallszahlen gesichert sein.
531   Es gibt viele statistische Tests um eine Zahlenfolge auf ihre Verteilung beziehungsweise Zuf"alligkeit zu "uberpr"ufen.
532   Die am h"aufigsten verwendeten Testverfahren sind der $\chi^2$-Test und der Kolmogorov-Smirnov-Test \cite{knuth}.
533   
534   Im Folgenden soll nur kontrolliert werden, dass f"ur gleichverteilte Zufallszahlen keine lokalen Anh"aufungen von Zahlen existieren.
535   Desweiteren werden die Methoden zur Erzeugung spezieller Wahrscheinlichkeitsverteilungen durch Vergleich der H"aufigkeit auftretender Zufallszahlen mit dem gew"unschten Verlauf "uberpr"uft.
536
537   Dazu werden f"ur die unterschiedlichen Verteilungen jeweils 10 Millionen Zufallszahlen zwischen $0$ und $232$ erzeugt und auf die n"achst kleinere ganze Zahl abgerundet.
538   Ein einfaches Scriptprogramm ({\em random\_parse.sh}, siehe Anhang \ref{section:hilfsmittel}) z"ahlt die H"aufigkeit der einzelnen Zufallszahlen in der Zufallszahlensequenz.
539
540   \printimg{h}{width=13cm}{random.eps}{H"aufigkeit ganzzahliger Zufallszahlen unterschiedlicher Wahrscheinlichkeitsverteilungen. F"ur jede Verteilung wurden 10 Millionen Zufallszahlen ausgew"urfelt.}{img:random_distrib}
541   Abbildung \ref{img:random_distrib} zeigt die H"aufigkeit von Zufallszahlen zwischen $0$ und $232$, abgerundet auf die n"achst kleinere ganze Zahl, f"ur unterschiedliche Wahrscheinlichkeitsverteilungen.
542   Die blauen Punkte zeigen die Gleichverteilung nach \eqref{eq:gleichverteilte_r}.
543   Man erkennt keine lokalen Anh"aufungen.
544   Die roten Punkte zeigen die H"aufigkeit der Zufallszahlen bei Verwendung einer linear steigenden Wahrscheinlichkeitsverteilung wie in Abschnitt \ref{subsubsection:lin_g_p} beschrieben.
545   Dabei wurde $a=1$, $b=0$ und $Z=233$ gew"ahlt.
546   Wie erwartet zeigen die Punkte einen linearen Verlauf.
547   Die H"aufigkeiten, der mit der Verwerfungsmethode erzeugten Zufallszahlen entsprechend der nuklearen Bremskraft (gr"un) und dem Implantationsprofil (schwarz), stimmen sehr gut mit den Profilen in Abbildung \ref{img:bk_impl_p} "uberein.
548
549