/FluidSimulation

Primary LanguageC++GNU General Public License v3.0GPL-3.0

FluidSimulation

Low-resolution simulation High-resolution simulation

Fluid simulation via FLIP (Fluid Implicit Particle) Method.

Cloning with submodules

This Git repository has a submodule for libigl. To clone it correctly use the following command:

git clone --recurse-submodules git@github.com:SeanBone/WaterSim.git

For more details on the dependencies for libigl, check out the libigl documentation.

Note for linux users

On Ubuntu, install the following dependencies:

sudo apt-get install cmake build-essential libnetcdf-c++4-dev libx11-dev mesa-common-dev libgl1-mesa-dev libglu1-mesa-dev libxrandr-dev libxi-dev libxmu-dev libblas-dev libxinerama-dev libxcursor-dev

If you are using linux with a virtual machine on Windows, it is recommended to use Visual Studio instead.

Note for Windows users

libigl supports the Microsoft Visual Studio 2015 compiler and later, in 64bit mode. You can download Visual Studio 2019 Community for free from here.

Compiling and running

The main simulation is in the folder 3d. It can be compiled with Make and CMake:

mkdir -p 3d/build/
cd 3d/build && cmake ..
make -j8

References

Brackbill, J. U., Kress, D. B., & Solomon, H. M. (1988). FLIP: A low-dissipation, particle-in-cell method for fluid flow. Journal of Computational Physics, 81(2), 35-82. Englesson, D. (2024). Fluid Simulation Using Implicit Particles [Report]. Retrieved from http://www.danenglesson.com/images/portfolio/FLIP/rapport.pdf Losasso, F., & Fedkiw, R. (2024). A Second-Order Accurate, Two-Step FLIP Method for Incompressible Two-Phase Flow [arXiv preprint arXiv:2404.01931]. Retrieved from https://arxiv.org/abs/2301.06395 Wiki contributors. (n.d.). FLIP Fluids. Carnegie Mellon University Entertainment Technology Center Wiki. Retrieved June 18, 2024, from http://www.cs.cmu.edu/~15769-f23/