Skip to main content

The Basis Set Exchange

Project description

Continuous Integration codecov Language grade: Python PyPI version

Basis Set Exchange Website

If you are looking for the Basis Set Exchange website (which can be used to browse and download this data in a more user-friendly way), visit


This project is a library containing basis sets for use in quantum chemistry calculations. In addition, this library has functionality for manipulation of basis set data.

The goal of this project is to create a consistent, thoroughly curated database of basis sets, and to provide a standard nomenclature for quantum chemistry.

The data contained within this library is being thoroughly evaluated and checked against relevant literature, software implementations, and other databases when available. The original data from the PNNL Basis Set Exchange is also available.

This library is used to form the backend of the new Basis Set Exchange website.

This project is a collaboration between the Molecular Sciences Software Institute ( and the Environmental Molecular Sciences Laboratory (


When publishing results obtained from use of the Basis Set Exchange software, please cite:

  • A New Basis Set Exchange: An Open, Up-to-date Resource for the Molecular Sciences Community Benjamin P. Pritchard, Doaa Altarawy, Brett Didier, Tara D. Gibson, and Theresa L. Windus J. Chem. Inf. Model. 2019, 59(11), 4814-4820 doi:10.1021/acs.jcim.9b00725

For citing the previous EMSL/PNNL Basis Set Exchange, please cite the following references:

  • The Role of Databases in Support of Computational Chemistry Calculations, Feller, D., J. Comp. Chem. 1996, 17(13), 1571-1586, doi:10.1002/(SICI)1096-987X(199610)17:13<1571::AID-JCC9>3.0.CO;2-P
  • Basis Set Exchange: A Community Database for Computational Sciences Schuchardt, K.L., Didier, B.T., Elsethagen, T., Sun, L., Gurumoorthi, V., Chase, J., Li, J., and Windus, T.L. J. Chem. Inf. Model. 2007, 47(3), 1045-1052, doi:10.1021/ci600510j


Full user and developer documentation can be found at

An overview of the project and its design is also available at

Command line interface

This library also includes a command line interface. See for how to use it.


This project can be installed via pip/PyPI.

pip install basis_set_exchange

If checking out from github, you can do a local install of the Python directory,

pip install -e .


Tests can be run using py.test -v once installed. Thorough (but very long) tests can be run with py.test --runslow.


import basis_set_exchange as bse

# Obtain the STO-3G basis set in nwchem format (as a string) for hydrogen and carbon
bse.get_basis('STO-3G', elements=[1,6], fmt='nwchem')

# Obtain the references for the above
bse.get_references('STO-3G', elements=[1,6], fmt='txt')

For more documentation, see

Command line

Same as above, but using the command line

$ bse get-basis sto-3g nwchem --elements=1,6

$ bse get-refs sto-3g txt --elements=1,6


This project is released under the BSD 3-Clause license. See LICENSE for details.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for basis-set-exchange, version 0.9
Filename, size File type Python version Upload date Hashes
Filename, size basis_set_exchange-0.9.tar.gz (32.2 MB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page