Sign in
Ctrl K


HORTON is a Helpful Open-source Research Tool for N-fermion systems, written primarily in the Python programming language. The ultimate goal of HORTON is to provide a platform for testing new ideas on the quantum many-body problem at a reasonable computational cost.


What HORTON can do for you

  • HORTON is designed to be a helpful framework for rapidly prototyping methods and testing ideas, together with utilities that ensure the resulting implementation is not too inefficient. HORTON is not designed to achieve bleeding-edge performance: readability, extensibility, and modifiability are often preferred over computational efficiency and code compactness when trade-offs are essential.

  • HORTON is, and always will be, open source, distributed under the GNU General Public License. The HORTON development team always welcomes new contributions.

  • HORTON is a research tool for both its developers and users. As a result, the available functionality is naturally biased towards the interests of its developers. The current focus of HORTON is on low-cost ab initio electronic structure theory methods and post-processing tools for interpreting electronic structure calculations. Additional functionality can be provided by other developers, and through interfaces to various programs. If you are interested in joining the HORTON development team, please contact us through the the HORTON mailing list.

  • HORTON can used in three ways: as part of a larger program, as a stand-alone problem, outside other programs. Retaining this flexibility is a fundamental design principle of HORTON. Horton can be run as a stand-alone program using either input files or Python scripts. However, when HORTON’s functionality is limited or its computational requirements are too large, HORTON can be used in scripts for managing and post-processing calculations from other Schrödinger solver software. HORTON can also be used, to provide specialized functionality to a larger program (e.g., to update the atomic charges in a molecular dynamics simulation). To facilitate the use of HORTON within other programs, we guarantee no major API changes for at least twelve months after each major release.

Logo of HORTON
Programming languages
  • Python 59%
  • C++ 32%
  • Cython 7%
  • C 1%
  • Shell 1%
</>Source code

Participating organisations

McMaster University
Digital Research Alliance of Canada


Paul Ayers
Principal Investigator
McMaster University