A friendly front end for serious plasma physics.
For research and education · Open to everyone · No coding required
JC-PIC is a 1D3V Particle-In-Cell / Monte Carlo Collision code for low-pressure, weakly ionized plasmas — as encountered in plasma processing and gaseous electronics. A built-in Swarm mode also computes electron transport coefficients, by Monte-Carlo simulation.
Set up a case, click Run, and watch the plasma evolve through a dozen live viewers — no programming required. A validated Fortran engine behind a graphical interface, distributed free of charge for teaching and research.
Free · Windows desktop · No account, no telemetry, no internet required · Bundled with a library of documented cases
Everything on this site — the bundled cases, the interface, the way the code was written — follows from these three objectives.
Revisit the physics of low-temperature plasmas through a curated library of PIC-MCC simulations. Reproduce the key conclusions of recent publications in one dimension — each presented as a documented, ready-to-run, and fully interactive case.
Provide a robust, user-friendly PIC-MCC code usable by experimentalists, students, and teachers, with no programming required. Users can explore complex dynamics instantly and contribute their own setups to a growing, collaborative resource.
Demonstrate how a high-performance research code and its complete graphical interface can be developed with the assistance of Anthropic's Claude AI. This synergy between expert scientific direction and AI made a tool of this scope a reality. See the account below.
The background: PIC-MCC solvers have been used extensively over the last two decades to study low-temperature plasmas. Thanks to these kinetic models, many complex phenomena central to practical plasma applications — electron power absorption in RF discharges, instabilities in the magnetized plasmas of electric thrusters and magnetrons, the role of secondary electron emission, striations in plasma columns — are now far better understood. JC-PIC distils this body of work into a tool anyone can run.
One spatial dimension, three velocity components, electrostatic fields with an external magnetic field, and Monte Carlo collisions with the neutral gas — covering a broad range of low-temperature discharge configurations. Each configuration ships as a documented, ready-to-run bundled case: pick one close to your problem, reproduce it, then vary the parameters from there.
The fundamentals as ready-to-run experiments: sheaths and the plasma potential, Langmuir and ion-acoustic waves — with the built-in (k, ω) Fourier analysis to see their dispersion — plasma expansion into vacuum, ambipolar collisional diffusion, wave breaking and Landau damping.
Single- and multi-frequency capacitively coupled plasmas driven by prescribed voltage waveforms, including the dual-frequency electrical asymmetry effect and electron power-absorption analysis. Influence of pressure, frequency and magnetic field.
Direct-current glow discharges with secondary emission, with or without a superimposed RF component, plus pulsed plasma-immersion ion implantation with fast sheath expansion.
The axial structure of a long discharge in periodic mode: ionization waves (striations) in DC and RF columns, radial non-equilibrium, and the Hall effect.
A weak external magnetic field, and Hall-thruster-style azimuthal E×B configurations exhibiting the electron-cyclotron drift instability. Hall effect in a magnetized plasma column.
Space-charge-limited current (Child–Langmuir), virtual-cathode oscillations, thermionic emission and self-sustained thermionic discharge regimes.
The classic two-stream, Buneman and beam–plasma instabilities in their cleanest periodic form.
A second, autonomous Monte-Carlo engine computes the electron transport and rate coefficients — drift velocity, mobility, diffusion, ionization/excitation rates, mean energy, EEPF and its anisotropy — as functions of the reduced field E/N, with statistical error bars.
Secondary electron emission, cathode emission (cold, beam, thermionic), full electron & ion Monte Carlo collisions (elastic, excitation, ionization, charge exchange) — and, optionally, electron–electron Coulomb collisions — are all built in, using cross-section tables loaded at startup.
Most cases ship with a precomputed snapshot, so they can be visualized the moment they load — and the library is collaborative: a case you build can later be folded into the shared library.
Everything is organized so you interact with the plasma the way you would with a piece of laboratory hardware.
Dozens of physical and numerical parameters — gas, pressure, voltages, frequency, fields, diagnostics — organized into intuitive categories instead of a cryptic input file.
Walk a tree of preconfigured cases, read its Markdown description, and load it into your own working directory in one click. The recommended entry point.
Density profiles, position–time diagrams with full (k, ω) Fourier analysis, phase space, EEPF (1D & 2D), ion/electron energy distributions, current histories and spectra, per-process collision frequencies, the Schulze power decomposition, and more.
Results are written to disk continuously and survive restarts. Pause, stop, and resume a run at any later time — even on another machine pointing to the same folder.
The simulation core is modern Fortran parallelized with OpenMP, automatically using every core. A typical capacitive-RF case runs in a few hours on an ordinary desktop.
No cloud, no telemetry, no account. Plain-text namelists, Markdown descriptions, JSON metadata and documented binary snapshots — your data stays fully accessible.
JC-PIC's results are checked in three independent ways: against an independent code, against a community benchmark, and against the published literature.
Results are cross-checked against J-PIC, the author's earlier particle-in-cell code, developed independently and used in several published studies.
JC-PIC reproduces the four-case capacitively-coupled RF benchmark of Turner et al. (Phys. Plasmas, 2013) — the standard verification test for low-temperature PIC codes.
The bundled cases reproduce published PIC-MCC results — emissive cathodes, DC and RF discharges, striations, magnetized E×B plasmas, beam instabilities — with the original papers cited in each case description: browse the case library.
The Swarm mode has its own reference chain: its transport and rate coefficients are checked against BOLSIG+ on the same cross sections and against the Monte-Carlo swarm literature (Hagelaar, Phys. Plasmas 32, 043501, 2025).
Phase-space and profile animations exported from JC-PIC's diagnostic viewers — each from a bundled case that can be loaded and reproduced.

