Chemistry Drivers (qiskit_nature.drivers)

Qiskit Nature requires a computational chemistry program or library, accessed via a chemistry driver, to be installed on the system for the electronic-structure computation of a given molecule. A driver is created with a molecular configuration, passed in the format compatible with that particular driver. This allows custom configuration specific to each computational chemistry program or library to be passed.

Qiskit Nature thus allows the user to configure a chemistry problem in a way that a chemist already using the underlying chemistry program or library will be familiar with. The driver is used to compute some intermediate data, which later will be used to form the input to an algorithm. Such intermediate data, is populated into a QMolecule object and includes the following for example:

  1. One- and two-body integrals in Molecular Orbital (MO) basis

  2. Dipole integrals

  3. Molecular orbital coefficients

  4. Hartree-Fock energy

  5. Nuclear repulsion energy

Once extracted, the structure of this intermediate data is independent of the driver that was used to compute it. However the values and level of accuracy of such data will depend on the underlying chemistry program or library used by the specific driver.

Qiskit Nature offers the option to serialize the Qmolecule data in a binary format known as Hierarchical Data Format 5 (HDF5). This is done to allow chemists to reuse the same input data in the future and to enable researchers to exchange input data with each other — which is especially useful to researchers who may not have particular computational chemistry drivers installed on their computers.

Driver Base Class


Base class for Qiskit’s chemistry drivers.


Base class for Qiskit’s chemistry bosonic drivers.


Base class for Qiskit’s chemistry fermionic drivers.

Driver Common


Molecule data class containing driver result.


Driver-independent Molecule definition.


HFMethodType Enum


Units Type Enum


Basis Type


Initial Guess Enum


Watson Hamiltonian class containing the results of a driver’s anharmonic calculation


The drivers in the chemistry module obtain their information from classical ab-initio programs or libraries. Several drivers, interfacing to common programs and libraries, are available. To use the driver its dependent program/library must be installed. See the relevant installation instructions below for your program/library that you intend to use.

The HDF5Driver reads molecular data from a pre-existing HDF5 file, as saved from a QMolecule, and is not dependent on any external chemistry program/library and needs no special install.

The FCIDumpDriver likewise reads from a pre-existing file in this case a standard FCIDump file and again needs no special install.

Fermionic Drivers


Qiskit chemistry driver using the Gaussian™ 16 program.


Qiskit chemistry driver using the PSI4 program.


Qiskit chemistry driver using the PyQuante2 library.


Qiskit chemistry driver using the PySCF library.


Qiskit chemistry driver reading an HDF5 file.


Qiskit chemistry driver reading an FCIDump file.

Bosonic Drivers


Gaussian™ 16 forces driver.

General Driver

The GaussianLogDriver allows an arbitrary Gaussian Job Control File to be run and return a GaussianLogResult containing the log as well as ready access certain data of interest that is parsed from the log.


Gaussian™ 16 log driver.


Result for Gaussian™ 16 log driver.