FREEDOM251

Freedom251 › Physics Simulation Software

RustBCA

Free plan LinuxMacWindows

Visit RustBCA Alternatives Pricing

RustBCA's own site

What RustBCA is

RustBCA is free, open-source desktop software for simulating energetic ion interactions with materials using the binary collision approximation. It models reflection, implantation, transmission, sputtering, and displacement damage. Targets may be homogeneous, layered, spherical, or triangular-mesh geometries, including 3D meshes, amorphous solids or liquids, and gases. Electronic stopping choices include Oen–Robinson, Lindhard–Scharff, equipartition, and Biersack–Varelas interpolation up to about 1 GeV per nucleon. Potentials include Kr-C, ZBL, Lenz-Jensen, Moliere, Lennard-Jones 12-6, and Morse, with several usable together. CSV output can contain emitted-particle energies and directions, implanted-ion positions, displacements, and complete trajectories. Libraries support C/C++, Python, and Fortran simulations. A specified seed makes results exactly reproducible across machines and thread counts. RustBCA runs on Linux, macOS, and Windows, requires the Rust toolchain, and is licensed GPL-3.0.

Who it suits

RustBCA is intended for researchers and developers modeling ion–material interactions or embedding those models in C/C++, Python, or Fortran software. It suits users on Linux, macOS, or Windows who can install Rust.

What it does well

  • Supports Linux, macOS, and Windows
  • Multiple target geometries
  • Several stopping and interaction potentials
  • C/C++, Python, and Fortran libraries
  • Reproducible seeded results

What to know first

  • Requires the Rust toolchain
  • Materials modeled as amorphous and static
  • Cannot capture ion channeling or temperature effects
  • Does not directly simulate chemical sputtering

Plans

PlanBilled and limitsPrice
Free and open sourceNo paid tiers or usage limits statedFree

As github.com lists them, read 11 Oct 2026. The maker's own page has the final word.

Verdict

RustBCA offers broad geometry, physics, and output options for binary-collision simulations at no listed cost. Its amorphous, static material model excludes channeling, temperature effects, and some many-body or chemical behavior.

Facts from RustBCA's own pages

Assessment tools
No · github.com, 24 Sept 2026
Authoring tools
No · github.com, 24 Sept 2026
Delivery mode
desktop · github.com, 24 Sept 2026
Free plan
Yes · github.com, 24 Sept 2026
Geometry
Supported targets include homogeneous, layered, triangular-mesh, spherical, and 3D triangular-mesh geometries, plus amorphous solid or liquid and gaseous targets. · github.com, 11 Oct 2026
Installation
Installation requires the Rust toolchain; Python 3.6+ and listed Python libraries are optional for helper scripts and input-file manipulation. · github.com, 11 Oct 2026
Interaction potentials
Available potentials include Kr-C, ZBL, Lenz-Jensen, Moliere, Lennard-Jones 12-6, and Morse, and multiple potentials can be used in one simulation. · github.com, 11 Oct 2026
Language bindings
RustBCA provides libraries for including its ion–material interactions in simulations written in C/C++, Python, and Fortran. · github.com, 11 Oct 2026
Lesson library
No · github.com, 24 Sept 2026
License
The repository identifies its license as GPL-3.0. · github.com, 11 Oct 2026
Limitations
RustBCA models materials as amorphous and static, so it cannot capture ion channeling or temperature effects, and BCA does not directly simulate multi-body effects or chemical sputtering. · github.com, 11 Oct 2026
Model outputs
The code models reflection, implantation, transmission, sputtering, and displacement damage from energetic ion–target interactions. · github.com, 11 Oct 2026
Physics features
Electronic stopping options include Oen–Robinson, Lindhard–Scharff, equipartition, and Biersack–Varelas interpolation up to about 1 GeV per nucleon. · github.com, 11 Oct 2026
Platforms
The maker says the code builds with Cargo on Windows, macOS, and Linux. · github.com, 11 Oct 2026
Purpose
RustBCA is a general-purpose code for simulating ion–material interactions, including sputtering, reflection, and implantation, using the binary collision approximation. · github.com, 11 Oct 2026
Reproducibility
With a user-specified seed, RustBCA states that results are exactly reproducible across machines and thread counts. · github.com, 11 Oct 2026
Results
CSV outputs can include emitted-particle energies and directions, implanted-ion positions, displacements, and full ion and target-atom trajectories. · github.com, 11 Oct 2026
Testing and validation
The wiki reports unit and integration tests and benchmarking against F-TRIDYN, empirical formulas, molecular-dynamics simulations, and experimental data where available. · github.com, 11 Oct 2026

Where RustBCA stands on Freedom251

Look at these too