Counter-streaming beams wind phase space into cat's-eye vortices.

A beam above the space-charge limit traps and reflects electrons.

A dilute fast beam destabilizes against a dense background.
JC-PIC has the unusual characteristic of having been written almost entirely by an artificial intelligence — Anthropic's Claude — working under the scientific direction of the author.
The Fortran/OpenMP engine, the Python interface, the viewers, the case browser, the build pipeline and the user manual were produced from natural-language specifications. The human contribution focused on the physics requirements, the validation against benchmarks and the published literature, and the iterative refinement of the user experience.
The physics algorithms — the Boris pusher, the null-collision MCC scheme, the Poisson solvers, the secondary-emission model — were implemented correctly, close to their final form, on early attempts; development effort that would normally span many months was compressed into weeks. An account of this development method is given in the user manual.
The same approach was used by the author to build LibrAIry ↗, a desktop reference manager and private AI assistant for organizing and analyzing scientific PDFs.
Physics requirements and equations, choice of algorithms, validation against benchmarks and published results, design and curation of the case library, testing.
Essentially all of the Fortran engine and Python interface, the diagnostics and viewers, the documentation, the build and packaging pipeline.
A complete walkthrough — from loading a bundled case to running it and reading the diagnostics in the viewers.
A guided video walkthrough of the interface and viewers is being prepared and will be embedded here.
JC-PIC will be available for download in September 2026. A single installer bundles the simulation engine, the graphical interface, the cross-section data files and the full test-case library. No administrator privileges needed.
New to JC-PIC? See the quick-start steps just below.
Four steps. The bundled case library is the recommended entry point — no blank configuration to fill in.
Run the installer, open JC-PIC, and choose a working folder where your runs will live. Each simulation is just a self-contained folder on your disk.
Open Input → Load Test Cases…, browse the library, and pick a case close to what you have in mind. JC-PIC copies it into your working folder.
Click Run to start from t = 0, or open the bundled snapshot for an instant quasi-steady view. Results are written to disk as it goes.
Open the live viewers — density profiles, phase space, EEPF, wall fluxes — then vary the pressure, voltage, frequency or field and see how the discharge responds.
A paused or stopped run can be resumed at any later time — even on another machine pointing to the same folder. The full procedure is covered in the user manual.