Kwant: a software package for quantum transport

Kwant: a software package for quantum transport

Dated: 5 March 2014 | Christoph W. Groth,1 Michael Wimmer,2 Anton R. Akhmerov,2,3 and Xavier Waintal1
Kwant is a Python-based software package designed for numerical quantum transport calculations. It aims to be user-friendly, universal, and high-performance, suitable for simulating physical systems of any dimensionality and geometry described by a tight-binding model. Kwant exposes the natural concepts of quantum transport theory, such as lattices, symmetries, electrodes, and orbital/spin/electron-hole degrees of freedom, in a simple and transparent manner. It supports calculations of transport properties, dispersion relations, modes, wave functions, Green's functions, and out-of-equilibrium local quantities. Kwant's modular and extensible nature allows for easy implementation of various tight-binding Hamiltonians. The package is designed to solve the scattering problem robustly and efficiently, exhibit high interoperability with other packages and algorithms, and support an easy and expressive way to define a broad range of tight-binding systems. Kwant uses highly efficient and robust algorithms that outperform the commonly used recursive Green's function method and avoid instabilities in many algorithms. Its interoperability removes the need for specialized packages to reimplement the solution of the scattering problem, while its expressiveness allows for defining a wide range of physical systems using physical concepts directly. Kwant's design combines performance and interoperability with flexibility and ease of use. It separates the work into two phases: defining the tight-binding Hamiltonian in Python and transforming it into a low-level representation for high-performance numerical calculations. This approach ensures that the time required for defining the Hamiltonian scales linearly with system size, while solving the scattering problem or applying other complex numerical algorithms scales less well. Kwant's low-level representation of tight-binding systems is suitable for efficient calculations and allows for easy calculation of crucial properties such as the Hilbert space dimension. It is universal and can be used for any computation involving tight-binding Hamiltonians. Kwant also supports symmetry enforcement and allows for the manipulation of hoppings of a single kind in a single operation. Kwant's design allows for the natural implementation of complex systems, such as a graphene-based nonlocal spin valve, which involves different Bravais lattices and the spin degree of freedom. The package is open-source and freely available, with a community-oriented website and mailing list.Kwant is a Python-based software package designed for numerical quantum transport calculations. It aims to be user-friendly, universal, and high-performance, suitable for simulating physical systems of any dimensionality and geometry described by a tight-binding model. Kwant exposes the natural concepts of quantum transport theory, such as lattices, symmetries, electrodes, and orbital/spin/electron-hole degrees of freedom, in a simple and transparent manner. It supports calculations of transport properties, dispersion relations, modes, wave functions, Green's functions, and out-of-equilibrium local quantities. Kwant's modular and extensible nature allows for easy implementation of various tight-binding Hamiltonians. The package is designed to solve the scattering problem robustly and efficiently, exhibit high interoperability with other packages and algorithms, and support an easy and expressive way to define a broad range of tight-binding systems. Kwant uses highly efficient and robust algorithms that outperform the commonly used recursive Green's function method and avoid instabilities in many algorithms. Its interoperability removes the need for specialized packages to reimplement the solution of the scattering problem, while its expressiveness allows for defining a wide range of physical systems using physical concepts directly. Kwant's design combines performance and interoperability with flexibility and ease of use. It separates the work into two phases: defining the tight-binding Hamiltonian in Python and transforming it into a low-level representation for high-performance numerical calculations. This approach ensures that the time required for defining the Hamiltonian scales linearly with system size, while solving the scattering problem or applying other complex numerical algorithms scales less well. Kwant's low-level representation of tight-binding systems is suitable for efficient calculations and allows for easy calculation of crucial properties such as the Hilbert space dimension. It is universal and can be used for any computation involving tight-binding Hamiltonians. Kwant also supports symmetry enforcement and allows for the manipulation of hoppings of a single kind in a single operation. Kwant's design allows for the natural implementation of complex systems, such as a graphene-based nonlocal spin valve, which involves different Bravais lattices and the spin degree of freedom. The package is open-source and freely available, with a community-oriented website and mailing list.
Reach us at info@study.space
Understanding Kwant%3A a software package for quantum transport