  Spreading processes have been largely studied in the literature, both
analytically and by means of large-scale numerical simulations. These processes
mainly include the propagation of diseases, rumors and information on top of a
given population. In the last two decades, with the advent of modern network
science, we have witnessed significant advances in this field of research. Here
we review the main theoretical and numerical methods developed for the study of
spreading processes on complex networked systems. Specifically, we formally
define epidemic processes on single and multilayer networks and discuss in
detail the main methods used to perform numerical simulations. Throughout the
review, we classify spreading processes (disease and rumor models) into two
classes according to the nature of time: (i) continuous-time and (ii) cellular
automata approach, where the second one can be further divided into synchronous
and asynchronous updating schemes. Our revision includes the heterogeneous
mean-field, the quenched-mean field, and the pair quenched mean field
approaches, as well as their respective simulation techniques, emphasizing
similarities and differences among the different techniques. The content
presented here offers a whole suite of methods to study epidemic-like processes
in complex networks, both for researchers without previous experience in the
subject and for experts.
