4 \usepackage[german]{babel}
5 \usepackage[latin1]{inputenc}
6 \usepackage[T1]{fontenc}
11 \graphicspath{{./img/}}
15 \author{Frank Zirkelbach}
17 \title{Nanolamellare Selbstordnungsprozesse bei Kohlenstoffimplantation in $(100)$-orientiertes Silizium bei Temperaturen kleiner $400$ Grad Celsius}
28 \section{Abbremsung von Ionen}
31 \chapter{Die Simulation}
33 \section{Modellannahmen}
36 \section{Ablaufschema}
42 \textnode{start}(4,30){nlsop start}
43 \rectnode{rand1}[6,3](4,27.5)
44 \freetext(4,28.5){zufaellige Wahl der Koordinaten:}
45 \freetext(4,27.5){$p(x)dx=dx$}
46 \freetext(4,27){$p(y)dy=dy$}
47 \freetext(4,26.5){$p(z)dz=(a_{el}*z+b_{el})dz$}
48 \diredge{start}{rand1}
49 \rectnode{p_ac_ca}[9,3](4,23.5)
50 \freetext(4,24.5){Berechnung der $p_{a \rightarrow c}$ bzw. $p_{c \rightarrow a}$:}
51 \freetext(4,23.5){$\displaystyle p_{c \rightarrow a}=\sum_{amorphe Nachbarn} \frac{a_{ap}}{\textrm{Abstand}^2} + b_{ap} + a_{cp}c_{\textrm{Kohlenstoff}}$}
52 \freetext(4,22.5){$\displaystyle p_{a \rightarrow c}=1-p_{c \rightarrow a}$}
53 \diredge{rand1}{p_ac_ca}
54 \textnode{ac}(4,21){Zelle $(x,y,z)$ amorph?}
56 \textnode{d_c}(2,19.5){Zufallszahl $< p_{a \rightarrow c}$ ?}
57 \textnode{d_a}(6,19.5){Zufallszahl $< p_{c \rightarrow a}$ ?}
59 \edgetext{ac}{d_a}{nein}
61 \edgetext{ac}{d_c}{ja}
62 \textnode{amount_c}(4,16.5){$\textrm{gesamter Kohlenstoff} < \textrm{steps} * c_{ratio}$ ?}
63 \diredge{d_c}{amount_c}
64 \diredge{d_a}{amount_c}
65 \textnode{make_c}(1,18){Zelle $(x,y,z) = \textrm{kristallin}$}
66 \textnode{make_a}(7,18){Zelle $(x,y,z) = \textrm{amorph}$}
68 \edgetext{d_c}{make_c}{ja}
70 \edgetext{d_a}{make_a}{ja}
71 \diredge{make_c}{amount_c}
72 \diredge{make_a}{amount_c}
73 \rectnode{rand2}[5,3](1.5,14)
74 \freetext(1.5,15){zufaellige Koordinaten:}
75 \freetext(1.5,14){$p(x)dx=dx$}
76 \freetext(1.5,13.5){$p(y)dy=dy$}
77 \freetext(1.5,13){$p(z)dz=(a_{cd}*z+b_{cd})dz$}
78 \diredge{amount_c}{rand2}
80 \rectnode{inc_c}[5,1.5](1.5,11)
81 \freetext(1.5,11){Erhoehe $c_{Kohlenstoff}(x,y,z)$}
82 \freetext(1.5,10.5){Erhoehe gesamten Kohlenstoff}
83 \diredge{rand2}{inc_c}
84 \textnode{d_d}(5,9.5){Diffusion}
86 \diredge{amount_c}{d_d}
87 \edgetext{amount_c}{d_d}{nein}
91 \caption{ablaufschema}
98 \textnode{n_start}(4,30){Diffusion}
99 \textnode{d_d}(4,29){steps vielfaches von diffrate?}
100 \diredge{n_start}{d_d}
101 \textnode{diff_for_loop}(2,28){Gehe verbleibende Zellen durch}
102 \diredge{d_d}{diff_for_loop}
103 \edgetext{d_d}{diff_for_loop}{ja}
104 \textnode{d_c}(2,27){Zelle kristallin?}
105 \diredge{diff_for_loop}{d_c}
106 \textnode{c_diff}(0.5,26){Gehe alle Nachbarn durch}
107 \diredge{d_c}{c_diff}
108 \edgetext{d_c}{c_diff}{ja}
109 \textnode{c2a_diff}(5.5,26){Gehe alle Nachbarn durch}
110 \diredge{d_c}{c2a_diff}
111 \edgetext{d_c}{c2a_diff}{nein}
112 \textnode{n_c}(0.5,25){Nachbar kristallin?}
113 \diredge{c_diff}{n_c}
114 \textnode{n_c2}(5.5,25){Nachbar kristallin?}
115 \diredge{c2a_diff}{n_c2}
116 \rectnode{c2c_d}[4,1.5](0.5,23.5)
117 \freetext(0.5,23.5){Bewege $\frac{\textrm{Differenz}}{2}*\textrm{dr cc}$}
118 \freetext(0.5,23){der Kohlenstoffatome}
120 \freetext(0.7,24.5){ja}
121 \rectnode{c2a_d}[4,1.5](6,23.5)
122 \freetext(6,23.5){Bewege $\frac{\textrm{Differenz}}{2}*\textrm{dr ac}$}
123 \freetext(6,23){der Kohlenstoffatome}
124 \diredge{n_c2}{c2a_d}
125 \freetext(6.2,24.5){ja}
126 \textnode{ne1}(0.5,22){Alle Nachbarn durch?}
128 \dirbow{n_c}{ne1}{-0.8}
129 \freetext(-2,24.5){nein}
130 \dirbow{ne1}{c_diff}{-0.6}
131 \freetext(2.5,22.5){nein}
132 \textnode{ne2}(6,22){Alle Nachbarn durch?}
134 \dirbow{n_c2}{ne2}{0.9}
135 \freetext(8,24.5){nein}
136 \dirbow{ne2}{c2a_diff}{0.6}
137 \freetext(4,22.5){nein}
138 \textnode{ze}(3,21){Alle Zellen durch?}
139 \dirbow{ze}{diff_for_loop}{-0.1}
140 \freetext(3,25){nein}
142 \edgetext{ne1}{ze}{ja}
144 \edgetext{ne2}{ze}{ja}
145 \textnode{test_sf}(3,20){steps vielfaches von save intervall?}
146 \diredge{ze}{test_sf}
147 \edgetext{ze}{test_sf}{ja}
148 \textnode{sf}(1,19){save data}
149 \diredge{test_sf}{sf}
150 \edgetext{test_sf}{sf}{ja}
151 \textnode{test_display}(3,18){steps vielfaches von display intervall?}
152 \diredge{sf}{test_display}
153 \diredge{test_sf}{test_display}
154 \edgetext{test_sf}{test_display}{nein}
155 \textnode{display}(1.5,17){display}
156 \diredge{test_display}{display}
157 \edgetext{test_display}{display}{ja}
158 \textnode{test_end}(3,16){$\textrm{steps} = \textrm{max steps}$?}
159 \diredge{display}{test_end}
160 \diredge{test_display}{test_end}
161 \edgetext{test_display}{test_end}{nein}
162 \textnode{nlsop_start}(7,16){nlsop start}
163 \diredge{test_end}{nlsop_start}
164 \edgetext{test_end}{nlsop_start}{nein}
165 \textnode{sf2}(3,15){save data}
166 \diredge{test_end}{sf2}
167 \edgetext{test_end}{sf2}{ja}
168 \textnode{display2}(3,14){user interaction?}
169 \diredge{sf2}{display2}
170 \textnode{nlsop_end}(1.5,13){nlsop end}
171 \diredge{display2}{nlsop_end}
172 \edgetext{display2}{nlsop_end}{nein}
173 \textnode{d_a_w_f_e}(5.5,13){display and wait for event}
174 \diredge{display2}{d_a_w_f_e}
175 \edgetext{display2}{d_a_w_f_e}{ja}
176 \textnode{test_event}(5.5,12){event $=$ quit?}
177 \diredge{d_a_w_f_e}{test_event}
178 \diredge{test_event}{nlsop_end}
179 \edgetext{test_event}{nlsop_end}{ja}
180 \textnode{ea}(5.5,11){eventaction}
181 \diredge{test_event}{ea}
182 \edgetext{test_event}{ea}{nein}
183 \dirbow{ea}{d_a_w_f_e}{-0.6}
187 \caption{ablaufschema 2}