Open-source reference implementation of Mixed Variational Finite Elements for Implicit Simulation of Deformables
apps/
: cpp executablescmake/
: CMake filesdeps/
: dependenciesmodels/
: input meshesscenes/
: json scripts for different examplesscripts/
: miscellaneous matlab scriptssrc/
: source codetests/
: unit-tests (they all fucked right now)
git clone --recurse-submodules https://github.com/tytrusty/mfem.git
cd mfem
mkdir build
cd build
cmake ..
make -j4
There are two simulation executables for 2D and 3D simulation, which in the build directory will be bin/sim2d
and bin/sim3d
. These executables a scene JSON file, which we include examples of in the scenes
directory.
For example from your build directory try executing:
./bin/sim2d ../scenes/2D/square.json
or for a 3D example
./bin/sim3d ../scenes/3D/boat.json
After launching the application, you can use the GUI to start/stop/reset the simulation as well as modify many of the parameters. Currently there is no headless version since I think the GUI is much more fun :).
This project depends on the following libraries
- Eigen: linear algebra
- libigl: geometry processing
- Bartels: physics (don't think i neeed this anymore)
- polyscope: GUI
- finite-diff: finite difference used in unit tests
- Catch2: unit testing framework
Coming sort of soon (not that soon)