Implementation

In the current realization, an object oriented finite element package OOFEM [26] with parallel support for implicit solution schemes based on the PETSc [27] library was utilized. The communication is based on MPI message passing library [28]. A hierarchy of classes and methods was developed to implement the residual based error estimator and refinement strategy into the finite element code. The mapping operator employed distinguishes between the primary unknowns, which are mapped using the ordinary nodal shape function, and state variables for which a simple operator based on the closest integration point is employed. This simple mapping operator was found quite satisfactory with respect to the dispersion of transferred variables. The OOFEM finite element package is connected to a sequential mesh generator T3d [29]. The generated meshes are decomposed using a mesh partitioning library METIS [30] to which an interface has been established. Only the node-cut strategy is considered, however. In the current implementation, no support for dynamic load balancing is available. The analysis can either use the static partitioning with adaptive restart or dynamic partitioning with restart from the scratch. In the latter strategy, the error estimation is firstly invoked at the solution step corresponding to the adaptive restart of the former approach. The problem of the latter approach consists especially in the fact that each run can actually follow a more or less different loading path as the stiffness of the structure is changing with the discretization.

*Daniel Rypl
2005-12-03*