a bit more ...
[lectures/latex.git] / nlsop / diplom / simulation.tex
index d9d01e5..c1ced37 100644 (file)
@@ -1,4 +1,5 @@
 \chapter{Simulation}
 \chapter{Simulation}
+\label{chapter:simulation}
 
   Im Folgenden soll die Implementation der Monte-Carlo-Simulation nach dem vorangegangen Modell diskutiert werden.
   Die Simulation tr"agt den Namen {\em NLSOP}, was kurz f"ur die Schlagw"orter {\bf N}ano, {\bf L}amelle und {\bf S}elbst{\bf O}ragnisations{\bf P}rozess steht.
 
   Im Folgenden soll die Implementation der Monte-Carlo-Simulation nach dem vorangegangen Modell diskutiert werden.
   Die Simulation tr"agt den Namen {\em NLSOP}, was kurz f"ur die Schlagw"orter {\bf N}ano, {\bf L}amelle und {\bf S}elbst{\bf O}ragnisations{\bf P}rozess steht.
     Bei den gegebenen Bedingungen werden ungef"ahr $50 nm$ des Targets bei einer Dosis von $4,3 \times 10^{-17} cm^{-2}$ abgetragen.
 
   \section{Simulierte Tiefenbereiche}
     Bei den gegebenen Bedingungen werden ungef"ahr $50 nm$ des Targets bei einer Dosis von $4,3 \times 10^{-17} cm^{-2}$ abgetragen.
 
   \section{Simulierte Tiefenbereiche}
+  \label{section:sim_tiefenbereich}
 
   Wie bereits erw"ahnt gibt es zwei verschiedene Versionen des Programms, die verschiedene Tiefenbereiche, im Folgenden Simulationsfenster genannt, simulieren.
 
 
   Wie bereits erw"ahnt gibt es zwei verschiedene Versionen des Programms, die verschiedene Tiefenbereiche, im Folgenden Simulationsfenster genannt, simulieren.
 
   Die Transformation wird wie in Abschnitt \ref{subsubsection:lin_g_p} beschrieben durchgef"uhrt.
   Dasselbe betrifft die Wahl der Tiefen-Koordinate f"ur den Einbau des Kohlenstoffatoms.
   Anstatt der Wahrscheinlichkeitsverteilung der nuklearen Bremskraft entsprechend wird das linear gen"aherte Implantationsprofil verwendet.
   Die Transformation wird wie in Abschnitt \ref{subsubsection:lin_g_p} beschrieben durchgef"uhrt.
   Dasselbe betrifft die Wahl der Tiefen-Koordinate f"ur den Einbau des Kohlenstoffatoms.
   Anstatt der Wahrscheinlichkeitsverteilung der nuklearen Bremskraft entsprechend wird das linear gen"aherte Implantationsprofil verwendet.
+  Ausserdem wird nicht nach jedem Durchlauf ein Ion im Simulationsbereich zur Ruhe kommen.
+  Da das Maximum der Reichweitenverteilung sehr viel tiefer liegt werden die meisten Ionen ausserhalb des Simulationsfensters stehen bleiben.
+  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 Implantationskurve $I(x)$ bis $300 nm$ zur Fl"ache der gesamten Implantationskurve ist.
+  \begin{equation}
+  n_c < n \frac{\int_0^{300 nm} I(x) dx}{\int_0^{\infty} I(x) dx}
+  \end{equation}
 
   Da sowohl die Reichweitenverteilung als auch die nukleare Bremskraft in Ebenen gr"osser $Z$ ungleich Null ist kann Sputtern nicht beachtet werden.
   Der Diffusionsprozess ist uneingeschr"ankt "moglich.
 
   Da sowohl die Reichweitenverteilung als auch die nukleare Bremskraft in Ebenen gr"osser $Z$ ungleich Null ist kann Sputtern nicht beachtet werden.
   Der Diffusionsprozess ist uneingeschr"ankt "moglich.
 
   \section{Ablaufschema}
 
 
   \section{Ablaufschema}
 
