Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update solvers module API docs #333

Merged
28 changes: 14 additions & 14 deletions qiskit_dynamics/solvers/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,14 @@

This module provides classes and functions for solving differential equations.

Table :ref:`1 <standard solver table>` summarizes the standard solver interfaces exposed in
this module. It includes a high level class :class:`~qiskit_dynamics.solvers.Solver`
for solving models of quantum systems, as well as low-level functions for solving both
ordinary differential equations :math:`\dot{y}(t) = f(t, y(t))` and linear matrix differential
equations :math:`\dot{y}(t) = G(t)y(t)`.
Table :ref:`1 <standard solver table>` summarizes the standard solver interfaces exposed in this
module. It includes a high level class :class:`~qiskit_dynamics.solvers.Solver` for solving models
of quantum systems, as well as low-level functions for solving both ordinary differential equations
:math:`\dot{y}(t) = f(t, y(t))` and linear matrix differential equations
:math:`\dot{y}(t) = G(t)y(t)`.

Additionally, this module contains more specialized solvers for linear matrix differential
equations based on perturbative expansions, described :ref:`below <perturbative solvers>`.
Additionally, this module contains more specialized solvers for linear matrix differential equations
based on perturbative expansions, described :ref:`below <perturbative solvers>`.

.. _standard solver table:

Expand All @@ -39,9 +39,9 @@
* - Object
- Description
* - :class:`~qiskit_dynamics.solvers.Solver`
- High level solver class for both Hamiltonian and Lindblad dynamics.
Automatically constructs the relevant model type based on system details, and
the :meth:`~qiskit_dynamics.solvers.Solver.solve` method automatically handles
- High level solver class for both Hamiltonian and Lindblad dynamics. Automatically constructs
the relevant model type based on system details, and the
:meth:`~qiskit_dynamics.solvers.Solver.solve` method automatically handles
``qiskit.quantum_info`` input types.
* - :func:`~qiskit_dynamics.solvers.solve_ode`
- Low level solver function for ordinary differential equations:
Expand All @@ -57,8 +57,8 @@
.. math::
\dot{y}(t) = G(t)y(t),

where :math:`G(t)` is either a callable or a ``qiskit_dynamics``
model type, and :math:`y(t)` arrays of suitable shape for the matrix multiplication above.
where :math:`G(t)` is either a callable or a ``qiskit_dynamics`` model type, and :math:`y(t)`
arrays of suitable shape for the matrix multiplication above.

.. _perturbative solvers:

Expand All @@ -79,8 +79,8 @@
G(t) = G_0 + \sum_j Re[f_j(t)e^{i2\pi\nu_jt}]G_j,

and are fixed step with a pre-defined step size :math:`\Delta t`. The differential equation is
solved by either computing a truncated Dyson series, or taking the exponential of a truncated
Magnus expansion.
solved by either computing a truncated Dyson series, or taking the exponential of a truncated Magnus
expansion.

Add reference to both userguide and perturbation theory module documentation.

Expand Down
Loading
Loading