Simple dedicated vector-field particle simulation program that is written in objective-c with the gnustep. It uses OpenGL for rendering and OpenCL for computing the particle displacement. The program is not design as a research simulation program. But rather as a visualization program. However, the equations used for solving the particle displacement are based on the physical laws and formulas. Thus, it could be modified in the OpenCL code as such to mimic real particles.
- Random VectorField - Perlin Noise is for creating random vector fields.
- Small Particle size - Each particle takes 16 bytes ( 8 for position and 8 for velocity).
- Command line options - The settings of the program can be overridden with option arguments.
The main motivation of this project is to create a visualization program for particles in a vector-field in R^2. Where the particles can be influenced by the mouse/pointer motion.
The program can be executed by simply by the following:
./vecfield
The program can be easily be installed by using the following command:
mkdir build && cd build
cmake ..
cmake --build .
make install
This will compile the program and create the dependencies resources and install the program onto the system.
In order to compile the program, the following Debian packages are required.
apt-get install install ocl-icd-opencl-dev libsdl2-dev gnustep-devel libzip-dev mesa-common-dev opencl-headers libglew-dev libfreeimage-dev
The rest of the library dependencies are the OpenCL and OpenGL library provided by the graphic driver.
This project is licensed under the GPL+3 License - see the LICENSE file for details.