  The presence of noise is currently one of the main obstacles to achieving
large-scale quantum computation. Strategies to characterise and understand
noise processes in quantum hardware are a critical part of mitigating it,
especially as the overhead of full error correction and fault-tolerance is
beyond the reach of current hardware. Non-Markovian effects are a particularly
unfavourable type of noise, being both harder to analyse using standard
techniques and more difficult to control using error correction. In this work
we develop a set of efficient algorithms, based on the rigorous mathematical
theory of Markovian master equations, to analyse and evaluate unknown noise
processes. In the case of dynamics consistent with Markovian evolution, our
algorithm outputs the best-fit Lindbladian, i.e., the generator of a memoryless
quantum channel which best approximates the tomographic data to within the
given precision. In the case of non-Markovian dynamics, our algorithm returns a
quantitative and operationally meaningful measure of non-Markovianity in terms
of isotropic noise addition. We provide a Python implementation of all our
algorithms, and benchmark these on a range of 1- and 2-qubit examples of
synthesised noisy tomography data, generated using the Cirq platform. The
numerical results show that our algorithms succeed both in extracting a full
description of the best-fit Lindbladian to the measured dynamics, and in
computing accurate values of non-Markovianity that match analytical
calculations.
