Plasma Physics and Scientific Computing Blog

Our blog features regular articles on numerical methods for plasma and rarefied gas simulations, as well as general updates related to plasma propulsion and spacecraft contamination control. Subscribe to the newsletter to avoid missing any articles.

XY Interpolation Program

Online interpolation program that takes arbitrarily spaced unsorted X-Y data, fits a spline to it, and generates equidistant points. (Feb 21 2015)

Stretched Mesh

Tutorial on implementing mesh stretching in Particle In Cell codes. Equations for node positions and finite difference coefficients are derived. (Feb 18 2015)

Potential Solver for Composite Dielectrics

Form of Gauss' law for composite dielectrics is derived. The governing equations are demonstrated with a 1D program that solves electric potential across several pieces with a variable permittivity and mesh spacing. (Jan 18 2015)

Some recent papers

This post is bit of an advertisement, in that I wanted to share with you some recent papers that I was involved in. Recent here is to be taken with a bit of grain of salt, since some the papers noted below are from as far back as 2010. (Dec 4 2014)

Advection Diffusion Crank Nicolson Solver

Online Advection Diffusion equation solver implemented with Javascript and HTML5, and based on Crank Nicolson Finite Volume Method. (Jun 8 2014)

Current Density Limit

Ion thrusters are space charge limited devices, with maximum current density given by the Child Langmuir law. This simulation code explores the impact of space charge saturation on the flow between two planar electrodes. (May 27 2014)

Turbofan Calculator

Interactive turbofan calculator based on the one-dimensional model in Hill and Peterson's Mechanics and Thermodynamics of Propulsion. (May 23 2014)

2D Data Plotting

Demo of plotting 2D scalar mesh scalar values using HTML5 canvas and rainbow RGB colormap. (Mar 4 2014)

Converting Scalars to RGB Colormap

We can visualize variation of mesh-based scalars by converting each scalar to a color with the help of some colormap. This article describes how to convert a scalar to the rainbow colormap, which ranges from blue to red as the value increases from the minimum to maximum. (Mar 4 2014)

Flow in a Nozzle

By considering one-dimensional flow, we can derive an expression for the variation of Mach number in a nozzle with a variable area change. Such a relationship is explored here with an interactive demo that allows you to change the shape of a converging-diverging nozzle and observe how the flow speed changes. (Feb 7 2014)

IEPC2013 Debrief

The 33rd International Electric Propulsion Conference, IEPC2013, turned out really well with record attendance despite the on-going government shutdown. (Oct 11 2013)

Scammers Everywhere

Interesting experience with a scam registration for a technical conference using a "virtual" credit card, and requesting a wire refund after their visa was supposedly denied. (Sep 1 2013)

Computing Intersections Between a Cubic Bezier Curve and a Line

Interactive SVG+Javascript code for computing intersections between a line and a cubic Bezier curve. (Aug 10 2013)

On partial pressure determination of condensable materials with a TQCM

In this article we look at how we could use surface flux collected by a quartz crystal microbalance (QCM) to compute the volumetric partial pressure of condensable materials such as magnesium vapor. (Jul 28 2013)

Initial Progress on Micro Cathodic Arc Thruster Plume Simulations

Preliminary results from a fully-kinetic simulation of a micro cathode arc thruster for nanosatellites. The thruster uses a magnetic field to turn an initially radial jet into the axial direction to crate thrust. (Jul 14 2013)

Bird’s DSMC0.FOR in Java

G.A. Bird included several example codes with his book on the DSMC method. These codes are written in Fortran 77 which makes them somewhat hard to understand due to short variable names and reliance on global variables. This post is a summary of my effort to convert DSMC0.FOR to Java. (Jun 29 2013)

Surface Erosion

Every time a particle impacts a surface there is a chance that it will knock off or “sputter” some material from the surface. Over time this can cause noticeable degradation in high flux areas such as Hall thruster channels, electrostatic acceleration grids, etc. Even structures far downstream of a thruster can erode over time if they are near the main plume. This article explains the basic algorithms involved in determining how a surface will erode when exposed to a given flux. (Jan 1 2013)

HTML5 + Javascript DSMC Simulation

Details of the Javascript implementation of the Direct Simulation Monte Carlo (DSMC) method and a how to guide to plotting animated simulation results with Javascript and HTML5 canvas element. (Dec 26 2012)

Direct Simulation Monte Carlo (DSMC) Method

DSMC, or Direct Simulation Monte Carlo, is a particle based method for simulating gas kinetics. Popularized by G.A. Bird in the 60's, this method is now commonly used as an alternative to CFD. In addition, DSMC is commonly combined with PIC codes to include collisions in plasma simulations. This article demonstrates the method with an interactive HTML5 DSMC demo. (Dec 19 2012)

Starfish Tutorial Part 5: Collisions and Chemical Reactions

The final part of the multipart Startfish tutorial. In this part we discuss adding material interactions, including chemical reactions, Monte Carlo Collisions (MCC), and Direct Simulation Monte Carlo (DSMC). (Dec 12 2012)