Network Diffusion Algorithms

Implementation of network diffusion algorithms such as heat diffusion or Markov random walks. Network diffusion algorithms generally spread information in the form of node weights along the edges of a graph to other nodes. These weights can for example be interpreted as temperature, an initial amount of water, the activation of neurons in the brain, or the location of a random surfer in the internet. The information (node weights) is iteratively propagated to other nodes until a equilibrium state or stop criterion occurs.




  • Adds Matrix to Suggests


  • Adds correction for hubs
  • Fixes container overflow bug


  • Removes insulated.heat.diffusion
  • Adds matrix inputs for most methods


  • Updated exported function names to make registering possible
  • Exchanged S3 with S4 classes
  • Check for ergodicity in random walk
  • Added user interrupt


  • Basic S3 methods for:
    • Markov random walks
    • Laplacian heat diffusion
    • Insulated heat diffusion
    • Nearest neighbor search
    • Matrix utility functions
  • Implementation of respective cpp methods
  • Setup
    • Vignette, documentation for all classes and methods
    • License
    • Unit-tests
    • Config, Readme, Travis
    • Lintr
    • Codecov
  • Initial submission to CRAN


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


0.1.4 by Simon Dirmeier, 4 years ago

Report a bug at

Browse source code at

Authors: Simon Dirmeier [aut, cre]

Documentation:   PDF Manual  

GPL (>= 3) license

Imports Rcpp, igraph, methods

Suggests knitr, rmarkdown, testthat, lintr, Matrix

Linking to Rcpp, RcppEigen

System requirements: C++11

Imported by SEMgraph.

See at CRAN