|dc.description.abstract||The main aim of this project was the development of a particle-in-cell (PIC)
plasma simulation code. While particle-in-cell simulations are not new, they
have largely focused on using an initial Maxwellian particle loading. The
new feature the code implemented for this project is the use of kappa distributions
as an initial loading. This specialises the code for the investigation
of waves and instabilities in space plasmas having kappa-type velocity distributions.
The kappa distribution has been found to provide a better fit to
space plasma particle velocity distributions than the Maxwellian in a wide
variety of situations. In particular, it possesses a power law tail which is a
frequent feature of charged particle velocity distributions in space plasmas.
Traditionally, the treatment of such out-of-equilibrium velocity distributions
has been via a summation over several Maxwellians with different temperatures
and average number densities. Instead, the approach used in this work
is guided by recent advances in non-extensive statistical mechanics, which
provide a rigorous underpinning for the existence of kappa distributions.
As case studies, the simulation code was used to investigate the ion-acoustic
instability as well as electrostatic Bernstein waves in both Maxwellian and
kappa plasmas. Results were compared to kinetic theory and the differences
in the Maxwellian and kappa plasma behaviours are discussed. To analyse
the instabilities various diagnostics were used, including Fourier analysis of
the wave fields to determine the dispersion relation, and particle binning
to determine the particle velocity distributions. Both the Maxwellian and
kappa particle loading algorithms were found to agree well with the theoretical
velocity distributions and the dispersion relations were found to agree
with kinetic theory for both kappa and Maxwellian plasmas.
The code was developed in the C programming language using an incremental
approach that enabled careful testing after each new level of sophistication
was added. A version of the code was parallelised using Message
Passing Interface (MPI) to take advantage of the distributed supercomputing
environment provided by the CHPC.||en