Skip to content

dq.MESolveResult

Result of the Lindblad master equation integration.

Attributes

  • states (array of shape (..., nsave, n, n)) –

    Saved states with nsave = ntsave, or nsave = 1 if options.save_states is set to False.

  • final_state (array of shape (..., n, n)) –

    Saved final state.

  • expects (array of shape (..., len(exp_ops), ntsave) or None) –

    Saved expectation values, if specified by exp_ops.

  • extra (PyTree or None) –

    Extra data saved with save_extra() if specified in options (see dq.Options).

  • infos (PyTree or None) –

    Solver-dependent information on the resolution.

  • tsave (array of shape (ntsave,)) –

    Times for which results were saved.

  • solver (Solver) –

    Solver used.

  • gradient (Gradient) –

    Gradient used.

  • options (Options) –

    Options used.

Result of running multiple simulations concurrently

The resulting states and expectation values are batched according to the leading dimensions of the Hamiltonian H, jump operators jump_ops and initial state rho0. The behaviour depends on the value of the cartesian_batching option

The results leading dimensions are

... = ...H, ...L0, ...L1, (...), ...rho0
For example if:

  • H has shape (2, 3, n, n),
  • jump_ops = [L0, L1] has shape [(4, 5, n, n), (6, n, n)],
  • rho0 has shape (7, n, n),

then states has shape (2, 3, 4, 5, 6, 7, ntsave, n, n).

The results leading dimensions are

... = ...H = ...L0 = ...L1 = (...) = ...rho0  # (once broadcasted)
For example if:

  • H has shape (2, 3, n, n),
  • jump_ops = [L0, L1] has shape [(3, n, n), (2, 1, n, n)],
  • rho0 has shape (3, n, n),

then states has shape (2, 3, ntsave, n, n).

See the Batching simulations tutorial for more details.