An Application Framework Architecture For Fem And Other Related Solvers

Santiago A. Urquiza, Marcelo J. Venere

Abstract


The basics aspects of the underlying software architecture of an Application Framework for the
solution of discrete methods comprising linear and nonlinear system of algebraic equations are presented. This
architecture allows the easily implementation of numerical solvers for methods like FEM, FDM, FVM, as well
as solvers for others discrete methods such as Electrical and Neural Networks, etc., either for steady state or
transient problems. Furthermore, it is possible to implement any method where the resulting system of
algebraic equations can be build trough successive contributions of Elements -viewed as operators acting on
the global matrix summing to a subset of coefficients-. The versatility of the Application Framework is based
on the capabilities of a universal symbolic and numeric assembler that virtually operates with elements of any
type and with an arbitrary number of nodal degrees of freedom. This is also possible due to the encapsulation
of element details behind generic standardized interfaces. The design is intended to achieve high rates of
reuse, specially for the main program being in addition, compliant with the principle of Inversion of Control.
The only task that is expected to be performed by the user, in order to obtain an actual executable program, is
to code the Elemental Matrix calculation procedure and its coupling structure. Some illustrative examples of
the implementation of complex problems are provided. Its is concluded that the architecture presented here
provides great flexibility on implementing and rapid prototyping special purpose solvers, with the considerable
advantage of reusing practically all existing routines without introducing any changes in the main program.

Full Text:

PDF



Asociación Argentina de Mecánica Computacional
Güemes 3450
S3000GLN Santa Fe, Argentina
Phone: 54-342-4511594 / 4511595 Int. 1006
Fax: 54-342-4511169
E-mail: amca(at)santafe-conicet.gov.ar
ISSN 2591-3522