qdk_chemistry.data.time_dependent_qubit_hamiltonian.containers.driven module
Driven time-dependent qubit Hamiltonian container.
- class qdk_chemistry.data.time_dependent_qubit_hamiltonian.containers.driven.DrivenContainer(base_hamiltonian, drive_hamiltonian, drive)[source]
Bases:
TimeDependentQubitHamiltonianContainerContainer for a driven Hamiltonian H(t) = H0 + f(t) * H1.
The Hamiltonian is split into a time-independent part H0 and a time-dependent part H1 whose coefficient is modulated by a scalar drive function f(t).
- Parameters:
base_hamiltonian (QubitOperator) – Time-independent qubit operator.
drive_hamiltonian (QubitOperator) – Driven qubit operator (modulated by drive).
drive (Callable[[float], float]) – Scalar function f(t) that modulates drive_hamiltonian.
- Raises:
ValueError – If base_hamiltonian and drive_hamiltonian have different qubit counts.
- __init__(base_hamiltonian, drive_hamiltonian, drive)[source]
Initialize the driven container.
- Parameters:
base_hamiltonian (QubitOperator)
drive_hamiltonian (QubitOperator)
- Return type:
None
- evaluate(t)[source]
Return H0 + f(t) * H1 at time t.
- Return type:
- Parameters:
t (float) – The time at which to evaluate the Hamiltonian.
- Returns:
The qubit operator at the given time.
- property base_hamiltonian: QubitOperator[source]
The time-independent Hamiltonian.
- property drive_hamiltonian: QubitOperator[source]
The driven Hamiltonian (modulated by the drive).