Operators
- slowquant.qiskit_interface.operators.Eminuspq(p: int, q: int) FermionicOperator
Construct Hermitian singlet one-electron excitation operator.
\[\hat{E}^-_{pq} = \hat{E}_{pq} - \hat{E}_{qp}\]- Parameters:
p – Spatial orbital index.
q – Spatial orbital index.
- Returns:
Singlet one-electron excitation operator.
- slowquant.qiskit_interface.operators.Epq(p: int, q: int) FermionicOperator
Construct the singlet one-electron excitation operator.
\[\hat{E}_{pq} = \hat{a}^\dagger_{p,\alpha}\hat{a}_{q,\alpha} + \hat{a}^\dagger_{p,\beta}\hat{a}_{q,\beta}\]- Parameters:
p – Spatial orbital index.
q – Spatial orbital index.
- Returns:
Singlet one-electron excitation operator.
- slowquant.qiskit_interface.operators.G1(i: int, a: int) FermionicOperator
Construct singlet one-electron spin-adapted excitation operator.
\[\hat{G}^{[1]}_{ia} = \frac{1}{\sqrt{2}}\hat{E}_{ai}\]- Parameters:
i – Spatial orbital index.
a – Spatial orbital index.
Returns singlet one-elecetron spin-adapted exciation operator.
- slowquant.qiskit_interface.operators.G2_1(i: int, j: int, a: int, b: int) FermionicOperator
Construct first singlet two-electron spin-adapted excitation operator.
\[\hat{G}^{[1]}_{aibj} = \frac{1}{2\sqrt{\left(1+\delta_{ab}\right)\left(1+\delta_{ij}\right)}}\left(\hat{E}_{ai}\hat{E}_{bj} + \hat{E}_{aj}\hat{E}_{bi}\right)\]- Parameters:
i – Spatial orbital index.
j – Spatial orbital index.
a – Spatial orbital index.
b – Spatial orbital index.
Returns first singlet two-elecetron spin-adapted exciation operator.
- slowquant.qiskit_interface.operators.G2_2(i: int, j: int, a: int, b: int) FermionicOperator
Construct second singlet two-electron spin-adapted excitation operator.
\[\hat{G}^{[2]}_{aibj} = \frac{1}{2\sqrt{3}}\left(\hat{E}_{ai}\hat{E}_{bj} - \hat{E}_{aj}\hat{E}_{bi}\right)\]- Parameters:
i – Spatial orbital index.
j – Spatial orbital index.
a – Spatial orbital index.
b – Spatial orbital index.
Returns second singlet two-elecetron spin-adapted exciation operator.
- slowquant.qiskit_interface.operators.commutator(A: FermionicOperator, B: FermionicOperator) FermionicOperator
Construct operator commutator.
\[\left[\hat{A},\hat{B}\right] = \hat{A}\hat{B} - \hat{B}\hat{A}\]- Parameters:
A – Fermionic operator.
B – Fermionic operator.
- Returns:
Operator from commutator.
- slowquant.qiskit_interface.operators.double_commutator(A: FermionicOperator, B: FermionicOperator, C: FermionicOperator) FermionicOperator
Construct operator double commutator.
\[\left[\hat{A},\left[\hat{B},\hat{C}\right]\right] = \hat{A}\hat{B}\hat{C} - \hat{A}\hat{C}\hat{B} - \hat{B}\hat{C}\hat{A} + \hat{C}\hat{B}\hat{A}\]- Parameters:
A – Fermionic operator.
B – Fermionic operator.
C – Fermionic operator.
- Returns:
Operator from double commutator.
- slowquant.qiskit_interface.operators.epqrs(p: int, q: int, r: int, s: int) FermionicOperator
Construct the singlet two-electron excitation operator.
\[\hat{e}_{pqrs} = \hat{E}_{pq}\hat{E}_{rs} - \delta_{qr}\hat{E}_{ps}\]- Parameters:
p – Spatial orbital index.
q – Spatial orbital index.
r – Spatial orbital index.
s – Spatial orbital index.
- Returns:
Singlet two-electron excitation operator.
- slowquant.qiskit_interface.operators.hamiltonian_full_space(h_mo: ndarray, g_mo: ndarray, num_orbs: int) FermionicOperator
Construct full-space electronic Hamiltonian.
\[\hat{H} = \sum_{pq}h_{pq}\hat{E}_{pq} + \frac{1}{2}\sum_{pqrs}g_{pqrs}\hat{e}_{pqrs}\]- Parameters:
h_mo – Core one-electron integrals in MO basis.
g_mo – Two-electron integrals in MO basis.
num_orbs – Number of spatial orbitals.
- Returns:
Hamiltonian operator in full-space.
- slowquant.qiskit_interface.operators.hamiltonian_pauli_0i_0a(h_mo: ndarray, g_mo: ndarray, num_inactive_orbs: int, num_active_orbs: int) FermionicOperator
Get energy Hamiltonian operator.
- Parameters:
h_mo – One-electron Hamiltonian integrals in MO.
g_mo – Two-electron Hamiltonian integrals in MO.
num_inactive_orbs – Number of inactive orbitals in spatial basis.
num_active_orbs – Number of active orbitals in spatial basis.
- Returns:
Energy Hamilonian fermionic operator.
- slowquant.qiskit_interface.operators.hamiltonian_pauli_1i_1a(h_mo: ndarray, g_mo: ndarray, num_inactive_orbs: int, num_active_orbs: int, num_virtual_orbs: int) FermionicOperator
Get Hamiltonian operator that works together with an extra inactive and an extra virtual index.
- Parameters:
h_mo – One-electron Hamiltonian integrals in MO.
g_mo – Two-electron Hamiltonian integrals in MO.
num_inactive_orbs – Number of inactive orbitals in spatial basis.
num_active_orbs – Number of active orbitals in spatial basis.
num_virtual_orbs – Number of virtual orbitals in spatial basis.
- Returns:
Modified Hamilonian fermionic operator.
- slowquant.qiskit_interface.operators.hamiltonian_pauli_2i_2a(h_mo: ndarray, g_mo: ndarray, num_inactive_orbs: int, num_active_orbs: int, num_virtual_orbs: int) FermionicOperator
Get Hamiltonian operator that works together with two extra inactive and two extra virtual index.
- Parameters:
h_mo – One-electron Hamiltonian integrals in MO.
g_mo – Two-electron Hamiltonian integrals in MO.
num_inactive_orbs – Number of inactive orbitals in spatial basis.
num_active_orbs – Number of active orbitals in spatial basis.
num_virtual_orbs – Number of virtual orbitals in spatial basis.
- Returns:
Modified Hamilonian fermionic operator.
- slowquant.qiskit_interface.operators.one_elec_op_0i_0a(ints_mo: ndarray, num_inactive_orbs: int, num_active_orbs: int) FermionicOperator
Create one-electron operator that makes no changes in the inactive and virtual orbitals.
- Parameters:
ints_mo – One-electron integrals for operator in MO basis.
num_inactive_orbs – Number of inactive orbitals in spatial basis.
num_active_orbs – Number of active orbitals in spatial basis.
- Returns:
One-electron operator for active-space.
- slowquant.qiskit_interface.operators.one_elec_op_1i_1a(ints_mo: ndarray, num_inactive_orbs: int, num_active_orbs: int, num_virtual_orbs: int) FermionicOperator
Create one-electron operator that makes up to one change in the inactive and virtual orbitals.
- Parameters:
ints_mo – One-electron integrals for operator in MO basis.
num_inactive_orbs – Number of inactive orbitals in spatial basis.
num_active_orbs – Number of active orbitals in spatial basis.
num_virtual_orbs – Number of virtual orbitals in spatial basis.
- Returns:
Modified one-electron operator.
- slowquant.qiskit_interface.operators.one_elec_op_full_space(ints_mo: ndarray, num_orbs: int) FermionicOperator
Construct full-space one-electron operator.
\[\hat{O} = \sum_{pq}h_{pq}\hat{E}_{pq}\]- Parameters:
ints_mo – One-electron integrals for operator in MO basis.
num_orbs – Number of spatial orbitals.
- Returns:
Hamiltonian operator in full-space.