qit.seq.Seq

class qit.seq.Seq(tau=None, control=None, name='')

Piecewise constant control sequences for quantum systems.

Parameters
  • tau (array[float]) – durations of the time slices

  • control (array[float]) – control[i, j] is the value of control field j during time slice i. shape == (len(tau), len(B)).

  • name (str) – name of the sequence

The total generator for the time slice j is given by

\[G_j = A +\sum_k \text{control}_{jk} B_k,\]

and the corresponding propagator is

\[P_j = \exp(\tau_j G_j).\]

Attributes

name

name of the sequence

A

drift generator (typically \(-i/\hbar\) times a Hamiltonian and a time unit of your choice)

B

control generators

tau

durations of the time slices

control

control field values for each time slice

Methods

generator(j)

Generator for time slice j.

to_prop()

Propagator corresponding to the control sequence.

name

name of the sequence

Type

str

A

drift generator (typically \(-i/\hbar\) times a Hamiltonian and a time unit of your choice)

Type

array

B

control generators

Type

list[array]

tau

durations of the time slices

Type

array[float]

control

control field values for each time slice

Type

array[float]

generator(j)

Generator for time slice j.

Parameters

j (int) – time slice index

Returns

antihermitian generator for the given time slice

Return type

array[complex]

to_prop()

Propagator corresponding to the control sequence.

Returns the propagator matrix corresponding to the action of the control sequence.

Governing equation: \(\dot(X)(t) = (A +\sum_k u_k(t) B_k) X(t) = G(t) X(t)\).