qdk_chemistry.algorithms.qubit_mapper.qdk_qubit_mapper module
QDK native qubit mapper using an optimized expression layer.
This module provides the QdkQubitMapper class for transforming electronic structure Hamiltonians to qubit Hamiltonians using various fermion-to-qubit encodings.
- class qdk_chemistry.algorithms.qubit_mapper.qdk_qubit_mapper.QdkQubitMapper(encoding='jordan-wigner', threshold=1e-12, integral_threshold=1e-12)[source]
Bases:
QubitMapperQDK native qubit mapper using PauliTermAccumulator.
This mapper transforms a fermionic Hamiltonian to a qubit Hamiltonian using configurable fermion-to-qubit encodings.
- Available encodings:
"jordan-wigner"(default)"bravyi-kitaev"
The mapper uses canonical blocked spin-orbital ordering internally: qubits 0..N-1 for alpha spin, qubits N..2N-1 for beta spin (where N is the number of spatial orbitals). Use
QubitHamiltonian.to_interleaved()for alternative qubit orderings.Examples
>>> from qdk_chemistry.algorithms import QdkQubitMapper >>> mapper = QdkQubitMapper() >>> mapper.settings().set("encoding", "jordan-wigner") >>> mapper.settings().set("threshold", 1e-10) >>> qubit_hamiltonian = mapper.run(hamiltonian)
- class qdk_chemistry.algorithms.qubit_mapper.qdk_qubit_mapper.QdkQubitMapperSettings[source]
Bases:
QubitMapperSettingsSettings configuration for a QdkQubitMapper.
Inherits base settings from
QubitMapperSettings.- Available encodings:
"jordan-wigner"(default)"bravyi-kitaev"
- Additional settings:
threshold (double, default=1e-12): Threshold for pruning small Pauli coefficients. integral_threshold (double, default=1e-12): Threshold for filtering small integrals.