Few-body physics explores quantum systems of a small number of particles, bridging the gap between single-particle and many-body regimes. To provide an accessible tool for such studies, we present FewBodyToolkit.jl, a Julia package for quantum few-body simulations. The package supports general two- and three-body systems in various spatial dimensions with arbitrary pair-interactions, and allows to calculate bound and resonant states. The implementation is based on the well-established Gaussian expansion method and we illustrate the package’s capabilities through benchmarks and research examples. The package comes with documentation and examples, making it useful for research, teaching, benchmarking, and method development.
Few-body physics explores quantum systems of a small number of particles, bridging the gap between single-particle and many-body regimes. To provide an accessible tool for such studies, we present FewBodyToolkit.jl, a Julia package for quantum few-body simulations. The package supports general two- and three-body systems in various spatial dimensions with arbitrary pair-interactions, and allows to calculate bound and resonant states. The implementation is based on the well-established Gaussian expansion method and we illustrate the package’s capabilities through benchmarks and research examples. The package comes with documentation and examples, making it useful for research, teaching, benchmarking, and method development.
Few-body physics explores quantum systems of a small number of particles, bridging the gap between single-particle and many-body regimes. To provide an accessible tool for such studies, we present FewBodyToolkit.jl, a Julia package for quantum few-body simulations. The package supports general two- and three-body systems in various spatial dimensions with arbitrary pair-interactions, and allows to calculate bound and resonant states. The implementation is based on the well-established Gaussian expansion method and we illustrate the package’s capabilities through benchmarks and research examples. The package comes with documentation and examples, making it useful for research, teaching, benchmarking, and method development.
We present PEPSKit.jl, a Julia package for simulating two-dimensional quantum many-body systems with infinite projected entangled-pair states (iPEPS). PEPSKit.jl builds on the TensorKit.jl package for tensor computations and provides high-level algorithms for iPEPS simulations that support both Abelian and non-Abelian symmetries, as well as fermionic systems. This work gives an overview of the main package features, which include support for ground-state, time-evolution, and finite-temperature simulations in systems with different physical symmetries and lattice geometries. These capabilities are illustrated through various examples and technical benchmarks.
Approximating molecular wave functions involves heavy numerical effort; therefore, codes for such tasks are written completely or partially in efficient languages such as C, C++, and Fortran. While these tools are dominant throughout quantum chemistry packages, the efficient development of new methods is often hindered by the complexity associated with code development. In order to ameliorate this scenario, some software packages take a dual approach where a simpler, higher-level language, such as Python, substitutes the traditional ones wherever performance is not critical. Julia is a novel, dynamically typed, programming language that aims to solve this two-language problem. It gained attention because of its modern and intuitive design, while still being highly optimized to compete with “low-level” languages. Recently, some chemistry-related projects have emerged exploring the capabilities of Julia. Herein, we introduce the quantum chemistry package Fermi.jl, which contains the first implementations of post-Hartree–Fock methods written in Julia. Its design makes use of many Julia core features, including multiple dispatch, metaprogramming, and interactive usage. Fermi.jl is a modular package, where new methods and implementations can be easily added to the existing code. Furthermore, it is designed to maximize code reusability by relying on general functions with specialized methods for particular cases. The feasibility of the project is explored through evaluating the performance of popular ab initio methods. It is our hope that this project motivates the usage of Julia within the community and brings new contributions into Fermi.jl.
Modern physics includes theoretical, experimental, and numerical approaches that often overlap.One such field exemplifying this integration is Cold Atoms, which has witnessed a surge in intriguing discoveries over the past few decades.Not surprisingly, its numerical aspects, such as convergences tolerances, or fastest algorithms, have been largely absent from the literature, with the prevailing notion that equations can be effortlessly solved using conventional techniques.This perception, however, cannot align with reality.Computer simulations in this field have boundaries that are not documented and can affect physical outcomes, but pinpointing them is challenging.We introduce CoupledDipoles.jl,a specialized Julia Package designed for simulating interacting cold atoms through various mathematical models.Our package offers a flexible infrastructure that allows for different models (e.g.2D models, where the effective physics is constraint into a plane) to be incorporated and, in addition, brings guarantees that its core methods have optimal performance.By addressing this unconventional gap in the literature, we aim to shed light on the numerical methods in the field, often overlooked, providing a valuable resource for both newcomers seeking an entry point and experts aiming to enhance their productivity in this domain.
We present the Julia package PauliStrings.jl for quantum many-body simulations, which performs fast operations on the Pauli group by encoding Pauli strings in binary. All of the Pauli string algebra is encoded into low-level logic operations on integers, and is made efficient by various truncation methods which allow for systematic extrapolation of the results. We illustrate the effectiveness of our package by (i) performing Heisenberg time evolution through direct numerical integration and (ii) by constructing a Liouvillian Krylov space. We benchmark the results against tensor network methods, and we find our package performs favorably. In addition, we show that this representation allows for easy encoding of any geometry. We present results for chaotic and integrable spin systems in 1D as well as some examples in 2D. Currently, the main limitations are the inefficiency of representing non-trivial pure states (or other low-rank operators), as well as the need to introduce dissipation to probe long-time dynamics.
Modern physics includes theoretical, experimental, and numerical approaches that often overlap. One such field exemplifying this integration is Cold Atoms, which has witnessed a surge in intriguing discoveries over the past few decades. Not surprisingly, its numerical aspects, such as convergences tolerances, or fastest algorithms, have been largely absent from the literature, with the prevailing notion that equations can be effortlessly solved using conventional techniques. This perception, however, cannot align with reality. Computer simulations in this field have boundaries that are not documented and can affect physical outcomes, but pinpointing them is challenging. We introduce CoupledDipoles.jl, a specialized Julia Package designed for simulating interacting cold atoms through various mathematical models. Our package offers a flexible infrastructure that allows for different models (e.g. 2D models, where the effective physics is constraint into a plane) to be incorporated and, in addition, brings guarantees that its core methods have optimal performance. By addressing this unconventional gap in the literature, we aim to shed light on the numerical methods in the field, often overlooked, providing a valuable resource for both newcomers seeking an entry point and experts aiming to enhance their productivity in this domain.