General-purpose agent-based modeling library
Project description
General purpose agent-based modeling library to integrate C++ and Python
CppyABM is a free open-source header-only library that enables agent-based modeling by providing essential tools in both C++ and Python as well as mixing both in a single model. The modeling in both C++ and Python follows similar semantics and style. Therefore, a model developed in one languages can be conveniently transferred to another. In addition, CppyABM provides binding tools to specifically expose certain parts of a model written in C++ for further development in Python. This enables users to take the advantage of both languages simultaneously. CppyABM uses RTvisualize for browser-based real-time visualization.
The full documentation of the library is available here. See examples folder as showcase of CppyABM utility.
Install/compile
For Python development:
Using pip manager:
pip install --upgrade cppyabm
Or, download the package and in the root folder, command:
python3 setup.py install
For Cpp development:
Clone the library and add the main root as a subdirectory. Using modern Cmake, the following command will include the library:
add_subdirectory("dir_to_cppyabm")
target_include_directories("your_project" "dir_to_include/ABM")
Authors
- Jalil Nourisa
Useful links
Familiarity with pybind11 is helpful during the Python binding process.
Contributing to CppyABM
In case of encountering an issue, pls report as an issue.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for cppyabm-1.0.16-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf663469a1c95e7e88cd66884d963587a3770eac080c06654792d9d8d288d0e6 |
|
MD5 | 139695390d1c23566697f3d38f01b427 |
|
BLAKE2b-256 | 09302fd689946d3cf8c75c58bfd8f8c68c96b0698885e40374285fa890cb8ce4 |