We outline an approach for extending procedural finite-element software components using generic programming. A layer of generic software components consisting of C++ containers and algorithms is used for parallelization of the finite-element solver and for solver coupling in multi-physics applications. The advantages of generic programming in connection with finite-element codes are discussed and compared with those of object-oriented programming. The use of the proposed generic programming techniques is demon-strated in a tutorial fashion through basic illustrative examples as well as code excerpts from a large-scale, finite-element program for serial and parallel computing platforms. Key words: finite elements, parallelization, generic p...
Tremendous computing power is now available for relatively low cost. Desktop and notebook computers ...
An overview of the software design and data abstraction decisions chosen for deal.II, a general purp...
The paper considers three main software technologies for implementing parallelism: MPI, .NET and Jav...
Generic programming techniques for parallelizing and extending procedural finite element program
This article considers the development of a reusable object-oriented array library, as well as the u...
The authors have used object oriented programming methods to develop finite element programs. This p...
The objective of this work is to present the design of finite element software using an object-orien...
The finite element method is by its nature very modular. Object oriented programming enables full ad...
Developments in computers mean that parallel and distributed computing are now mainstream elements, ...
This documentation describes the different finite element methods and cubature formulas available in...
An object-oriented approach is used to implement a fully interactive finite element program. The pro...
A set of object oriented tools is presented which, when combined, yield an efficient parallel finite...
One of the concerns often expressed about the use of object oriented methods in numerical software i...
The conventional wisdom in the scientific computing community is that the best way to solve large-sc...
peer reviewedThe finite element code LAGAMINE developed since 1982 has been adapted to numerous fini...
Tremendous computing power is now available for relatively low cost. Desktop and notebook computers ...
An overview of the software design and data abstraction decisions chosen for deal.II, a general purp...
The paper considers three main software technologies for implementing parallelism: MPI, .NET and Jav...
Generic programming techniques for parallelizing and extending procedural finite element program
This article considers the development of a reusable object-oriented array library, as well as the u...
The authors have used object oriented programming methods to develop finite element programs. This p...
The objective of this work is to present the design of finite element software using an object-orien...
The finite element method is by its nature very modular. Object oriented programming enables full ad...
Developments in computers mean that parallel and distributed computing are now mainstream elements, ...
This documentation describes the different finite element methods and cubature formulas available in...
An object-oriented approach is used to implement a fully interactive finite element program. The pro...
A set of object oriented tools is presented which, when combined, yield an efficient parallel finite...
One of the concerns often expressed about the use of object oriented methods in numerical software i...
The conventional wisdom in the scientific computing community is that the best way to solve large-sc...
peer reviewedThe finite element code LAGAMINE developed since 1982 has been adapted to numerous fini...
Tremendous computing power is now available for relatively low cost. Desktop and notebook computers ...
An overview of the software design and data abstraction decisions chosen for deal.II, a general purp...
The paper considers three main software technologies for implementing parallelism: MPI, .NET and Jav...