Preserve the physics
Compatible discretizations retain structural identities and important invariants over long simulations.
Struphy is an open-source framework for solving fluid, kinetic, and hybrid plasma models with geometric finite elements and Lagrangian particles.

Loading interactive domain…
Generated from the current Struphy catalogue at build time.ReleasesIssue trackerBuild status
Why Struphy
Struphy connects geometric numerical methods with a practical Python workflow, so researchers can move between fluid, kinetic, and hybrid descriptions without rebuilding their simulation stack.
Compatible discretizations retain structural identities and important invariants over long simulations.
Study fluid fields, kinetic particles, or coupled hybrid systems through a common model interface.
Run models on Cartesian, cylindrical, toroidal, and externally generated domains.
Use a researcher-friendly Python workflow backed by compiled performance-critical kernels.
Keep model, domain, equilibrium, perturbation, and parameters together in inspectable configurations.
Many plasma physics PDEs carry exact invariants: energy, mass, and the divergence-free condition on magnetic fields among them. Standard discretizations can violate these invariants over long simulations, letting numerical error accumulate. Struphy instead builds its finite-element and particle discretizations from a discrete de Rham complex, so these structural properties hold exactly at the discrete level, not only in the limit of vanishing grid size.
A common numerical framework supports several descriptions of plasma dynamics while preserving their underlying geometric structure.
Maxwell, MHD, and multi-fluid systems using compatible finite elements.
Vlasov and drift-kinetic models represented by Lagrangian particles.
Coupled field-particle descriptions, including MHD-kinetic models.
Install Struphy and compile its performance-critical kernels.
Continue with the installation guide, the quick start guide, andtutorials.
$ pip install struphy
$ struphy compileA selection of papers describing the methods and algorithms behind Struphy. See thefull publication list for more.