qrunch.quantum.circuits.hamiltonian_time_evolution.hamiltonian_time_evolution_protocols
Module containing protocols for compilers of Hamiltonian time evolution.
Classes
Protocol for compilers approximating the time-evolution operator \(e^{-iHt}\) by a circuit. |
- class HamiltonianTimeEvolution
Bases:
ProtocolProtocol for compilers approximating the time-evolution operator \(e^{-iHt}\) by a circuit.
A Hamiltonian-time-evolution strategy approximates the time-evolution operator \(e^{-iHt}\) of a second-quantized Hermitian Hamiltonian \(H = \sum_j c_j P_j\), given as its decomposition into Hermitian terms. That decomposition, rather than the operator it was extracted from, is the input, so callers are free to supply a deliberately modified set of coefficients.
- __init__(*args, **kwargs)
- get_circuit(hamiltonian: SecondQuantizedHamiltonian, time: float) Circuit
Build a circuit approximating the time evolution of the given Hamiltonian.
- Parameters:
hamiltonian (SecondQuantizedHamiltonian) – The second-quantized Hamiltonian to time-evolve.
time (float) – The evolution time.
- Return type: