4.5 Article

libcommute/pycommute: A quantum operator algebra domain-specific language and exact diagonalization toolkit

Journal

SOFTWAREX
Volume 17, Issue -, Pages -

Publisher

ELSEVIER
DOI: 10.1016/j.softx.2021.100937

Keywords

Quantum; Algebra; Many body physics; Exact diagonalization

Ask authors/readers for more resources

libcommute is a C++ template library for manipulating polynomial operators in quantum many-body theory and developing exact diagonalization codes. It provides a simple syntax, extensive documentation, and Python bindings for solving diagonalization problems and rapid prototyping.
I present libcommute, a C++11/14/17 template library that implements a domain-specific language for easy manipulating of polynomial operators used in the quantum many-body theory, as well as a software development toolkit for exact diagonalization codes. The library is written with expressiveness, extensibility and performance in mind. It features simple syntax for commonly used abstractions and algorithms, is well documented and covered by unit tests. libcommute is supplemented with Python 3 bindings called pycommute. They are useful for solving small scale diagonalization problems, rapid prototyping and wrapping of high performance libcommute-based computational cores in Python. (C) 2021 The Author(s). Published by Elsevier B.V.

Authors

I am an author on this paper
Click your name to claim this paper and add it to your profile.

Reviews

Primary Rating

4.5
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

No Data Available
No Data Available