Free Modeling & Simulation Tools for Cyclotron Design
Almost every question a cyclotron design raises — will the field be flat enough, will the beam survive, will the lid hold — can be answered with free software before any steel is cut. This page catalogs the tools that have actually earned a place in small-cyclotron work, organized by the design question each one answers rather than by package. Every entry lists license, platform, and an honest assessment of what a tabletop builder gets out of it.
All links, versions, and licenses on this page were verified August 2026. When a closed-form answer is enough, start with the calculators; these tools are for the questions the calculators can't answer.
Shaping the magnetic field
The magnet is where modeling pays off first: iron and copper are expensive, and the ~0.1% field uniformity the resonance demands is not something to discover by trial winding. The workflow that has emerged in amateur practice: a 2D solver for the cross-section, a 3D code only if the design leaves axisymmetry.
-
FEMM 4.2
David Meeker's Finite Element Method Magnetics is the de facto standard for amateur magnet design: 2D planar and axisymmetric magnetostatics (plus electrostatics, heat, and current flow), with built-in Lua scripting and the pyFEMM and OctaveFEMM interfaces for parameter sweeps. The axisymmetric mode maps directly onto a classic round-pole cyclotron magnet — pole, gap, coil, and yoke in one cross-section — making it the right tool for the amp-turn budget, saturation checks, and shim studies before any steel is ordered. The learning curve is an afternoon. Limits: it is strictly 2D, so azimuthal features (sector shims, radial holes, dee stems) are invisible to it, and the model is only as good as the B–H curve you feed it — for real scrapyard steel, that curve, not the solver, is usually the accuracy limit.
-
Elmer FEM
A full open-source 3D multiphysics finite-element suite whose electromagnetics solvers handle the problems FEMM cannot: return-yoke legs that break axisymmetry, sector poles, the field perturbation of an extraction channel, or coupled magnetic–thermal questions. It is the free answer once a design genuinely needs 3D. The cost is a much steeper learning curve — solver input files, and geometry usually prepared in Gmsh — and 3D magnetostatics is meshing-dominated labor. Budget days, not hours, for a first working model.
-
Gmsh
The standard open-source finite-element mesh generator, with a built-in CAD kernel, post-processing, and scripting via its own
.geolanguage or a Python API. Not a solver itself — it is the geometry and meshing front end that feeds Elmer, openEMS, and most of the open FEM world. Worth learning once, because the skill transfers to every 3D solver on this page. The.geoscripting language is its own small discipline. -
Poisson Superfish (LANL)
The Los Alamos code family — Poisson/Pandira for 2D magnetostatics, Superfish for axisymmetric RF cavity modes — designed a large share of the world's accelerator magnets and cavities, including documented student cyclotrons (both Houghton College theses and the "Cyclotron Kids" 14-inch machine in the library used it). Smirnov's 2021 review of cyclotron modeling lists it as essentially the only fully free member of the professional static-field toolchain. The catch: the official LANL/LAACG download portal has been offline since roughly 2023 with no announced restoration, and the
pySuperfishPython wrapper (PyPI, 2026) drives the executables but does not supply them. Practical advice: new builders should start with FEMM and keep Superfish literacy for reading the literature. -
Radia (ESRF)
A 3D boundary-integral magnetostatics library from the European Synchrotron Radiation Facility, originally scripted from Mathematica and Igor Pro, now most usefully driven from Python. Its niche here: the free route to azimuthally varying (AVF / sector-focused) field designs that no 2D code can represent — compute a median-plane field map with flutter, then hand it to a tracking code. It is a library, so geometry is written as code, and the boundary-integral method is happiest with permanent magnets and moderate iron; deeply saturated yokes need careful segmentation. A classic uniform-field tabletop machine will not need it; a sector-pole design has no free alternative.
-
magpylib
Analytic (mesh-free) magnetostatics for magnets and current distributions — vectorized closed-form solutions that evaluate in milliseconds. Excellent for first-cut coil field estimates, Helmholtz-style geometry checks, and validating an FEM setup against a known analytic case. The hard limit for cyclotron work: it has no iron, and a cyclotron magnet is dominated by its iron circuit. Treat it as a checking tool and a teaching tool, not a magnet design tool.
-
Agros Suite (Agros2D)
A 2D hp-adaptive multiphysics FEM code with built-in optimization, revived with a 4.0 release in 2025 after years of dormancy. It handles coupled 2D problems (e.g., magnetic plus thermal) more gracefully than FEMM, but the community is far smaller and cyclotron-specific examples are scarce. Status: alive again and worth watching; not the first pick over FEMM for a new builder.
Will the beam survive? Orbit and beam dynamics
An honest note first: most documented amateur builds never ran a professional tracking code. A median-plane Runge–Kutta integration of the Lorentz force — a few hundred lines of Python or Octave — yields orbits, phase slip, and turn counts a builder actually understands, and the live animation on How a Cyclotron Works is exactly such an integrator running in the browser. The calculators cover the closed-form pieces. The codes below are for when a design question outgrows that.
-
OPAL / OPAL-cycl (PSI)
The Object Oriented Parallel Accelerator Library from the Paul Scherrer Institut is the professional open-source beam dynamics code with a dedicated cyclotron flavor: OPAL-cycl tracks particles through measured or computed field maps with time as the independent variable, including 3D space charge and neighboring-turn effects. Scoping note for amateurs: OPAL's headline strength is space charge, which the Smirnov review puts as significant only above a few hundred microamperes — orders of magnitude beyond amateur internal-source currents — so for a tabletop machine its single-particle tracking and tune/isochronism analysis are the relevant parts. The learning curve is steep: a Linux build, MAD-style input files, and accelerator-lab conventions throughout.
-
Zgoubi
A ray-tracing code in continuous development since 1972: stepwise integration of the Lorentz force (and spin) through field maps and analytic elements. Its natural cyclotron use is tracking through a measured or Radia-computed median-plane map to check isochronism and focusing — the same job the lab-only codes in the box below do. Venerable and accurate; the price is a famously terse 1970s card-style input format. The
pyzgoubiand Zgoubidoo Python wrappers soften it. -
COSY INFINITY (MSU)
The differential-algebra code: it computes high-order transfer maps of optical systems and analyzes tunes and resonances directly from the map. Obtaining it means filling in MSU's registration form and returning a signed license on letterhead — free for non-commercial use, but a process. For cyclotrons it is elegant at the map level and weak on the injection/central-region/extraction specifics that dominate a small machine's problems. Listed mainly because the accelerator literature uses it constantly; most tabletop builders will not need it.
-
G4beamline (Muons, Inc.)
Particle tracking through beamline geometries described in a plain-text file — all of Geant4's physics without writing C++. It is not a cyclotron-orbit code; its place in this catalog is everything downstream of extraction: transport to a target, scattering in windows and foils, and radiation-aware tracking through real materials. The gentlest on-ramp to Geant4-class physics that exists.
Getting ions out of the source
-
IBSimu
An ion-optics library for plasma extraction and space-charge-dominated low-energy beam transport, using self-consistent Vlasov iteration — the physics of the plasma meniscus at your ion source aperture, the extraction gap, and any einzel lens or puller electrode. This is the one free tool that models the part of a cyclotron where space charge genuinely matters even at amateur currents: the first few kilovolts. Usage means writing short C++ programs against the library, following the published examples; the release history is slow but the tool remains in active professional use.
RF, resonance, and matching
For the classic dee-and-liner geometry, lumped-element thinking goes a long way — the dee capacitance & matching calculator covers the closed-form part. These tools take over where lumped models stop. (The RF half of Poisson Superfish solves axisymmetric cavity modes, with the same availability caveat noted above.)
-
LTspice (Analog Devices)
The most-used free circuit simulator in the world, and the workhorse for the RF chain of a small cyclotron: oscillator design, amplifier stages, matching-network sweeps, a lumped model of the dee as a tank circuit, and — critically — component voltage and current stress before anything smokes. The learning curve is gentle and the community enormous. It is a circuit simulator, not a field solver: it knows nothing about the geometry your capacitances come from.
-
Qucs-S
A circuit-simulation GUI that drives open backends (ngspice recommended, plus Xyce and QucsatorRF), with an S-parameter-native view of the world that suits RF thinking better than raw SPICE: matching networks, filters, and transmission-line elements are first-class objects. If the question is "what does the 50 Ω side of my system see," Qucs-S frames it more naturally than LTspice does.
-
scikit-rf
A Python library for microwave/RF network analysis: Smith charts, network parameters, matching, de-embedding, and Touchstone file handling. Its killer amateur application: processing measurements from a $60 NanoVNA — measure the actual dee system's impedance, load the data in scikit-rf, and design the matching network against reality instead of an estimate. Pairs naturally with the site's RF calculator for the design step.
-
openEMS
A free FDTD full-wave electromagnetic solver. Its cyclotron role is the question lumped models cannot answer: the dee, stem, and liner as a real 3D resonant structure — resonant frequency, Q, and field distribution from geometry. The learning curve is steep (geometry as script, FDTD run times, mesh convergence), and at 5–20 MHz the structures are electrically small, so lumped models get most builds there without it. Reach for it when the resonator misbehaves and the lumped model can't say why.
Vacuum
-
Molflow+ (CERN)
CERN's Monte Carlo molecular-flow simulator: import chamber geometry (STL works), assign outgassing rates and pumps, and get the actual pressure distribution in the molecular-flow regime — including the number that matters and that no single gauge reading gives: pressure at the beam path versus pressure at the gauge port. It is genuinely underappreciated in amateur practice, where pumping is usually sized by rules of thumb; a Molflow model answers "where should the pump port go" and "is that long thin manifold strangling the pump" before the chamber is welded. GUI-driven, moderate learning curve. The vacuum calculator covers the zero-dimensional version of the question.
Targets, stopping, shielding, and activation
Read Safety first; for most tabletop shielding questions a conservative hand calculation with published data is the right tool, and these codes are for checking and refining it.
-
SRIM / TRIM
The standard code for the stopping and range of ions in matter: TRIM's Monte Carlo tracks ions into any target stack, giving range, straggling, energy deposition, and sputtering. For a cyclotron builder: beam range in the target, whether a foil window survives, and implantation profiles. It has not been updated since 2013 and the Visual Basic installer shows its age, but its database remains the field's common reference. For quick stopping-power numbers without an install, use the NIST tools below.
-
NIST PSTAR / ASTAR
NIST's authoritative stopping-power and range tables as interactive web pages: PSTAR for protons (1 keV–10 GeV) and ASTAR for alphas, across elements, compounds, and tissue-equivalent materials. The fastest defensible answer to "how far does my 500 keV proton beam go in copper" — thirty seconds, citable, no software.
-
NNDC QCalc (Brookhaven)
The National Nuclear Data Center's Q-value calculator: reaction Q-values and thresholds for any projectile–target combination. This is the tool that answers the activation question that shapes a whole build: which nuclear reactions can a beam of a given energy actually drive, and therefore what does the machine make radioactive. Essential reading alongside the legal survey and safety page. The wider NNDC site holds the underlying nuclear data.
-
Geant4
The particle-transport toolkit behind most modern detector and shielding simulation. "Toolkit" is the operative word: it is a C++ library, not a program, and a first working shielding model is a real software project. For a tabletop machine it is honestly more than the problem requires — but it is the free, professional-grade answer when a dose or activation estimate must be defensible, and G4beamline (above) wraps it for the common cases.
-
FLUKA (CERN)
A general-purpose Monte Carlo transport code with particularly strong shielding and activation physics. Its licensing history needs stating carefully: FLUKA was jointly developed and distributed by CERN and INFN from 2003 to 2019, when the two ended their formal collaboration; both remain copyright holders of the pre-2019 code, post-2019 development is CERN's, and fluka.cern is now the distribution channel — the historical fluka.org site itself directs users there (status as verified August 2026). Unlike everything else in this section it is not simply downloadable: registration and an institutional affiliation are required, which puts it out of reach of many independent builders. Listed so the literature makes sense.
Will the lid hold? Mechanical and structural
-
FreeCAD — FEM workbench
FreeCAD is the open-source parametric CAD package, and its FEM workbench runs structural analysis through CalculiX: chamber lid deflection and stress in full 3D, yoke dead-weight, coil-support brackets. The natural workflow is to size the lid with the lid deflection calculator's closed-form plate theory, then confirm the real geometry — ports, O-ring grooves, non-circular outlines — in FreeCAD. The workbench is less polished than commercial FEA; always sanity-check its answer against the closed form, and keep the calculator's safety factors either way.
The general-purpose layer
Under all of the above sits the scientific scripting layer. The Python stack — NumPy, SciPy, and Matplotlib — is the single most useful "simulation tool" on this page: it is what turns field maps into tune plots, VNA data into matching networks, and textbook equations into design curves. GNU Octave (GPL; v11.3, June 2026; Linux, macOS, Windows) is the free MATLAB-compatible alternative, and the natural host for OctaveFEMM and the openEMS Octave interface. Every tool above that has a scripting interface becomes several times more useful when driven from one of these.
Worked examples in the wild
Reading how someone else actually drove these tools is worth more than any feature list. Three honest examples (links and availability verified August 2026):
- Applied Ion Systems — simulations — an open ion-thruster and ion-source project, not a cyclotron, but with unusually detailed public writeups of free-tool simulation practice: Molflow models of vacuum chambers and pumping assemblies, TRIM sputtering and implantation studies, and thermal analyses. Methodologically, this is exactly the modeling discipline a cyclotron build needs, applied one field over.
- The Houghton College tabletop cyclotron theses in the library — the 2015 focusing thesis models the magnet and chamber in Poisson Superfish with ion tracking in SIMION, a complete worked example of simulation driving a design change (magnetic chamber lids to double the energy).
- The "Cyclotron Kids" 14-inch machine (also in the library) — a Poisson Superfish-designed magnet yoke built from scrapyard steel, showing the field-solver-to-scrounged-iron workflow end to end.
Coming: sample models. This site plans downloadable worked starter models for a generic tabletop machine — a FEMM magnet cross-section, an Elmer 3D yoke, a median-plane tracking script, and a Molflow chamber — so each tool above starts from a running example rather than a blank screen.
Sources
- V. L. Smirnov, "The Cyclotron and Its Modeling," Physics of Particles and Nuclei 52, 913–996 (2021), doi:10.1134/S106377962105004X — the recommended deep-dive reference for cyclotron simulation methodology; source of the space-charge threshold note, the free-vs-professional toolchain observation, and the institutional-code descriptions above.
- Tool homepages, repositories, and license documents as linked in each entry — all verified August 2026. Version numbers and maintenance-status statements reflect what each project published at that date.
- Worked examples: Applied Ion Systems simulations page (verified live August 2026); Houghton College theses and Small Cyclotron Conference materials as annotated in this site's library.