Topological Simulation Platform for Active Matter.
We support Linux and MacOS.
Direct installation requires a Homebrew installation. Users can alternatively choose the docker image variant to skip installation. For Brew on Linux, you need basic tools:
apt-get updateapt-get install build-essential procps curl file git gcc-11 g++-11On MacOS, you need XCode command line tools:
xcode-select -installAfterwards, Homebrew can be installed as also described at https://brew.sh/:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Please make sure to follow the instruction at the end of the brew installation to add it to your path.
For the TopoSPAM installation, first clone the repository:
git clone https://github.com/abhinavsns/TopoSPAM.gitEnter the repo:
cd topospamCreate a python3.8 virtualenv using pip and activate it:
python3 -m venv TopoSPAM_envsource TopoSPAM_env/bin/activateInstall the package with dependencies:
pip3 install .Modify the package as editable:
pip3 install -e .One can then launch the jupyter notebook and set the path of the repository as shown in the examples.
The virtual environment can be made avialable to jupyter notebook by:
python -m ipykernel install --user --name=TopoSPAM_envThe examples can be run from the jupyter notebook:
jupyter notebookIt is important to set the repo path correctly in the notebook for TopoSPAM to find the relevant binaries.
Verify your docker installation by checking if the following command works:
docker ps
Once docker is available, the linux docker image can be pulled using the following command
docker pull ghcr.io/abhinavsns/topospam:latestThe docker container can then be launched using the following
docker run -it -p 8888:8888 ghcr.io/abhinavsns/topospam:latestInside the container, activate the already existing virtual environment and launch the jupyter notebook
source TopoSPAM_env/bin/activatejupyter notebook --ip 0.0.0.0 --no-browser --allow-rootNow you can navigate to the examples and try running them from the web browser at localhost:8888.
Please check the issues section and FAQs below before creating a new issue.
If you encouter new problems, Please create an issue in this repository explaining the issue with the output of the error message. We will try our best to help you.
The system configuration can differ for everyone and hence the installation might fail due to the dependencies and not TopoSPAM.
-
Error: Too many files openThis error can occur if your system has less memory or a lower ulimit while installation. A simple workaround is to run the installation again. -
On MacOS, if you get compilation errors, it can be due an older or incompatible Xcode toolchain. Please update to the latest Xcode toolchain.
-
On Linux, homebrew is not so well supported and hence you may encounter issues with compilation that can be due to conflicting dependencies and so on. Please choose the docker option to avoid issues.