GetFEM - Summary
This group is not part of the GNU Project.
GetFEM offers a framework for solving potentially coupled systems of linear and nonlinear partial differential equations with the finite element method. It is an open source library based on collaborative development.
GetFEM is interfaced with several scripting languages (Python, Scilab and Matlab/Octave) so that almost all functionalities can be accessed from these languages. It supports modelling PDEs in arbitrary dimensions and allows to couple 1D, 2D and 3D problems. The strengths of GetFEM can be summarized as follows:
- A generic weak form assembly language (in terms of operators) that allows to rapidly implement quite arbitrary weak formulations. An automated symbolic differentiation allows to automatically obtain the tangent system for nonlinear problems. All derived assembly terms are compiled into optimized basic instructions.
- A model object that gathers the variables, data and terms of a problem and some predefined bricks representing classical models: elasticity in small and large deformations, Helmholtz problem, scalar elliptic problem, Dirichlet, contact and Neumann boundary conditions, incompressibility constraint, ...
- A complete separation between geometric transformation, finite element method, integration methods and partial differential term description, which allows to easily switch from a method to another.
- A large set of predefined methods: isoparametric elements, Pk on simplices of arbitrary degree and dimension, Qk on parallelepipeds, P1, P2 with bubble functions, Hermite elements, Argyris element, HCT and FVS, elements with hierarchical basis (for multigrid methods for instance), discontinuous Pk and Qk, vector elements (RT0, Nedelec) ...
- A large set of predefined integration methods.
- Many predefined structural mechanics terms (elasticity, contact with friction, plasticity ...)
- Level-set and finite element cut by one or several level-set (Xfem)
- Computation of terms between two meshes with an arbitrary transformation: this is a very powerful tool of the generic assembly language that allows to use a parameterized transformation. The derivative of the transformation with respect to the potential dependence on the variables is taken into account. Possible use: contact problems, fluid-structure interaction, special boundary conditions ...
- Post-processing directly with Scilab or Matlab interfaces or with the export of vtk/vtu or pos files. Many possibilities to interpolate arbitrary quantities, make slices, projections ...
GetFEM can be used to construct very generic finite element codes, where finite element methods, integration methods and the dimension of the problem are the parameters that can be changed very easily. This allows a wide range of experiments. Many examples and demos are provided.
GetFEM has basic meshing and mesh manipulation procedures (it can produce regular meshes). For more complex meshes GetFEM supports importing meshes in a variety of formats, currently supported are ASNSYS cdb files, GID, GMSH and EMC2.
Registration Date: Mon 28 Nov 2016 10:30:01 AM UTC
License: GNU Lesser General Public License
Development Status: 5 - Production/Stable
- Browse open items
Submit a new item
Powered by Savane 3.14-d582.
Corresponding source code