Particle In Cell Method in Cylindrical Coordinates

Details of implementing plasma simulations with the Particle In Cell Method in cylindrical coordinates. We develop a simulation of a simplistic ion gun.

Two Stream Instability Javascript Simulation

Particle In Cell (PIC) plasma simulation of two-stream instability implemented in Javascript and running in your browser. Two cold beams interact with each other until streaming is destroyed and particles become trapped in phase space vortices.

Modeling Diffuse Reflection (or How to Sample Cosine Distribution)

Molecules impacting surfaces reflect either diffusely or specularly, Since diffuse reflection is more common, it is important to model it correctly. In this article we discuss how to model diffuse reflection by sampling from Lambert's cosine law.

Sputter Calculator (alpha version)

Online calculator and plotting program for normal and angular sputter yields using the models of Yamamura and Matsunami.

XY Interpolation Program

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

Stretched Mesh

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

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.

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.

Advection Diffusion Crank Nicolson Solver

Online Advection Diffusion equation solver implemented with Javascript and HTML5, and based on Crank Nicolson Finite Volume Method.

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.

Turbofan Calculator

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

2D Data Plotting

Demo of plotting 2D scalar mesh scalar values using HTML5 canvas and rainbow RGB colormap.

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 t...

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 convergi...

IEPC2013 Debrief

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

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.

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.

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.

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.

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 e...