InPartS.jl

InPartS is a framework for running agent-based simulations of large systems of interacting particles. InPartS consist of a flexible simulation core that provides a high-level simulation API and handles generic tasks like managing particles, finding interacting pairs, enforcing periodic boundary conditions or exporting data. This core can be extended by adding particle models that interface with the core via a handful of well-defined functions (documented here).

Installation

It is strongly recommended to follow the setup instructions for the eDLS Registry, which will allow you to handle InPartS (and many other packages of the eDLS ecosystem) like any other julia package. If you have done this and know your way around julia package management, you can stop reading after this initial section.

If you want to use the optional plotting functionality, install PyPlot.jl. Alternatively, you can use AbstractPlotting.jl; however, this backend is currently experimental and does not support all InPartS features.

"Use-only" installation

If you have followed the setup instructions for the eDLS Registry, InPartS can be installed from the REPL like any other julia package by hitting ] to enter the Pkg REPL and issuing the following command:

(@...) pkg> add InPartS

If Pkg REPL mode is not an option, the same can be achieved by

using Pkg
Pkg.add("InPartS")

As usual, this will also install all the necessary prerequisites. Note that this does not create a full clone of the git repository, but downloads either the latest tagged release or the current master branch. The package can later be updated with Pkg.update() (or, again, by hitting ] and typing update in the Pkg REPL).

Without having set up the eDLS Registry, the package URL has to be specified directly during the add steps above:

using Pkg
Pkg.add(PackageSpec(url="https://gitlab.gwdg.de/eDLS/InPartS.jl"))

or via ssh

using Pkg
Pkg.add(PackageSpec(url="git@gitlab.gwdg.de:eDLS/InPartS.jl.git"))

"Developer" installation

If you want to work on the project or inspect the code more carefully, you can use the Pkg.develop() function. If you already have a local copy of the git repository, you can simply use

using Pkg
Pkg.develop(PackageSpec(path="/path/to/repository/"))

to add the package to your julia environment.

If you do not have a copy of the repository, call Pkg.develop() with the package as an argument. In all of the following cases, a full copy of the repository will be cloned to ~/.julia/dev/. As above, if you have set up the eDLS Registry, julia will know where to find the package and you can simply hit ] to enter the Pkg REPL and use

(@...) pkg> develop InPartS

or (without the Pkg REPL)

using Pkg
Pkg.develop("InPartS")

If you have not set up the eDLS Registry, you can do the same by specifying the full URL:

using Pkg
Pkg.develop(PackageSpec(url="git@gitlab.gwdg.de:eDLS/InPartS.jl.git"))