**Are you an EPFL student looking for a semester project?**

Work with us on data science and visualisation projects, and deploy your project as an app on top of GraphSearch.

Publication# Object-oriented finite element programming

EPFL thesis

Abstract

New technologies in computer science applied to numerical computations open the door to alternative approaches to mechanical problems using the finite element method. In classical approaches, theoretical developments often become cumbersome and the computer model which follows shows resemblance with the initial problem statement. The first step in the development consists usually in the analysis of the physics of the problem to simulate. The problem is generally described by a set of equations including partial differential equations. This first model is then replaced by successive equivalent or approximated models. The final result consists in a mathematical description of elemental matrices and algorithms describing the matrix form of the problem. The traditional approach consists then in constructing a computer model, generally complex and often quite different from the original mathematical description, thus making further corrections difficult. Therefore, the crucial problem of both the software architecture and the choice of the appropriate programming language is raised. Partially breaking with this approach, we propose a new approach to develop and program finite element formulations. The approach is based on a hybrid symbolic/numerical approach on the one hand, and on a high level software tool, object-oriented programming (supported here by the languages Smalltalk and C++) on the other hand. The aim of this work is to develop an appropriate environment for the algebraic manipulations needed for a finite element formulation applied to an initial boundary value problem, and also to perform efficient numerical computations. The new environment should make it possible to manage al1 the concepts necessary to solve a physical problem: manipulation of partial differential equations, variational formulations, integration by parts, weak forms, finite element approximations… The concepts manipulated therefore remain closely related to the original mathematical framework. The result of these symbolic manipulations is a set of elemental data (mass matrix, stiffness matrix, tangent stiffness matrix,…) to be introduced in a classical numerical code. The object-oriented paradigm is essential to the success of the implementation. In the context of the finite element codes, the object-oriented approach has already proved its capacity to represent and handle complex structures and phenomena. This is confirmed here with the symbolic environment for derivation of finite element formulations in which objects such as expression, integral and variational formulation appear. The link between both the numerical world and the symbolic world is based on an object-oriented concept for automatic programmation of matrix forms derived from the finite element method. As a result, a global environment in which the numerical is capable of evolving, using a language close to the natural mathematical one, is achieved. The potential of the approach is further demonstrated, on the one hand, by the wide range of problems solved in linear mechanics (electrodynamics in 1 and 2D, heat diffusion,…) as well as in nonlinear mechanics (advection dominated 1D problem, Navier Stokes problem), and, on the other hand by the diversity of the formulations manipulated (Galerkin formulations, space-time Galerkin formulations continuous in space and discontinuous in time, generalized Galerkin least-squares formulations).

Official source

This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.

Related concepts

Loading

Related publications

Loading

Related concepts (36)

Finite element method

The finite element method (FEM) is a popular method for numerically solving differential equations arising in engineering and mathematical modeling. Typical problem areas of interest include the tr

Numerical analysis

Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathema

Partial differential equation

In mathematics, a partial differential equation (PDE) is an equation which computes a function between various partial derivatives of a multivariable function.
The function is often thought of as

Related publications (139)

Loading

Loading

Loading

The first goal of this project is to study a reduced order model for the Fluid-Structure Interaction (FSI) problem. We present the assumptions made to achieve the reduced order formulation and its fully discretized numerical scheme. One of the characteristic of the model is that the fluid equation is endowed with a non standard boundary condition called Generalized Robin Boundary Condition (GRBC) which requires some extra regularity of the solution. We study the well-posedness of a Laplacian problem with GRBC and the convergence of the finite element scheme. We numerically solve the latter problem and compare the convergence order obtained with the theoretical results. Then we study the SUPG (streamline/ upwind Petrov/Galerkin) and PSPG (pressure-stabilizing/Petrov-Galerkin) stabilization schemes for incompressible flows. We stabilize the flow equation of the reduced order model and compare the simulation obtained with the use of the finite elements pairs P1-bubble/P1 and P1/P1 with stabilization. Finally, we derive the formulation on a reference domain of the boundary term for the reduced order model; moreover, by introducing a symmetric affine transformation we write explicitly its affine decomposition. For all the computation we use the C++ library LifeV; the meshes used are generated by means of the Gmsh library.

2013This thesis is devoted to the derivation of error estimates for partial differential equations with random input data, with a focus on a posteriori error estimates which are the basis for adaptive strategies. Such procedures aim at obtaining an approximation of the solution with a given precision while minimizing the computational costs. If several sources of error come into play, it is then necessary to balance them to avoid unnecessary work. We are first interested in problems that contain small uncertainties approximated by finite elements. The use of perturbation techniques is appropriate in this setting since only few terms in the power series expansion of the exact random solution with respect to a parameter characterizing the amount of randomness in the problem are required to obtain an accurate approximation. The goal is then to perform an error analysis for the finite element approximation of the expansion up to a certain order. First, an elliptic model problem with random diffusion coefficient with affine dependence on a vector of independent random variables is studied. We give both a priori and a posteriori error estimates for the first term in the expansion for various norms of the error. The results are then extended to higher order approximations and to other sources of uncertainty, such as boundary conditions or forcing term. Next, the analysis of nonlinear problems in random domains is proposed, considering the one-dimensional viscous Burgers' equation and the more involved incompressible steady-state Navier-Stokes equations. The domain mapping method is used to transform the equations in random domains into equations in a fixed reference domain with random coefficients. We give conditions on the mapping and the input data under which we can prove the well-posedness of the problems and give a posteriori error estimates for the finite element approximation of the first term in the expansion. Finally, we consider the heat equation with random Robin boundary conditions. For this parabolic problem, the time discretization brings an additional source of error that is accounted for in the error analysis. The second part of this work consists in the analysis of a random elliptic diffusion problem that is approximated in the physical space by the finite element method and in the stochastic space by the stochastic collocation method on a sparse grid. Considering a random diffusion coefficient with affine dependence on a vector of independent random variables, we derive a residual-based a posteriori error estimate that controls the two sources of error. The stochastic error estimator is then used to drive an adaptive sparse grid algorithm which aims at alleviating the so-called curse of dimensionality inherent to tensor grids. Several numerical examples are given to illustrate the performance of the adaptive procedure.

Mathematical and numerical aspects of viscoelastic flows are investigated here. Two simplified mathematical models are considered. They are motivated by a splitting algorithm for solving viscoelastic flows with free surfaces. The first model is a simplified Oldroyd-B model. Existence on a fixed time interval is proved in several Banach spaces provided the data are small enough. Short time existence is also proved for arbitrarily large data in Hölder spaces for the time variable. These results are based on the maximal regularity property of the Stokes operator and on the analycity behavior of the corresponding semi-group. A finite element discretization in space is then proposed. Existence of the numerical solution is proved for small data, as well as a priori error estimates, using an implicit function theorem framework. Then, the extension of these results to a stochastic simplified Hookean dumbbells model is discussed. Because of the presence of the Brownian motion, existence in a fixed time interval, provided the data are small enough, is proved only in some of the Banach spaces considered previously. The dumbbells' elongation is split in two parts, one satisfying a standart stochastic differential equation, the other satisfying a partial differential equation with a stochastic source term. A finite element discretization in space is also proposed. Existence of the numerical solution is proved for small data, as well as a priori error estimates. A numerical algorithm for solving viscoelastic flows with free surfaces is also described. This algorithm is based on a splitting method in time and two different meshes are used for the space discretization. Convergence of the numerical model is checked for the pure extensional flow and the filling of a pipe. Then, numerical results are reported for the stretching of a filament and for jet buckling.