qml.qchem.decompose¶
-
decompose
(hf_file, mapping='jordan_wigner', core=None, active=None)[source]¶ Decomposes the molecular Hamiltonian into a linear combination of Pauli operators using OpenFermion tools.
This function uses OpenFermion functions to build the second-quantized electronic Hamiltonian of the molecule and map it to the Pauli basis using the Jordan-Wigner, Parity or Bravyi-Kitaev transformation.
- Parameters
hf_file (str) – absolute path to the hdf5-formatted file with the Hartree-Fock electronic structure
mapping (str) – Specifies the transformation to map the fermionic Hamiltonian to the Pauli basis. Input values can be
'jordan_wigner'
,'parity'
, or'bravyi_kitaev'
.core (list) – indices of core orbitals, i.e., the orbitals that are not correlated in the many-body wave function
active (list) – indices of active orbitals, i.e., the orbitals used to build the correlated many-body wave function
- Returns
an instance of OpenFermion’s
QubitOperator
- Return type
QubitOperator
Example
>>> decompose('./pyscf/sto-3g/h2', mapping='bravyi_kitaev') (-0.04207897696293986+0j) [] + (0.04475014401986122+0j) [X0 Z1 X2] + (0.04475014401986122+0j) [X0 Z1 X2 Z3] +(0.04475014401986122+0j) [Y0 Z1 Y2] + (0.04475014401986122+0j) [Y0 Z1 Y2 Z3] +(0.17771287459806262+0j) [Z0] + (0.17771287459806265+0j) [Z0 Z1] +(0.1676831945625423+0j) [Z0 Z1 Z2] + (0.1676831945625423+0j) [Z0 Z1 Z2 Z3] +(0.12293305054268105+0j) [Z0 Z2] + (0.12293305054268105+0j) [Z0 Z2 Z3] +(0.1705973832722409+0j) [Z1] + (-0.2427428049645989+0j) [Z1 Z2 Z3] +(0.1762764080276107+0j) [Z1 Z3] + (-0.2427428049645989+0j) [Z2]