Holmes-Rubin Expectation-maximization algorithm for fitting reversible continous-time Markov processes.
This class implements "Algorithm 4" described by Metzner in [2], which was introduced by Holmes and Rubin in [1]. The notation follows [2].
[1] Holmes, I., and G. M. Rubin. "An expectation maximization algorithm for training hidden substitution models." J. Mol. Biol. 317.5 (2002): 753-764.
[2] Metzner, Philipp, et al. "Generator estimation of Markov jump processes." J. Comp. Phys. 227.1 (2007): 353-375.