Data Visualization with Java and VTK

VTK is a powerful library for analyzing and visualizing scientific data. This example shows how to develop a simple Java application that uses VTK to render surface geometry, isosurfaces, and cutting planes.

Simple Particle In Cell Code in Matlab

This article includes the source code for a simple particle in cell code. The code simulates flow of plasma over a charged plate and is written in Matlab.

Monte Carlo Collisions (MCC) Example

Monte Carlo Collisions (MCC) is a simple algorithm for modeling particle collisions in situations where the target species is much denser than the source. In this example we use this method to model the charge-exchange (CEX) process in the plume of a...

Charge Exchange Collisions (CEX)

Charge exchange is an important reaction occurring in the plumes of electric propulsion devices. In this reaction, an ion and neutral come into a close contact and exchange an electron without any corresponding change in the momentum of the two parti...

HTML5 for Scientific Computing

HTML5 is the new standard for writing webpages. It introduces several new powerful capabilities, such as embedded video and drag and drop. It also introduces a new tag called canvas that allows us to do real time graphing and visualization using Java...

Multiscale Modeling of Hall Thrusters

One of the topics we specialize in at Particle In Cell Consulting is modeling of electric propulsion (EP) thrusters. These devices generate thrust by accelerating ionized propellant (plasma). One of the most efficient EP devices is the Hall thruster....

2013 IEPC at GWU

The International Electric Propulsion Conference (IEPC) is the premier international conference for researches studying electric propulsion (plasma) rockets. The 2011 conference took place in Wiesbaden, Germany. The next conference will take place in...

Particle Push in Magnetic Field (Boris Method)

A follow up on the previous article, in this tutorial we show you how to integrate the particle motion in the presence of a magnetic field. Inclusion of the magnetic field makes the integration an implicit problem, and care needs to be taken to conse...

Leapfrog Particle Push (Velocity Integration)

In this article we discuss probably the most fundamental aspect of numerical simulations with the particle in cell (PIC) method: pushing particles. We introduce the commonly used leapfrog method, and provide a simple numerical algorithm in the form o...

Get results faster with Java multithreading

Code parallelization is the process of modifying a simulation program so that it can take advantage of multiple computational cores to obtain results faster. One method is to distribute the workload locally in the form of computational threads. Java...

Spacecraft Surface Charging

A spacecraft acts as an isolated probe and will become charged due to the presence of space plasma. Surface potential will change due to the thermal motion of electrons and ions. The potential will continue to change until the fluxes of the negative ...

The Finite Volume Method

The Finite Volume Method (FVM) is an algorithm for solving differential equations. It is based on the integral formulation of the problem, with each computational element corresponding to a volume over which the integration is performed. It is somewh...

The Finite Difference Method

Numerical simulations generally involve solving some differential equations on a computational domain too complicated to solve analytically. The Finite Difference (FD) is a method for solving differential equations. It is a very popular method since ...

The Electrostatic Particle In Cell (ES-PIC) Method

Particle In Cell (PIC) is the name of a method used to numerically model dynamics of ionized gases, or plasmas. Its name stems from the fact that the gas is represented by a large number of computational particles that move in a disretized domain. Th...