# Particle-Lib: MPI-Parallelized Multi-Particle Collidion Dynamics (MPCD) made easy
# Particle-Lib: MPI-Parallelized Multi-Particle Collision Dynamics (MPCD) made easy
MPCD is a stochastic particle-based solution technique for the Navier-Sokes equations. Particle-lib provides the basic infrastructure for writing massively-parrallel simulations using MPI. Particle-lib is intended to be used as a library: particle-lib handles the memory-management and MPI communications, as well as the MPCD solver. The user has to provide the applications (and the `main.cpp` ;) as well as the physical problem).
MPCD is a stochastic particle-based solution technique for the Navier-Stokes
equations. Particle-lib provides the basic infrastructure for writing
massively-parallel simulations using MPI. Particle-lib is intended to be used
as a library: particle-lib handles the memory-management and MPI
communications, as well as the MPCD solver. The user has to provide the
applications (and the `main.cpp` ;) as well as the physical problem).
## Compiling
This is fairly simple. Create a build directory (for example `/build/`) then run:
This is fairly simple. Create a build directory (for example `/build/`) then
run:
```console
cd build/
cmake ..
make -j
```
This will build all the test cases also (source can be found in `/test/`). See the `CMakeLists.txt` in the root directory, as well as any of the tests to see how particle-lib can be incorporated into your own project.
This will build all the test cases also (source can be found in `/test/`). See
the `CMakeLists.txt` in the root directory, as well as any of the tests to see
how particle-lib can be incorporated into your own project.
### Requirements:
@@ -21,15 +29,26 @@ This will build all the test cases also (source can be found in `/test/`). See t
## Project Milestones
This is a beta-version, it currently only has bare-bones functionality. However I am adding new features every day (about 1-2 commits per day on average). Let me know which features I should prioritize ([johannes@blaschke.science](mailto:johannes@blaschke.science)). Currently particle-lib only supports the infrastructure for the MPCD fluid particles, however new features will follow very soon. For now, have a look at the [ParticleContainer Example](/test/particle_container/interactive.cpp) to get your bearings. The current project milestones are:
This is a beta-version, it currently only has bare-bones functionality. However
I am adding new features every day (about 1-2 commits per day on average). Let
me know which features I should prioritize
([johannes@blaschke.science](mailto:johannes@blaschke.science)). Currently
particle-lib only supports the infrastructure for the MPCD fluid particles,
however new features will follow very soon. For now, have a look at the
[ParticleContainer Example](/test/particle_container/interactive.cpp) to get
your bearings. The current project milestones are: