|Vega FEM Library|
NEW: Vega FEM 2.0 released on Oct 8, 2013. New features described below.
Vega is a computationally efficient and stable C/C++ physics library for three-dimensional deformable object simulation. It is designed to model large deformations, including geometric and material nonlinearities, and can also efficiently simulate linear systems. Vega is open-source and free. It is released under the 3-clause BSD license, which means that it can be used freely both in academic research and in commercial applications.
Vega implements several widely used methods for simulation of large deformations of 3D solid deformable objects:
- co-rotational linear FEM elasticity [MG04]; it can also compute the exact tangent stiffness matrix [Bar12] (similar to [CPSS10]),
- linear FEM elasticity [Sha90],
- invertible isotropic nonlinear FEM models [ITF04, TSIF05],
- Saint-Venant Kirchhoff FEM deformable models (see [Bar07]), and
- mass-spring systems.
Since version 2.0, Vega FEM also supports model reduction [BJ05], cloth simulation (Baraff-Witkin cloth solver, [BW98]), and rigid body dynamics. Isotropic materials now also include (optional) compression resistance ([KTY09] and several prior references), which makes it possible to simulate very soft materials undergoing large compression in a stable way.
Vega is a middleware physics library. It is aimed at researchers and engineers with some preexisting knowledge in numerical simulation, computer graphics and/or solid mechanics, who can integrate Vega into their projects. The strength of Vega lies in its many C/C++ libraries which depend minimally on each other, and are in most cases independently reusable. Vega contains about 50,000 lines of C/C++ code. It compiles under Windows, Linux and Mac OS X, and has no external dependencies.
Most of Vega was written by Jernej Barbič. Other code contributors include Fun Shing Sin, Daniel Schroeder and Christopher Twigg.