← Back

Ion-Thruster Simulation

2022

During my undergraduate studies, I was a research assistant at Boğaziçi University Space Technologies Laboratory under the supervision of Murat Çelik. I worked on Ionizer, a particle-based ion-thruster simulator, and developed the electrostatic solver used to calculate the field that accelerates its particles.

An ion thruster ionizes a gas, such as xenon or krypton, by removing electrons from some of its atoms and leaving positive ions. At the outlet of the thruster are two perforated metal grids. The thruster’s power supply holds these grids at different voltages, creating an electric field that pulls the positive ions through their holes and accelerates them out of the thruster at high speed. The ions carry momentum backward, so conservation of momentum pushes the spacecraft forward.

Gas flow is often modeled as a continuum using the Navier–Stokes equations. Whether the continuum assumption is valid is determined by the Knudsen number, Kn=λ/L\mathrm{Kn} = \lambda/L, where λ\lambda is the mean free path between particle collisions and LL is a characteristic length of the system. In the ion thruster, the Knudsen number was too large for the continuum assumption to apply, so the Navier–Stokes equations could not accurately model the flow. We had to simulate particles instead.

We used particle-in-cell and direct simulation Monte Carlo (PIC–DSMC) methods. PIC moved the charged particles according to the electric field, while DSMC modeled their collisions.

At each step of the simulation, the electric potential ϕ\phi is obtained from Poisson’s equation and then converted into the electric field that accelerates the charged particles:

2ϕ=ρε0,E=ϕ.\nabla^2 \phi = -\frac{\rho}{\varepsilon_0}, \qquad \vec{E} = -\nabla \phi.

Here, ρ\rho is the electric charge density, ε0\varepsilon_0 is the permittivity of free space, and E\vec{E} is the electric field. The Laplacian 2ϕ\nabla^2\phi measures how the potential curves through space, while the gradient ϕ\nabla\phi points in the direction in which it increases most rapidly. The minus sign therefore makes the electric field point toward decreasing potential.

I wrote the C++ solver for this step. Given the dimensions of the thruster, the voltages on its grids, and the resolution of the simulation, it approximated the three-dimensional equation with finite differences in cylindrical coordinates and solved the resulting sparse linear system using Eigen. Other researchers in our group later integrated my solver into the PIC–DSMC code.

Check out the source code on GitHub: github.com/sinaatalay/Ionizer

I’m always interested in discussing business and technology. I also have plenty of ambitious project ideas in mind if you’re looking for one.

Feel free to reach out at dev@atalay.biz.

Follow me at: LinkedIn, X, GitHub, YouTube, Reddit