Time evolution solves the master equation to get the system state at future times. QuTiP provides multiple solvers, each suited to different problems.
Mesolve is the standard solver for deterministic (ensemble-averaged) evolution. It integrates the master equation using efficient ODE solvers.
from qutip import * import numpy as np H = sigmaz() c_ops = [0.1 * sigmam()] times = np.linspace(0, 10, 100) psi0 = basis(2, 0) result = mesolve(H, psi0, times, c_ops, [sigmaz(), sigmam()]) # result.states: density matrix at each time # result.expect: expectation values of observables
Mcsolve runs stochastic trajectories, applying collapse operators randomly. Each run gives a different realization; ensemble average matches mesolve.
result_mc = mcsolve(H, psi0, times, c_ops, [sigmaz()], ntraj=1000) # Runs 1000 trajectories; averaging gives mesolve result
Mcsolve is useful for understanding quantum noise at the individual-event level and for benchmarking error mitigation.
Choose mesolve for typical problems, mcsolve for trajectory analysis or strong noise regimes.