\chapter{Basic principles of utilized simulation techniques}
\label{chapter:basics}

In the following the simulation methods used within the scope of this study are introduced.
Enabling the investigation of the evolution of structure on the atomic scale, molecular dynamics (MD) simulations are chosen for modeling the behavior and precipitation of C introduced into an initially crystalline Si environment.
To be able to model systems with a large amount of atoms computational efficient classical potentials to describe the interaction of the atoms are most often used in MD studies.
For reasons of flexibility in executing this non-standard task and in order to be able to use a novel interaction potential \cite{albe_sic_pot} an appropriate MD code called {\textsc posic}\footnote{{\textsc posic} is an abbreviation for {\bf p}recipitation {\bf o}f {\bf SiC}}\footnote{Source code: http://www.physik.uni-augsburg.de/\~{}zirkelfr/posic/posic.tar.bz2} including a library collecting respective MD subroutines was developed from scratch.
The basic ideas of MD in general and the adopted techniques as implemented in {\em posic} in particular are outlined in section \ref{section:md}, while the functional form and derivative of the employed classical potential is presented in appendix \ref{app:d_tersoff}.
An overview of the most important tools within the MD package is given in appendix \ref{app:code}.
Although classical potentials are often most successful and at the same time computationally efficient in calculating some physical properties of a particular system, not all of its properties might be described correctly due to the lack of quantum-mechanical effects.
Thus, in order to obtain more accurate results quantum-mechanical calculations from first principles based on density functional theory (DFT) were performed.
The Vienna {\em ab initio} simulation package ({\textsc vasp}) \cite{kresse96} is used for this purpose.
The relevant basics of DFT are described in section \ref{section:dft} while an overview of utilities mainly used to create input or parse output data of {\textsc vasp} is given in appendix \ref{app:code}.
The gain in accuracy achieved by this method, however, is accompanied by an increase in computational effort constraining the system to be described to be much smaller in size.
Thus, investigations based on DFT are restricted to single defects or combinations of two defects in a rather small Si supercell, their structural relaxation as well as some selected diffusion processes.
Next to the structure, defects can be characterized by the defect formation energy, a scalar indicating the costs necessary for the formation of the defect, which is explained in section \ref{section:basics:defects}.
The method used to investigate migration pathways to identify the prevalent diffusion mechanism is introduced in section \ref{section:basics:migration} and modifications to the {\textsc vasp} code implementing this method are presented in appendix \ref{app:patch_vasp}.

\section{Molecular dynamics simulations}
\label{section:md}

% todo
% rewrite!

\begin{quotation}
\dq We may regard the present state of the universe as the effect of the past and the cause of the future. An intellect which at any given moment knew all of the forces that animate nature and the mutual positions of the beings that compose it, if this intellect were vast enough to submit the data to analysis, could condense into a single formula the movement of the greatest bodies of the universe and that of the lightest atom; for such an intellect nothing could be uncertain and the future just like the past would be present before its eyes.\dq{}
\begin{flushright}
{\em Marquis Pierre Simon de Laplace, 1814.} \cite{laplace}
\end{flushright}
\end{quotation}

\noindent
Pierre Simon de Laplace phrased this vision in terms of a controlling, omniscient instance - the {\em Laplace demon} - which would be able to look into the future as well as into the past due to the deterministic nature of processes, governed by the solution of differential equations.
Although Laplace's vision is nowadays corrected by chaos theory and quantum mechanics, it expresses two main features of classical mechanics, the determinism of processes and time reversibility of the fundamental equations.
This understanding was one of the first ideas for doing molecular dynamics simulations, considering an isolated system of particles, the behaviour of which is fully determined by the solution of the classical equations of motion.

\subsection{Introduction to molecular dynamics simulations}

Molecular dynamics (MD) simulation is a technique to compute a system of particles, referred to as molecules, with their positions, volocities and forces among each other evolving in time.
The MD method was first introduced by Alder and Wainwright in 1957 \cite{alder57,alder59} to study the interactions of hard spheres.
The basis of the approach are Newton's equations of motion to describe classicaly the many-body system.
MD is the numerical way of solving the $N$-body problem which cannot be solved analytically for $N>3$.
A potential is necessary describing the interaction of the particles.
By MD a complete description of the system in the sense of classical mechanics on the microscopic level is obtained.
The microscopic information can then be translated to macroscopic observables by means of statistical mechanics.

The basic idea is to integrate Newton's equations numerically.
A system of $N$ particles of masses $m_i$ ($i=1,\ldots,N$) at positions ${\bf r}_i$ and velocities $\dot{{\bf r}}_i$ is given by
\begin{equation}
m_i \frac{d^2}{dt^2} {\bf r}_i = {\bf F}_i \, \textrm{.}
\end{equation}
The forces ${\bf F}_i$ are obtained from the potential energy $U(\{{\bf r}\})$:
\begin{equation}
{\bf F}_i = - \nabla_{{\bf r}_i} U({\{\bf r}\}) \, \textrm{.}
\end{equation}
Given the initial conditions ${\bf r}_i(t_0)$ and $\dot{{\bf r}}_i(t_0)$ the equations can be integrated by a certain integration algorithm.
The solution of these equations provides the complete information of a system evolving in time.
The following sections cover the tools of the trade necessary for the MD simulation technique.
Three ingredients are required for a MD simulation:
\begin{enumerate}
\item A model for the interaction between system constituents is needed.
      Interaction potentials and their accuracy for describing certain systems of elements will be outlined in section \ref{subsection:interact_pot}.
\item An integrator is needed, which propagtes the particle positions and velocities from time $t$ to $t+\delta t$, realised by a finite difference scheme which moves trajectories discretely in time.
      This is explained in section \ref{subsection:integrate_algo}.
\item A statistical ensemble has to be chosen, which allows certain thermodynamic quantities to be controlled or to stay constant.
      This is discussed in section \ref{subsection:statistical_ensembles}.
\end{enumerate}
Furthermore special techniques will be outlined, which reduce the complexity of the MD algorithm, though the evaluation of energy and force almost inevitably dictates the overall speed.

\subsection{Verlet integration}
\label{subsection:integrate_algo}

A numerical method to integrate Newton's equation of motion was presented by Verlet in 1967 \cite{verlet67}.
The idea of the so-called Verlet and a variant, the velocity Verlet algorithm, which additionaly generates directly the velocities, is explained in the following.
Starting point is the Taylor series for the particle positions at time $t+\delta t$ and $t-\delta t$
\begin{equation}
\vec{r}_i(t+\delta t)=
\vec{r}_i(t)+\delta t\vec{v}_i(t)+\frac{\delta t^2}{2m_i}\vec{f}_i(t)+
\frac{\delta t^3}{6}\vec{b}_i(t) + \mathcal{O}(\delta t^4)
\label{basics:verlet:taylor1}
\end{equation}
\begin{equation}
\vec{r}_i(t-\delta t)=
\vec{r}_i(t)-\delta t\vec{v}_i(t)+\frac{\delta t^2}{2m_i}\vec{f}_i(t)-
\frac{\delta t^3}{6}\vec{b}_i(t) + \mathcal{O}(\delta t^4)
\label{basics:verlet:taylor2}
\end{equation}
where $\vec{v}_i=\frac{d}{dt}\vec{r}_i$ are the velocities, $\vec{f}_i=m\frac{d}{dt^2}\vec{r}_i$ are the forces and $\vec{b}_i=\frac{d}{dt^3}\vec{r}_i$ are the third derivatives of the particle positions with respect to time.
The Verlet algorithm is obtained by summarizing and substracting equations \eqref{basics:verlet:taylor1} and \eqref{basics:verlet:taylor2}
\begin{equation}
\vec{r}_i(t+\delta t)=
2\vec{r}_i(t)-\vec{r}_i(t-\delta t)+\frac{\delta t^2}{m_i}\vec{f}_i(t)+
\mathcal{O}(\delta t^4)
\end{equation}
\begin{equation}
\vec{v}_i(t)=\frac{1}{2\delta t}[\vec{r}_i(t+\delta t)-\vec{r}_i(t-\delta t)]+
\mathcal{O}(\delta t^3)
\end{equation}
the truncation error of which is of order $\delta t^4$ for the positions and $\delta t^3$ for the velocities.
The velocities, although not used to update the particle positions, are not synchronously determined with the positions but drag behind one step of discretization.
The Verlet algorithm can be rewritten into an equivalent form, which updates the velocities and positions in the same step.
The so-called velocity Verlet algorithm is obtained by combining \eqref{basics:verlet:taylor1} with equation \eqref{basics:verlet:taylor2} displaced in time by $+\delta t$
\begin{equation}
\vec{v}_i(t+\delta t)=
\vec{v}_i(t)+\frac{\delta t}{2m_i}[\vec{f}_i(t)+\vec{f}_i(t+\delta t)]
\end{equation}
\begin{equation}
\vec{r}_i(t+\delta t)=
\vec{r}_i(t)+\delta t\vec{v}_i(t)+\frac{\delta t^2}{2m_i}\vec{f}_i(t) \text{ .}
\end{equation}
Since the forces for the new positions are required to update the velocity the determination of the forces has to be carried out within the integration algorithm.

\subsection{Interaction potentials for silicon and carbon}
\label{subsection:interact_pot}

% todo
% rewrite!

The potential energy of $N$ interacting atoms can be written in the form
\begin{equation}
U(\{{\bf r}\}) = \sum_i U_1({\bf r}_i) + \sum_i \sum_{j>i} U_2({\bf r}_i,{\bf r}_j) + \sum_i \sum_{j>i} \sum_{k>j>i} U_3({\bf r}_i,{\bf r}_j,{\bf r}_k) \ldots
\end{equation}
where $U$ is the total potential energy.
$U_1$ is a single particle potential describing external forces.
Examples of single particle potentials are the gravitational force or an electric field.
$U_2$ is a two body pair potential which only depends on the distance $r_{ij}$ between the two atoms $i$ and $j$.
If not only pair potentials are considered, three body potentials $U_3$ or multi body potentials $U_n$ can be included.
Usually these higher order terms are avoided since they are not easy to model and it is rather time consuming to evaluate potentials and forces originating from these many body terms.
Ordinary pair potentials have a close-packed structure like face-centered cubic (FCC) or hexagonal close-packed (HCP) as a ground state.
A pair potential is, thus, unable to describe properly elements with other structures than FCC or HCP.
Silicon and carbon for instance, have a diamand and zincblende structure with four covalently bonded neighbors, which is far from a close-packed structure.
A three body potential has to be included for these types of elements.

\subsubsection{The Tersoff bond order potential}

Tersoff proposed an empirical interatomic potential for covalent systems \cite{tersoff_si1,tersoff_si2}.
The Tersoff potential explicitly incorporates the dependence of bond order on local environments, permitting an improved description of covalent materials.
Due to the covalent character Tersoff restricted the interaction to nearest neighbor atoms accompanied by an increases in computational efficiency for the evaluation of forces and energy based on the short-range potential.
Tersoff applied the potential to silicon \cite{tersoff_si1,tersoff_si2,tersoff_si3}, carbon \cite{tersoff_c} and also to multicomponent systems like silicon carbide \cite{tersoff_m}.
...
The basic idea is that, in real systems, the bond order depends upon the local environment.
An atom with many neighbors forms weaker bonds than an atom with few neighbors since .

Here comes an explanation, energy per bond monotonically decreasing with the amount of bonds and so on and so on \ldots

The interatomic potential is taken to have the form
\begin{eqnarray}
E & = & \sum_i E_i = \frac{1}{2} \sum_{i \ne j} V_{ij} \textrm{ ,} \\
V_{ij} & = & f_C(r_{ij}) [ f_R(r_{ij}) + b_{ij} f_A(r_{ij}) ] \textrm{ .}
\end{eqnarray}
$E$ is the total energy of the system, constituted either by the sum over the site energies $E_i$ or by the bond energies $V_{ij}$.
The indices $i$ and $j$ correspond to the atoms of the system with $r_{ij}$ being the distance from atom $i$ to atom $j$.
The functions $f_R$ and $f_A$ represent a repulsive and an attractive pair potential.
The repulsive part is due to the orthogonalization energy of overlapped atomic wave functions.
The attractive part is associated with the bonding.
\begin{eqnarray}
f_R(r_{ij}) & = & A_{ij} \exp (- \lambda_{ij} r_{ij} ) \\
f_A(r_{ij}) & = & -B_{ij} \exp (- \mu_{ij} r_{ij} )
\end{eqnarray}
The function $f_C$ is the a cutoff function to limit the range of interaction to nearest neighbors.
It is designed to have a smooth transition of the potential at distances $R_{ij}$ and $S_{ij}$.
\begin{equation}
f_C(r_{ij}) = \left\{
  \begin{array}{ll}
    1, & r_{ij} < R_{ij} \\
    \frac{1}{2} + \frac{1}{2} \cos \Big[ \pi (r_{ij} - R_{ij})/(S_{ij} - R_{ij}) \Big], & R_{ij} < r_{ij} < S_{ij} \\
    0, & r_{ij} > S_{ij}
  \end{array} \right.
\label{eq:basics:fc}
\end{equation}
The function $b_{ij}$ represents a measure of the bond order, monotonically decreasing with the coordination of atoms $i$ and $j$.
It is of the form:
\begin{eqnarray}
b_{ij} & = & \chi_{ij} (1 + \beta_i^{n_i} \zeta^{n_i}_{ij})^{-1/2n_i} \\
\zeta_{ij} & = & \sum_{k \ne i,j} f_C (r_{ik}) \omega_{ik} g(\theta_{ijk}) \\
g(\theta_{ijk}) & = & 1 + c_i^2/d_i^2 - c_i^2/[d_i^2 + (h_i - \cos \theta_{ijk})^2]
\end{eqnarray}
where $\theta_{ijk}$ is the bond angle between bonds $ij$ and $ik$.
This is illustrated in Figure \ref{img:tersoff_angle}.
\begin{figure}[t]
\begin{center}
\includegraphics[width=8cm]{tersoff_angle.eps}
\end{center}
\caption{Angle between bonds of atoms $i,j$ and $i,k$.}
\label{img:tersoff_angle}
\end{figure}

The force acting on atom $i$ is given by the derivative of the potential energy.
For a three body potential ($V_{ij} \neq V{ji}$) the derivation is of the form
\begin{equation}
\nabla_{{\bf r}_i} E = \frac{1}{2} \big[ \sum_j ( \nabla_{{\bf r}_i} V_{ij} + \nabla_{{\bf r}_i} V_{ji} ) + \sum_k \sum_j \nabla_{{\bf r}_i} V_{jk} \big] \textrm{ .}
\end{equation}
The force is then given by
\begin{equation}
F^i = - \nabla_{{\bf r}_i} E \textrm{ .}
\end{equation}
Details of the Tersoff potential derivative are presented in appendix \ref{app:d_tersoff}.

\subsubsection{Improved analytical bond order potential}


\subsection{Statistical ensembles}
\label{subsection:statistical_ensembles}

\section{Denstiy functional theory}
\label{section:dft}

\subsection{Hohenberg-Kohn theorem}

\subsection{Born-Oppenheimer (adiabatic) approximation}

\subsection{Effective potential}

\subsection{Kohn-Sham system}

\subsection{Approximations for exchange and correlation}

\subsection{Pseudopotentials}

\section{Modeling of defects}
\label{section:basics:defects}

\section{Migration paths and diffusion barriers}
\label{section:basics:migration}

