Writing finite element programs with mesh adaptivity and complex shape functions is a nontrivial task. Handling grids, inputting meshes, and formatting graphical output are among the numerous cumbersome steps required. And any helps that comes in this area is always welcome.
Three young researchers—Wolfgang Bangerth, Ralf Hartmann, and Guido Kanschat—have developed a finite element software library that overcomes these problems. Their new software, called deal.II, is a large, object-oriented software library that facilitates the implementation of finite element algorithms with mesh adaptivity and complex shape functions. A unified interface provides support for one, two, and three space dimensions. The library is not tied to a particular set of equations and can integrate the work of others.
So what is deal.II
deal.II is a C++ program library targeted at the computational solution of partial differential equations using adaptive finite elements. It uses state-of-the-art programming techniques to offer you a modern interface to the complex data structures and algorithms required.
The main aim of deal.II is to enable rapid development of modern finite element codes, using among other aspects adaptive meshes and a wide array of tools classes often used in finite element program. A complete stand-alone linear algebra library including sparse matrices, vectors, Krylov subspace solvers, support for blocked systems, and interface to other packages.
To know about how it all began click History of Deal.II [pdf]