Andriy Smolyanyuk, Libor Šmejkal, I. I. Mazin · SciPost Physics Codebases · 2024
Altermagnets (AM) is a recently discovered class of collinear magnets that share some properties (anomalous transport, etc) with ferromagnets, some (zero net magnetization) with antiferromagnets, while also exhibiting unique properties (spin-splitting of electronic bands and resulting spin-splitter current). Since the moment compensation in AM is driven by symmetry, it must be possible to identify them by analyzing the crystal structure directly, without computing the electronic structure. Given the significant potential of AM for spintronics, it is very useful to have a tool for such an analysis. This work presents an open-access code implementing such a direct check.
Cited by 2Open access
Wouter Beugeling, Florian Bayer, Christian Berger et al. · SciPost Physics Codebases · 2025
The software project kdotpy provides a Python application for simulating electronic band structures of semiconductor devices with k·p theory on a lattice. The application implements the widely used Kane model, capable of reliable predictions of transport and optical properties for a large variety of topological and non-topological materials with a zincblende crystal structure. The application automates the tedious steps of simulating band structures. The user inputs the relevant physical parameters on the command line, for example materials and dimensions of the device, magnetic field, and temperature. The program constructs the appropriate matrix Hamiltonian on a discretized lattice of spatial coordinates and diagonalizes it. The physical observables are extracted from the eigenvalues and eigenvectors and saved as output. The program is highly customizable with a large set of configuration options and material parameters.
Cited by 1Open access
Feinan, Lyu · Zenodo (CERN European Organization for Nuclear Research) · 2026
Cited by 0Open access
Alex Towell · Zenodo (CERN European Organization for Nuclear Research) · 2026
Remove ~1,300 lines of dead code, redundant comments, unused concepts, and duplicated logic across all layers while preserving full API compatibility and test coverage (486 tests pass). Highlights Dead code removal Removed 12 unused C++20 concepts across algorithms/concepts and methods/concepts Removed unused type traits, forward declarations, and speculative abstractions Removed unused includes (<functional>, <span>, <ranges>, <vector>, etc.) Duplication elimination Extracted detail::tag_name<Tag>() — maps function tags to string names (replaced 34-line if-constexpr chain) Extracted detail::make_integrand_fn<Dim>() — consolidates triplicated integrand lambda construction Extracted detail::mc_box_sampler<T, Dims> — shared Monte Carlo RNG and sampling logic Extracted detail::make_extended_args() — shared argument tuple construction for sum/product Extracted combine_results() — deduplicated product integral error propagation Bug fixes Fixed incorrect #include in conditional.hpp and sum_product.hpp Replaced unimplementable gauss_legendre primary template with static_assert listing supported N values Fixed MSVC AVX2 flag to respect ENABLE_AVX2 option (was unconditional) Removed redundant global CMAKE_CXX_STANDARD (already set via target_compile_features) Test improvements Extracted limes_add_test() CMake function (108 → 54 LOC) Made test RNG deterministic with fixed seed Modernized: std::numbers::pi instead of M_PI Removed dead test assertions and redundant concept tests Documentation Rewrote ARCHITECTURE.md to match actual v3.x codebase (was outdated from v1.x) Fixed README.md CMake version requirement (3.16 → 3.20) Updated CLAUDE.md with current concept inventory and detail namespace Stats 38 files changed, 698 insertions, 1,965 deletions (net −1,267 lines) 486 tests pass — zero functionality changes
Cited by 0Open access
lefixhn · Zenodo (CERN European Organization for Nuclear Research) · 2025
This is the entire codebase of the repo used in the bachelorthesis.
Cited by 0Open access
Matthew Fishman, Steven R. White, E. Miles Stoudenmire · SciPost Physics Codebases · 2022
ITensor is a system for programming tensor network calculations with an interface modeled on tensor diagrams, allowing users to focus on the connectivity of a tensor network without manually bookkeeping tensor indices. The ITensor interface rules out common programming errors and enables rapid prototyping of algorithms. After discussing the philosophy behind the ITensor approach, we show examples of each part of the interface including Index objects, the ITensor product operator, tensor factorizations, tensor storage types, algorithms for matrix product state (MPS) and matrix product operator (MPO) tensor networks, quantum number conserving block sparse tensors, and the NDTensors library. We also review publications that have used ITensor for quantum many-body physics and for other areas where tensor networks are increasingly applied. To conclude we discuss promising features and optimizations to be added in the future.
Cited by 213Open access
Kim William Torre, Raoul D. Schram, Joost de Graaf · SciPost Physics Codebases · 2025
Stokesian Dynamics (SD) is a powerful computational framework for simulating the motion of particles in a viscous Newtonian fluid under Stokes-flow conditions. Traditional SD implementations can be computationally expensive as they rely on the inversion of large mobility matrices to determine hydrodynamic interactions. Recently, however, the simulation of thermalized systems with large numbers of particles has become feasible [Fiore and Swan, J. Fluid Mech. 878, 544 (2019)]. Their “fast Stokesian dynamics” (FSD) method leverages a saddle-point formulation to ensure overall scaling of the algorithm that is linear in the number of particles \mathcal{O}(N) <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline"><mml:mrow><mml:mstyle mathvariant="script"><mml:mi>𝒪</mml:mi></mml:mstyle><mml:mo stretchy="false" form="prefix">(</mml:mo><mml:mi>N</mml:mi><mml:mo stretchy="false" form="postfix">)</mml:mo></mml:mrow></mml:math> ; performance relies on dedicated graphics-processing-unit computing. Here, we present a different route toward implementing FSD, which instead leverages the Just-in-Time (JIT) compilation capabilities of Google JAX. We refer to this implementation as JFSD and perform benchmarks on it to verify that it has the right scaling and is sufficiently fast by the standards of modern computational physics. In addition, we provide a series of physical test cases that help ensure accuracy and robustness, as the code undergoes further development. Thus, JFSD is ready to facilitate the study of hydrodynamic effects in particle suspensions across the domains of soft, active, and granular matter.
Cited by 1Open access
M. S. Neubauer, A. Roy, Zijun Wang · SciPost Physics Codebases · 2023
Research in the data-intensive discipline of high energy physics (HEP) often relies on domain-specific digital contents. Reproducibility of research relies on proper preservation of these digital objects. This paper reflects on the interpretation of principles of Findability, Accessibility, Interoperability, and Reusability (FAIR) in such context and demonstrates its implementation by describing the development of an end-to-end support infrastructure for preserving and accessing Universal FeynRules Output (UFO) models guided by the FAIR principles. UFO models are custom-made python libraries used by the HEP community for Monte Carlo simulation of collider physics events. Our framework provides simple but robust tools to preserve and access the UFO models and corresponding metadata in accordance with the FAIR principles.
Cited by 1Open access
Marek M. Rams, Gabriela Wójtowicz, Aritra Sinha et al. · SciPost Physics Codebases · 2025
We present an open-source tensor network Python library for quantum many-body simulations. At its core is an Abelian-symmetric tensor, implemented as a sparse block structure managed by a logical layer on top of a dense multidimensional array backend. This serves as the basis for higher-level tensor network algorithms operating on matrix product states and projected entangled pair states. An appropriate backend, such as PyTorch, gives direct access to automatic differentiation (AD) for cost-function gradient calculations and execution on GPU and other supported accelerators. We show the library performance in simulations with infinite projected entangled-pair states, such as finding the ground states with AD and simulating thermal states of the Hubbard model via imaginary time evolution. For these challenging examples, we identify and quantify sources of the numerical advantage exploited by the symmetric-tensor implementation.
Cited by 5Open access
Lukas Weber · SciPost Physics Codebases · 2025
Carlo.jl is a Monte Carlo simulation framework written in Julia. It provides MPI-parallel scheduling (including parallel tempering), organized storage of input, checkpoint, and output files, as well as statistical postprocessing. With a minimalist design, it aims to aid the development of high-quality Monte Carlo codes, especially for demanding applications in condensed matter and statistical physics. This hands-on user guide shows how to implement a simple code with Carlo.jl, how to run an existing stochastic series expansion code based on Carlo.jl, and provides benchmarks to show its efficacy.
Cited by 1Open access
L. Thirion, P. Hansmann, Pavlo Bilous · SciPost Physics Codebases · 2025
Numerical modeling of fermionic many-body quantum systems presents similar challenges across various research domains, necessitating universal tools, including state-of-the-art machine learning techniques. Here, we introduce SOLAX, a Python library designed to compute and analyze fermionic quantum systems using the formalism of second quantization. SOLAX provides a modular framework for constructing and manipulating basis sets, quantum states, and operators, facilitating the simulation of electronic structures and determining many-body quantum states in finite-size Hilbert spaces. The library integrates machine learning capabilities to mitigate the exponential growth of Hilbert space dimensions in large quantum clusters. The core low-level functionalities are implemented using the recently developed Python library JAX. Demonstrated through its application to the Single Impurity Anderson Model, SOLAX offers a flexible and powerful tool for researchers addressing the challenges of many-body quantum systems across a broad spectrum of fields, including atomic physics, quantum chemistry, and condensed matter physics.
Cited by 1Open access
Stefan Seckmeyer, Christian Struckmann, Gabriel Müller et al. · SciPost Physics Codebases · 2026
Partial differential equations describing the dynamics of physical systems rarely have closed-form solutions. Fourier spectral methods, which use Fast Fourier Transforms (FFTs) to approximate solutions, are a common approach to solving these equations. However, mapping Fourier integrals to discrete FFTs is not straightforward, as the selection of the grid as well as the coordinate-dependent phase and scaling factors require special care. Moreover, most software packages that deal with this step integrate it tightly into their full-stack implementations. Such an integrated design sacrifices generality, making it difficult to adapt to new coordinate systems, boundary conditions, or problem-specific requirements. To address these challenges, we present FFTArray, a Python library that automates the general discretization of Fourier transforms. Its purpose is to reduce the barriers to developing high-performance, maintainable code for pseudo-spectral Fourier methods. Its interface enables the direct translation of textbook equations and complex research problems into code, and its modular design scales naturally to multiple dimensions. This makes the definition of valid coordinate grids straightforward, while coordinate grid specific corrections are applied with minimal impact on computational performance. Built on the Python array API standard, FFTArray integrates seamlessly with array backends like NumPy, JAX and PyTorch and supports Graphics Processing Unit acceleration. The code is openly available at https://github.com/QSTheory/fftarray under Apache-2.0 license.
Cited by 1Open access
Peter Wahl, Luke C. Rhodes, Carolina A. Marques · SciPost Physics Codebases · 2025
Quasiparticle interference imaging (QPI) provides a route to characterize electronic structure from real space images acquired using scanning tunneling microscopy. It emerges due to scattering of electrons at defects in the material. The QPI patterns encode details of the k <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline"> <mml:mi>k</mml:mi> </mml:math> -space electronic structure and its spin and orbital texture. Recovering this information from a measurement of QPI is non-trivial, requiring modelling not only of the dominant scattering vectors, but also the overlap of the wave functions with the tip of the microscope. While, in principle, it is possible to model QPI from density functional theory (DFT) calculations, for many quantum materials it is more desirable to model the QPI from a tight-binding model, where inaccuracies of the DFT calculation can be corrected. Here, we introduce an efficient code to simulate quasiparticle interference from tight-binding models using the continuum Green’s function method.
Cited by 1Open access
Jeppe R. Andersen, B. Ducloué, Conor Elrick et al. · SciPost Physics Codebases · 2023
We present version 2.2 of the High Energy Jets (HEJ) Monte Carlo event generator for hadronic scattering processes at high energies. The new version adds support for two further processes of central phenomenological interest, namely the production of a W boson pair with equal charge together with two or more jets and the production of a Higgs boson with at least one jet. Furthermore, a new prediction for charged lepton pair production with high jet multiplicities is provided in the high-energy limit. The accuracy of HEJ 2.2 can be increased further through an enhanced interface to standard predictions based on conventional perturbation theory. We describe all improvements and provide extensive usage examples. HEJ 2.2 can be obtained from https://hej.hepforge.org.
Cited by 3Open access
Manuel Schrauth, Yanick Thurn, Florian Goth et al. · SciPost Physics Codebases · 2024
HYPERTILING is a high-performance Python library for the generation and visualization of regular hyperbolic lattices embedded in the Poincaré disk model. Using highly optimized, efficient algorithms, hyperbolic tilings with millions of vertices can be created in a matter of minutes on a single workstation computer. Facilities including computation of adjacent vertices, dynamic lattice manipulation, refinements, as well as powerful plotting and animation capabilities are provided to support advanced uses of hyperbolic graphs. In this manuscript, we present a comprehensive exploration of the package, encompassing its mathematical foundations, usage examples, applications, and a detailed description of its implementation.
Cited by 2Open access
Melissa van Beekveld, Mrinal Dasgupta, Basem Kamal El-Menoufi et al. · SciPost Physics Codebases · 2024
In this article, we document version 0.1 of the PANSCALES code for parton shower simulations. With the help of a few examples, we discuss basic usage of the code, including tests of logarithmic accuracy of parton showers. We expose some of the numerical techniques underlying the logarithmic tests and include a description of how users can implement their own showers within the framework. Some of the simpler logarithmic tests can be performed in a few minutes on a modern laptop. As an early step towards phenomenology, we also outline some aspects of a preliminary interface to PYTHIA 8.3, for access to its hard matrix elements and its hadronisation modules.
Cited by 2Open access
Daniel Otto · Zenodo (CERN European Organization for Nuclear Research) · 2024
No description provided.
Cited by 0Open access
Bonazzola, Rodrigo · Zenodo (CERN European Organization for Nuclear Research) · 2024
Codebase for the Unsupervised Phenotype Ensemble (UPE) framework, applied on left-ventricular 3D mesh data, published on the Nature Machine Intelligence article "Unsupervised ensemble-based phenotyping enhances discoverability of genes related to left-ventricular morphology" (2024)
Cited by 1Open access
Hubbard, Philip · Figshare · 2020
The neuVid Python scripts generate neuroscience videos from high-level descriptions using Blender. This software is made available under the license and usage agreement found within the codebase.<br>
Cited by 5Open access
Donovan Buterakos, Sandesh S. Kalantre, Joshua Ziegler et al. · SciPost Physics Codebases · 2026
Recent advances in machine learning (ML) have accelerated progress in calibrating and operating quantum dot (QD) devices. However, most ML approaches rely on access to large, representative datasets designed to capture the full spectrum of data quality encountered in practice, with both high- and low-quality data for training, benchmarking, and validation, with labels capturing key features of the device state. Collating such datasets experimentally is challenging due to limited data availability, slow measurement bandwidths, and the labor-intensive nature of labeling. QDFlow is an open-source physics simulator for multi-QD arrays that generates realistic synthetic data with ground-truth labels. QDFlow combines a self-consistent Thomas-Fermi solver, a dynamic capacitance model, and flexible noise modules to simulate charge stability diagrams and ray-based data that closely resemble experimental results. With an extensive set of parameters that can be varied and customizable noise models, QDFlow supports the creation of large, diverse datasets for ML development, benchmarking, and quantum device research.
Cited by 1Open access