-  Das 
+  Das Ablaufshema ist aus Platzgr"unden in zwei Teile gegliedert.
+  Abbildung \ref{img:flowchart1} zeigt das Ablaufshema des Amorphisierungs- und Rekristallisationsvorgangs.
+  In Abbildung \ref{img:flowchart2} wird der Kohlenstoffeinbau sowie Diffusion und Sputtern behandelt.
+
+  \begin{figure}[h]
+  \begin{pspicture}(0,0)(12,18)
+
+    \rput(6,18){\rnode{start}{\psframebox{{\em NLSOP} Start}}}
+
+    \rput(6,16){\rnode{random1}{\psframebox{\parbox{7.5cm}{
+      Ausw"urfeln der Zufallszahlen:\\
+      $R_1$, $R_2$, $R_3$ entsprechend nuklearer Bremskraft\\
+      $R_4 \in [0,1[$
+    }}}}
+    \ncline[]{->}{start}{random1}
+
+    \rput(6,14){\rnode{koord_wahl}{\psframebox{\parbox{7.5cm}{
+      Bestimmung von $\vec{r}(k,l,m)$ durch Abbildung von $R_1$, $R_2$ und $R_3$ auf $k$, $l$ und $m$
+    }}}}
+    \ncline[]{->}{random1}{koord_wahl}
+
+    \rput(6,11){\rnode{berechnung_pca}{\psframebox{\parbox{12cm}{
+      Berechnung von $p_{c \rightarrow a}(\vec{r})$ und $p_{a \rightarrow c}(\vec{r})$:
+      \[
+      \begin{array}{lll}
+      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} \\
+      p_{a \rightarrow c}(\vec r) & = & (1 - p_{c \rightarrow a}(\vec r)) \Big(1 - \frac{\sum_{direkte \, Nachbarn} \delta (\vec{r'})}{6} \Big)
+      \end{array}
+      \]
+      \[
+      \delta (\vec r) = \left\{
+        \begin{array}{ll}
+       1 & \textrm{wenn Gebiet bei $\vec r$ amorph} \\
+       0 & \textrm{sonst} \\
+       \end{array}
+      \right.
+      \]
+    }}}}
+    \ncline[]{->}{koord_wahl}{berechnung_pca}
+
+    \rput(6,8){\rnode{status}{\psframebox{Volumen $\vec{r}(k,l,m)$ amorph?}}}
+    \ncline[]{->}{berechnung_pca}{status}
+
+    \rput(3,6){\rnode{cryst}{\psframebox[linestyle=solid,linecolor=blue]{$R_4 \le p_{c \rightarrow a}$?}}}
+    \rput(9,6){\rnode{amorph}{\psframebox[linestyle=solid,linecolor=red]{$R_4 \le p_{a \rightarrow c}$?}}}
+    \ncline[]{->}{status}{cryst}
+    \lput*{0}{nein}
+
+    \ncline[]{->}{status}{amorph}
+    \lput*{0}{ja}
+
+    \rput(3,4){\rnode{do_amorph}{\psframebox[linestyle=solid,linecolor=red]{Setze Volumen amorph}}}
+    \ncline[]{->}{cryst}{do_amorph}
+    \lput*{0}{ja}
+
+    \rput(9,4){\rnode{do_cryst}{\psframebox[linestyle=solid,linecolor=blue]{Setze Volumen kristallin}}}
+    \ncline[]{->}{amorph}{do_cryst}
+    \lput*{0}{ja}
+
+    \rput(6,3){\rnode{check_h}{\psframebox{Anzahl der Durchl"aufe gleich Anzahl der Treffer pro Ion?}}}
+
+    \rput(6,6){\pnode{h_2}}
+    \ncline[]{amorph}{h_2}
+    \ncline[]{->}{h_2}{check_h}
+    \lput*{0}{nein}
+
+    \rput(6,6){\pnode{h_3}}
+    \ncline[]{cryst}{h_3}
+    \ncline[]{->}{h_3}{check_h}
+    \lput*{0}{nein}
+
+    \rput(13,3){\pnode{h_4}}
+    \rput(13,16){\pnode{h_5}}
+    \ncline[]{check_h}{h_4}
+    \ncline[]{h_4}{h_5}
+    \lput*{0}{nein}
+    \ncline[]{->}{h_5}{random1}
+
+    \ncline[]{->}{do_cryst}{check_h}
+    \ncline[]{->}{do_amorph}{check_h}
+
+    \rput(6,1){\rnode{weiter_1}{\psframebox{$\bigotimes$}}}
+    \ncline[]{->}{check_h}{weiter_1}
+    \lput*{0}{ja}
+
+  \end{pspicture}
+  \caption{{\em NLSOP} Ablaufshema Teil 1: Amorphisierung und Rekristallisation.}
+  \label{img:flowchart1}
+  \end{figure}
+
+  \begin{figure}[h]
+  \begin{pspicture}(0,0)(12,18)
+
+    \rput(6,18){\rnode{weiter_2}{\psframebox{$\bigotimes$}}}
+
+    \rput(6,16){\rnode{random2}{\psframebox[fillstyle=solid,fillcolor=green]{\parbox{7.5cm}{
+      Ausw"urfeln der Zufallszahlen:\\
+      $R_5$, $R_6$, $R_7$ entsprechend Reichweitenverteilung
+    }}}}
+    \ncline[]{->}{weiter_2}{random2}
+
+    \rput(2,14){\rnode{koord_wahl_i}{\psframebox[fillstyle=solid,fillcolor=green]{\parbox{7cm}{
+      Bestimmung von $\vec{r}(k,l,m)$ durch Abbildung von $R_5$, $R_6$ und $R_7$ auf $k$, $l$ und $m$
+    }}}}
+    \ncbar[angleA=180,angleB=180]{->}{random2}{koord_wahl_i}
+
+    \rput(10,14){\rnode{inc_c}{\psframebox[fillstyle=solid,fillcolor=green]{\parbox{7cm}{
+      Erh"ohung des Kohlenstoffs im Volumen $\vec{r}(k,l,m)$
+    }}}}
+    \ncline[]{->}{koord_wahl_i}{inc_c}
+
+    \rput(10,12){\rnode{is_d}{\psframebox[fillstyle=solid,fillcolor=yellow]{Durchlauf vielfaches von $d_v$?}}}
+    \ncline[]{->}{inc_c}{is_d}
+
+    \rput(2,12){\rnode{is_s}{\psframebox[fillstyle=solid,fillcolor=red]{Durchlauf vielfaches von $n$?}}}
+    \ncline[]{->}{is_d}{is_s}
+    \lput*{0}{nein}
+
+    \rput(10,10){\rnode{loop_d}{\psframebox[fillstyle=solid,fillcolor=yellow]{Gehe alle/verbleibende Volumina durch?}}}
+    \ncline[]{->}{is_d}{loop_d}
+    \lput*{0}{ja}
+
+    \rput(10,9){\rnode{d_is_amorph}{\psframebox[fillstyle=solid,fillcolor=yellow]{Volumen $\vec{r}(k,l,m)$ amorph?}}}
+    \ncline[]{->}{loop_d}{d_is_amorph}
+
+    \rput(10,7){\rnode{loop_dn}{\psframebox[fillstyle=solid,fillcolor=yellow]{\parbox{4cm}{
+      Gehe alle/verbleibende\\
+      direkte Nachbarn durch
+    }}}}
+    \ncline[]{->}{d_is_amorph}{loop_dn}
+    \lput*{0}{ja}
+
+    \rput(10,6){\rnode{is_cryst}{\psframebox[fillstyle=solid,fillcolor=yellow]{Nachbarvolumen kristallin?}}}
+    \ncline[]{->}{loop_dn}{is_cryst}
+
+    \rput(11,4){\rnode{transfer}{\psframebox[fillstyle=solid,fillcolor=yellow]{\parbox{3.5cm}{
+      "Ubertrage den Anteil $d_r$ des Kohlenstoffs
+    }}}}
+    \ncline[]{->}{is_cryst}{transfer}
+    \lput*{0}{ja}
+
+    \rput(10,3){\rnode{check_dn}{\psframebox[fillstyle=solid,fillcolor=yellow]{Alle Nachbarn durch?}}}
+    \ncline[]{->}{transfer}{check_dn}
+    \rput(8.5,5){\pnode{h1}}
+    \ncline[]{is_cryst}{h1}
+    \rput(8.5,3.2){\pnode{h2}}
+    \ncline[]{->}{h1}{h2}
+    \lput*{0}{nein}
+    \rput(13,3){\pnode{h3}}
+    \ncline[]{check_dn}{h3}
+    \rput(13,7){\pnode{h4}}
+    \ncline[]{h3}{h4}
+    \lput*{0}{nein}
+    \ncline[]{->}{h4}{loop_dn}
+
+    \rput(10,1){\rnode{check_d}{\psframebox[fillstyle=solid,fillcolor=yellow]{Alle Volumina durch?}}}
+    \ncline[]{->}{check_dn}{check_d}
+    \lput*{0}{ja}
+    \rput(13.5,1){\pnode{h5}}
+    \ncline[]{check_d}{h5}
+    \rput(13.5,10){\pnode{h6}}
+    \ncline[]{h5}{h6}
+    \lput*{0}{nein}
+    \ncline[]{->}{h6}{loop_d}
+    \rput(6,1){\pnode{h7}}
+    \ncline[]{check_d}{h7}
+    \lput*{0}{ja}
+    \rput(6,11){\pnode{h8}}
+    \ncline[]{h7}{h8}
+    \rput(4.4,11.9){\pnode{h9}}
+    \ncline[]{->}{h8}{h9}
+
+    \rput(2,9){\rnode{s_p}{\psframebox[fillstyle=solid,fillcolor=red]{\parbox{7cm}{
+      Sputterroutine:\\
+      \begin{itemize}
+        \item Kopiere Inhalt von Ebene $i$ nach\\
+              Ebene $i-1$ f"ur $i = Z,Z-1,\ldots ,2$
+        \item Setze Status jedes Volumens in Ebene $Z$ kristallin
+        \item Setze Kohlenstoff jedes Volumens in Ebene $Z$ auf Null
+      \end{itemize}
+    }}}}
+    \ncline[]{->}{is_d}{loop_d}
+    \lput*{0}{ja}
+    \ncline[]{->}{is_s}{s_p}
+
+    \rput(2,5){\rnode{check_n}{\psframebox{\parbox{4cm}{
+      Anzahl Durchl"aufe entsprechend Dosis?
+    }}}}
+    \ncline[]{->}{s_p}{check_n}
+
+    \rput(4,3){\rnode{start}{\psframebox{{\em NLSOP} Start}}}
+    \ncline[]{->}{check_n}{start}
+    \lput*{0}{nein}
+    \rput(0,3){\rnode{stop}{\psframebox{{\em NLSOP} Stop}}}
+    \ncline[]{->}{check_n}{stop}
+    \lput*{0}{ja}
+
+  \end{pspicture}
+  \caption{{\em NLSOP} Ablaufshema Teil 2: Kohlenstoffeinbau (gr"un), Diffusion (gelb) und Sputtervorgang (rot).}
+  \label{img:flowchart2}
+  \end{figure}