Skip to main content

Package to design and run diffusion phenomena in networks.

Project description

Network Diffusion - spreading models in networks

License: GPL PyPI version

Tests Builds Docs codecov FOSSA Status

This Python library provides a versatile toolkit for simulating diffusion processes in complex networks. It offers support for various types of models, including temporal models, multilayer models, and combinations of both.

Documentation is available here!

Key Features

  • Complex Network Simulation: The library enables users to simulate diffusion processes in complex networks with ease. Whether you are studying information spread, disease propagation, or any other diffusion phenomena, this library has you covered.

  • Temporal Models: You can work with temporal models, allowing you to capture the dynamics of processes over time. These temporal models can be created using regular time windows or leverage CogSnet.

  • Multilayer Networks: The library supports multilayer networks, which are essential for modelling real-world systems with interconnected layers of complexity.

  • Predefined Models: You have the option to use predefined diffusion models such as the Linear Threshold Model, Independent Cascade Model, and more. These models simplify the simulation process, allowing you to focus on your specific research questions.

  • Custom Models: Additionally, Network Diffusion allows you to define your own diffusion models using open interfaces, providing flexibility for researchers to tailor simulations to their unique requirements.

  • Centrality Measures: The library provides a wide range of centrality measures specifically designed for multilayer networks. These measures can be valuable for selecting influential seed nodes in diffusion processes.

  • NetworkX Compatible: Last but not least, the package is built on top of NetworkX, ensuring seamless compatibility with this popular Python library for network analysis. You can easily integrate it into your existing NetworkX-based workflows.

How to install this package

To install package, run this command: pip install network_diffusion. Please note that we currently support Linux, MacOS, and Windows only.

To contribute, please clone the repo, switch to a new feature-branch, and install the environment:

conda env create -f requirements/environment.yml
conda activate network-diffusion

Citing us

If you used the package, please cite us as:

@article{czuba2024networkdiffusion,
  title={Network Diffusion – Framework to Simulate Spreading Processes in Complex Networks},
  author={
    Czuba, Micha{\l} and Nurek, Mateusz and Serwata, Damian and Qi, Yu-Xuan and
    Jia, Mingshan and Musial, Katarzyna and Michalski, Rados{\l}aw and Br{\'o}dka, Piotr
  },
  journal={Big Data Mining And Analytics},
  volume={},
  number={},
  pages={1-13},
  year={2024},
  publisher={IEEE},
  doi = {10.26599/BDMA.2024.9020010},
  url={https://doi.org/10.26599/BDMA.2024.9020010},
}

Particularly if you used the functionality of simulating coexisting phenomena in complex networks, please add the following work:

@inproceedings{czuba2022coexisting,
    author={Czuba, Micha\l{} and Br\'{o}dka, Piotr},
    booktitle={2022 IEEE 9th International Conference on Data Science and Advanced Analytics (DSAA)},
    title={Simulating Spreading of Multiple Interacting Processes in Complex Networks},
    volume={},
    number={},
    pages={1-10},
    year={2022},
    month={oct},
    publisher={IEEE},
    address={Shenzhen, China},
    doi={10.1109/DSAA54385.2022.10032425},
    url={https://ieeexplore.ieee.org/abstract/document/10032425},
}

Bugs reporting

Please report bugs on this board or by sending a direct e-mail to the main author.

About us

This library is developed and maintained by Network Science Lab at WUST and external partners. For more information and updates, please visit our website.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distributions

network_diffusion-0.14.1rc20240531185053-cp310-cp310-win_amd64.whl (104.2 kB view details)

Uploaded CPython 3.10 Windows x86-64

network_diffusion-0.14.1rc20240531185053-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.whl (119.6 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.5+ x86-64

network_diffusion-0.14.1rc20240531185053-cp310-cp310-macosx_10_9_universal2.whl (107.5 kB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file network_diffusion-0.14.1rc20240531185053.tar.gz.

File metadata

File hashes

Hashes for network_diffusion-0.14.1rc20240531185053.tar.gz
Algorithm Hash digest
SHA256 ef6a0a96993d83ed164aafba82685ebbcba2b517333a33a8c9f56076b6bb1c49
MD5 712b12fbeeb4b37240f9ddbcfb659515
BLAKE2b-256 31563dd339f8bdd2d013817a0677389a24ecec72869f7fdf1bf9c9e70feaa492

See more details on using hashes here.

File details

Details for the file network_diffusion-0.14.1rc20240531185053-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for network_diffusion-0.14.1rc20240531185053-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 05968e031646f6dc3ce8635064669ce3711fa7cdef9cb22e31c670243940e512
MD5 e05461ebb436272116799ee816487a91
BLAKE2b-256 1429785bf4cfba87b14b6b1a03910df93a6051c295002ac6990f308cd6f04203

See more details on using hashes here.

File details

Details for the file network_diffusion-0.14.1rc20240531185053-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for network_diffusion-0.14.1rc20240531185053-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 68fd11c3fb90ea105051edff808a177bf1a938ce58246ca3d5d0c625905a84cb
MD5 c4eab6ce276488f93e1bbe8b9299ebda
BLAKE2b-256 66eef52ae0f0525ed5d4281ef90d4f898c830c605a37797c612d9a86a44bd813

See more details on using hashes here.

File details

Details for the file network_diffusion-0.14.1rc20240531185053-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for network_diffusion-0.14.1rc20240531185053-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 f3a81db7ba1130665f8e650c48100c7a9eef4d7b716f661e806d03e64875c348
MD5 8301c33db81677ea4176e68ab8c89762
BLAKE2b-256 ce7fb5462111fad3d3b35f66a8242e0dee13e7107da4e30344da21ee88054164

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page