We propose a software design for the efficient and flexible handling of the building blocks used in high performance finite element simulations, through the pervasive use of parameters (parsed through parameter files). In the proposed design, all the building blocks of a high performance finite element program are built according to the command and composite design patterns. We present version 1.1.0 of the deal2lkit (deal.II ToolKit) library, which is a collection of modules and classes aimed at providing high level interfaces to several deal.II classes and functions, obeying the command and composite design patterns, and controlled via parameter files.
Sartori, A., Giuliani, N., Bardelloni, M., & Heltai, L. (2018). deal2lkit: A toolkit library for high performance programming in deal.II. SoftwareX, 7, 318–327. https://doi.org/10.1016/j.softx.2018.09.004