Skip to content

reticula-network/reticula

Repository files navigation

Reticula Actions Status Documentations Paper

Reticula is a general-purpose complex network analysis tool, supporting static networks as well as hypergraphs, temporal networks. It allows you to study radomise networks, calculate static or temporal network reachability and form event graphs.

Reticula (singular: reticulum) is a word with Latin origin meaning networks or network-like (i.e., reticulate) structures.

Getting Started

Documentation

The documentation is available at reticula.network

Requirements

Reticular relies heavily on certain C++20 features, such as concepts and ranges. If you intend on using Reticula in your project, you need a compiler with decent support of both. This library is regularly tested on Linux (GCC 11.4.0), MacOS (XCode 14.3, AppleClang 14.0.3.14030022) and Windows (Visual Studio 17 2022, MSVC 19.37.32825.0), though anything more recent should probably work just as well.

Including reticula in your CMake project

You can use FetchContent to include Reticula in your C++ project. For example:

include(FetchContent)

FetchContent_Declare(
  reticula
  GIT_REPOSITORY https://github.com/reticula-network/reticula.git
  GIT_TAG ${COMMIT_HASH})

FetchContent_MakeAvailable(reticula)

If you want to fetch other content using CMake FetchContent module, you can include those in FetchContent_MakeAvailable call or call this function separatly for each content.

Finally, link your target and Reticula like this:

target_link_libraries(${TARGET_NAME} PRIVATE reticula)

Development

Running the test suit

Clone the library:

$ git clone https://github.com/reticula-network/reticula.git

Compile and run the tests:

$ cd reticula
$ mkdir build
$ cd build
$ cmake ..
$ cmake --build . --target reticula_tests
$ ./reticula_tests

About

The general purpose library for analysing static, temporal and hypergraph networks.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages