OOFEM is free finite element code with object oriented architecture for solving mechanical, transport and fluid Mechanics problems that operates on various platforms.
The aim of this project is to develop efficient and robust tool for FEM computations as well as to provide modular and extensible environment for future development. OOFEM is released under GNU General Public License (GPL).
Features:
* fully extensible - The kernel is extensible in any "direction". The possibility of adding new element type, new material model with any type and number of internal history parameters, new boundary conditions, numerical algorithms or analysis modules, as well as ability to add and manage arbitrary degrees of Freedom is matter of course.
* independent problem formulation, numerical solution and data storage - The kernel provides the independent Abstractions for analysis, general numerical method and data storage (sparse matrices). The component mapping concept allows to formulate problem and numerical method independently and allows to use any suitable numerical method for problem solution without changes. This concept is further enhanced by abstract sparse Matrix interface, allowing to formulate numerical method independently on sparse matrix implementation.
* full restart support - The kernel supports full restart from any previously saved state.
* staggered analysis - allows to group basic problems together and to transfer and share the solution fields Between basic subproblems. The general design allows to use different discretizations for the basic subproblems.
* parallel processing support - based on domain decomposition, message passing paradigms, and dynamic load balancing engine. Many analyses can be run in parallel and very good performance scalability can be obtained on various platforms.