Solver
- class Solver(static_hamiltonian, driving_operators=None, noise_operators=None)
Solver for the time-dependent Schrödinger equation.
The solver converts the supplied static Hamiltonian, driving operators, and optional noise operators into generator matrices, then combines them with time-dependent
Signal/SignalSumobjects during propagation. It does so by discretizing each time segment into short steps and approximating each step with a matrix exponential of the local generator. Usesolve_batch()to propagate one or more initial states over a single time segment, andsolve_time_segment_sequence()to stitch together multiple segments.- Parameters:
static_hamiltonian (
ndarray|Array) – Static Hamiltonian of the segment.driving_operators (
Sequence[ndarray|Array] |None) – Optional driving operators multiplying the time-dependent drive signals.noise_operators (
Sequence[ndarray|Array] |None) – Optional operators multiplying shot-dependent quasistatic-noise coefficients.
Methods
make_generator_without_noise(unp_inner, ...)Build a generator factory that optionally injects noise coefficients.
solve_batch(y0, t_span[, t_eval, ...])Propagate one or more initial conditions through a single time span.
Attributes
Per-drive generators (\(-2\pi i\) times each driving operator), or
None.Per-noise-term generators (\(-2\pi i\) times each noise operator), or
None.Static-Hamiltonian generator \(-2\pi i H_0\) driving the evolution.