software library

Software library
Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 09/01/13
  • Minor correction: 12/09/13

Topological smoothing : method for smoothing 2D and 3D objects

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System:
  • Current version: 1.0 - 2004
  • License(s): CeCILL
  • Status: stable release
  • Support: maintained, ongoing development
  • Designer(s): Michel Couprie
  • Contact designer(s): coupriem @ esiee.fr
  • Laboratory, service:

 

General software features

This software implements a method for smoothing 2D and 3D objects in binary images while preserving topology. Here, objects are defined as sets of grid points, and topology preservation is ensured by the exclusive use of homotopic transformations defined in the framework of digital topology. Smoothness is obtained by the use of morphological openings and closings by metric discs or balls of increasing radius, in the manner of alternating sequential filters from the field of mathematical morphology.

Context in which the software is used

This software has been built for finding and validating the results of the paper [CB04].

Publications related to the software

[CB04] Michel Couprie, G. Bertrand: "Topology preserving alternating sequential filter for smoothing 2D and 3D objects", Journal of Electronic Imaging, Vol. 13, No. 4, pp. 720-730, 2004.

Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 02/09/10
  • Minor correction: 12/09/13

PINK : image processing library

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.

 

General software features

Here is the list of its main functions:

  • arithmetic operators
  • format and type conversion
  • mathematical morphology
  • digital connectivity
  • digital topology (binary)
  • digital topology (gray scale)
  • orders topology
  • geometrical operators
  • graphic primitives
  • histogram-based operators
  • signal processing
  • statistics
  • three-dimensional meshing
  • interactive operators

The library has more than 359 operators.

Context in which the software is used

Used for teaching and research in the team A3Si of the LIGM and at the ESIEE.

Publications related to the software
Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 17/05/10
  • Minor correction: 03/07/12

MLV : a simplified multimedia library

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System:
  • Current version: 0.4 - 14 april 2010
  • License(s): GPL
  • Status: stable release
  • Support: maintained, ongoing development
  • Designer(s): Adrien Boussicault, Marc Zipstein
  • Contact designer(s): adrien.boussicault(@)univ-mlv.fr
  • Laboratory, service:

 

General software features

The MLV library is a simplified multimedia library. This library has been designed for beginner students in C, and it allows to add graphical and audio effects on the student program. The library is useful to:

  • draw figures, display text and dialog boxes,
  • display images,
  • play sounds and musics,
  • catch mouse and keyboard events,
  • get informations from dialog boxes.

These tools are simplified interfaces of the SDL librairy. If you are not a C beginner, better use the SDL librairy (SDL, SDL_gfx, SDL_sound, SDL_ttf).

The MLV library is portable, and can be compiled and executed on Linux, Macintosh and Windows.

Context in which the software is used

Theaching first university level in informatics, C iniciation.

Publications related to the software
Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 12/04/10
  • Minor correction: 12/09/13

Topological watershed : n-dimensional image segmentation

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System:
  • Current version: 1.0 (stable) - juillet 2007
  • License(s): CeCILL
  • Status: stable release
  • Support: maintained, ongoing development
  • Designer(s): G. Bertrand, M. Couprie, J. Cousty, L. Najman
  • Contact designer(s): coupriem @ esiee.fr
  • Laboratory, service:

 

General software features

Watershed is the fundamental tool of mathematical morphology for image segmentation. The authors of this software have proposed a formal definition of this notion in discrete spaces. In this framework, the watershed becomes a transformation that preserves some topological characteristics of an image. This leads to a series of fundamental properties which had never been established previously.

In order to permit its practical application, we propose quasi-linear algorithms for the topological watershed, which are implemented in this software.

Context in which the software is used

Used for the research of the team, and also in several research projects, see http://www.esiee.fr/~info/a2si/projets.html.

Publications related to the software
Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 26/03/10
  • Minor correction: 12/09/13

Cross-Section topology : topology for image processing

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System:
  • License(s): CeCILL
  • Status: stable release
  • Support: maintained, no ongoing development
  • Designer(s): Michel Couprie, Francisco Nivando Bezerra, Gilles Bertrand
  • Contact designer(s): coupriem @ esiee.fr
  • Laboratory, service:

 

General software features

We extended the topological concepts of the 2D binary images to the 2D graylevel images, by considering all the cross-sections (thresholds) of the images. This led us to propose new methods for segmenting, filtering, and enhancing grayscale images. These methods are based on operators that either preserve or selectively modify topology [CBB01,BEC97].

Context in which the software is used

Used for the research of the team, and also in several research projects, see http://www.esiee.fr/~info/a2si/projets.html.

Publications related to the software

[CBB01] M. Couprie, F.N. Bezerra, and G. Bertrand: "Topological operators for grayscale image processing", Journal of Electronic Imaging, Vol. 10, Nb. 4, pp. 1003-1015, 2001.

[BEC97] G. Bertrand, J.C. Everat, M. Couprie: "Image segmentation through operators based upon topology", Journal of Electronic Imaging, Vol. 6, Nb. 4, pp. 395-405, 1997.

More references at: http://www.esiee.fr/~info/gt/GT_biblio.html

Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 12/03/10
  • Minor correction: 12/09/13

Critical kernels : parallel thinning and skeletons in any dimension

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System:
  • Current version: 1.0 (stable) - juillet 2007
  • License(s): CeCILL
  • Status: stable release
  • Support: maintained, ongoing development
  • Designer(s): Gilles Bertrand, Michel Couprie
  • Contact designer(s): coupriem @ esiee.fr
  • Laboratory, service:

 

General software features

Critical kernels provide a sound basis for the study of operators which remove a whole subset of an object (and not only a simple point) while preserving its topology.

Using this notion we have study several parallel thinning algorithms in 2D and 3D, they are programmed in C and described in articles [BC06a,BC06b,BC06c] (see below).

We also have shown that critical kernels are a non-trivial generalization of all previous related notions, in particular the notions of minimal non-simple sets and P-simple points.

Context in which the software is used

Used for the research of the team, and also in several research projects, see http://www.esiee.fr/~info/a2si/projets.html.

Publications related to the software
  • [BC06b] G. Bertrand and M. Couprie: "New 2D parallel thinning algorithms based on critical kernels", Combinatorial Image Analysis, Lecture Notes in Computer Science, Vol. 4040, pp. 45-59, Springer, 2006.
  • [BC06c] G. Bertrand and M. Couprie: "New 3D parallel thinning scheme based on critical kernels", Discrete geometry for computer imagery, Lecture Notes in Computer Science, Vol. 4245, pp. 580-591, Springer, 2006.
  • [CSB06] M. Couprie and A. Vital Saúde and G. Bertrand: "Euclidean homotopic skeleton based on critical kernels", Procs. SIBGRAPI, IEEE CS Press, pp. 307-314, 2006.
  • [CB08b] M. Couprie and G. Bertrand: "New characterizations of simple points, minimal non-simple sets and P-simple points in 2D, 3D and 4D discrete spaces", Discrete geometry for computer imagery, Lecture Notes in Computer Science, Vol. 4992, pp. 105-116, Springer, 2008.
  • More references at: http://www.esiee.fr/~info/ck/CK_biblio.html
Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 15/02/10
  • Minor correction: 15/02/10

libcrn : image processing toolkit

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.

 

General software features

libcrm is an image processing toolkit.

Langage

  • C++
  • using shared pointers (garbage collector)
  • strict object oriented paradigm
  • data saved in XML files

Image processing

Generic processings

  • Matricial convolution
  • Morphology
  • Differential computation (PDE)
  • Colour formats (RGB, L*a*b*, HSV…)
  • etc.

Document images

  • Segmentation
  • Binarisation
  • Pattern recognition
  • etc.

Mathematics

  • Classification and clustering
  • Hidden Markov models
  • Numerical computation
  • Matricial computation
  • Descriptive statistics

GUI

  • libcrn is packaged with a Gtk+ widget library allowing easy creation of graphical user interfaces.
  • A demo is also provided. It allows to quickly test many features of the library.
Context in which the software is used

libcrn is used to create document image processing algorithms.

The library is used in sheer research contexts as well as to create complete software with a GUI (e.g.: image mode search engine, OCR, etc.).

Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 13/02/10
  • Minor correction: 09/01/13
  • Index card author: Yves Renard (ICJ)
  • Theme leader : Dirk Hoffmann (Centre de Physique des Particules de Marseille (CPPM-IN2P3))

GetFem++ : finite element C++ library interfaced with scilab-python and matlab

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System:
  • Current version: 4.2 - 02 aout 2012
  • License(s): LGPL
  • Status: validated (according to PLUME), stable release
  • Support: maintained, ongoing development
  • Designer(s): Yves Renard, Julien Pommier
  • Contact designer(s): Yves.Renard@insa-lyon.fr
  • Laboratory, service:

 

General software features

Getfem++ is basically a generic C++ finite element library which aims to offer the widest range of finite element methods and elementary matrix computations for the approximation of linear or non-linear problems, possibly in hybrid form and possibly coupled. The dimension of the problem is arbitrary and may be a parameter of the problem. Getfem++ offers a description of models in the form of bricks whose objective is to enable reusability of the approximations made. The system of bricks, now mature, is used to assemble components such as standard models (elasticity in small and large deformations, Helmholtz problem, scalar elliptic problem ...) to components representing the boundary conditions (Neumann, Dirichlet, Fourier-Robin, contact, friction...), also to components representing constraints (incompressibility, removing rigid motions ...) and to coupling components for coupled models.

Two strong points of Getfem++ are structural mechanics (in particular contact mechanics) and taking into account discontinuities by fictitious domain methods of XFEM type (eg cracking).

It is proposed three interfaces (with Scilab, Matlab and Python) that allow to use of the main features of the software without the need of C++ programming and allowing graphical post-processing.

Getfem++ offers a complete separation between the integration methods (exact or approximated), geometric transformations (linear or not) and finite element methods of arbitrary degree. The library can help to write more integrated finite element codes in relieving the basic technical calculations.

Examples of families of finite elements available are: Pk on simplices of arbitrary degree and dimension, Qk on parallelepipeds, P1, P2 with bubble functions, Hermite elements, Argyris element, HCT and FVS, elements with hierarchical basis (for multigrid methods for instance), discontinuous Pk and Qk, XFEM methods, vector elements (RT0, Nédélec) ...

The addition of a new finite element method is relatively easy. A description on the reference element must be provided (in most cases it is the description of the basic functions and nothing more). Extensions are provided to describe Hermite elements, piecewise polynomial or non-polynomial elements, vector elements and XFEM.

The library also includes the usual tools for finite elements such as assembly procedures for classical PDEs, interpolation methods, the calculation of norms, mesh operations (including automatic refinement), management of boundary conditions, post-treatment with a tool to make arbitrary cuts ...

Getfem++ can be used to construct very generic finite element codes, where finite element methods, integration methods and the dimension of the problem are the parameters that can be changed very easily. This allows a wide range of experiments. Many examples are provided.

Getfem++ has no meshing capabilities (with the exception of the regular mesh generation and also a small attempt not yet usable). It is therefore necessary to import meshes. The formats currently supported are GID, GMSH and EMC2.

Context in which the software is used

Getfem++ is a laboratory for finite element methods which allows to build very quickly some new methods and allows to test a wide field of applications and types of basic elements.
The brick system also allows to build at a lower cost approximation of linear or non linear complex PDE systems needed for instance by the modeling of multiphysics problems. The main feature of the library is available via the Scilab, Python or Matlab interfaces.

Publications related to the software

Personal publications linked to Getfem :
http://math.univ-lyon1.fr/~renard/publis.html

Example of publication from a Getfem user :
A. Andreykiv, D. J. Rixen, Numerical modelling of electromechanical coupling using fictitious domain and level set methods. Int. J. Numer. Meth. Engng 2009 (http://www3.interscience.wiley.com/journal/1224409...).

Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 19/12/09
  • Minor correction: 22/03/10

Proland : an OpenGL/C++ library for the real-time rendering and editing of large scale natural scenes

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System:
  • Current version: 2.1 - 20/07/2009
  • License(s): source code not public
  • Status: under development
  • Support: maintained, ongoing development
  • Designer(s): Eric Bruneton, Antoine Begault
  • Contact designer(s): Eric.Bruneton@inria.fr
  • Laboratory, service:

 

General software features
  • real-time rendering of multi-resolution terrains (up to a whole planet)
  • real-time rendering and editing of vector data (representing for instance roads or rivers)
  • real-time rendering of planetary atmospheres and clouds (from all viewpoints from ground to space)
  • rendering of forests using billboards

Proland can render very large natural scenes, at all scales and from all viewpoints from ground to space. The landscape data is loaded on the fly based on the current viewpoint (only the data needed for the current viewpoint is stored in memory, at the appropriate resolution). The landscape data can be procedurally modified on the fly. For instance the shape and texture of a terrain can be modified based on vector data representing roads or rivers.

Proland is based on a task graph and a cache manager taking advantage of multi-processors, supporting data prefetching to reduce disk latencies, and automatically managing the dependencis betwen tasks (procedural data are automatically recomputed when their input data change).

Context in which the software is used

Proland is used internally for research work about natural scenes (rendering, modelisation, animation). It is also used externally in two industrial projects (planetarium and flight simulator).

Publications related to the software

Scalable Real-Time Animation of Rivers
Yu Qizhi, Neyret Fabrice, Bruneton Éric, Holzschuch Nicolas
Comput. Graph. Forum, 28 (2), 239-248, 2009. Special Issue: Eurographics 2009.

Precomputed Atmospheric Scattering
Bruneton Éric, Neyret Fabrice
Comput. Graph. Forum, 27 (4), 1079-1086, 2008. Special Issue: Eurographics Symposium on Rendering 2008.

Real-time rendering and editing of vector-based terrains
Bruneton Éric, Neyret Fabrice
Comput. Graph. Forum, 27 (2), 311-320, 2008. Special Issue: Eurographics 2008.

Real-time realistic illumination and shading of stratiform clouds
Bouthors Antoine, Neyret Fabrice, Lefebvre Sylvain
Eurographics Workshop on Natural Phenomena - september 2006

Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 02/07/09
  • Minor correction: 07/09/11

FEEL++ : a library to solve partial differential equations in 1D, 2D and 3D using h/p Galerkin Methods

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System:
  • Current version: 0.9.23 - March 27 2011
  • License(s): GPL, LGPL
  • Status: stable release, under development
  • Support: maintained, ongoing development
  • Designer(s): Christophe Prud'homme
  • Contact designer(s): christophe.prudhomme@ujf-grenoble.fr
  • Laboratory, service: EPFL, Universidad de Coimbra

 

General software features

General Description

FEEL++ (Finite Element Embedded Library in C++) is a C++ library for partial differential equation solves using generalized Galerkin methods i.e. fem, hp/fem, spectral methods. The main features are:

  • handles 1D, 2D and 3D geometries
  • supports various geometric entities: simplices and hypercubes
  • supports various polynomial sets:
    • Lagrange (continuous,discontinuous,all dimensions,all interpolation point sets)
    • Dubiner (discontinuous), boundary adapted(continuous)
    • Legendre(discontinuous), boundary adapted(continuous)
  • provides functional mathematical concepts : operators, function spaces, elements of function spaces...
  • supports continuous and discontinuous Galerkin methods
  • provides a DSEL in C++ called FEEL++ for variational formulations, integration and projection

 

Examples

1. Computing $\int_\Omega x^2+y^2+z^2$ :

/*
* Compute \int f where f= x^2 + y^2 + z^2 with a quadrature that integrates exactely second order polynomials
*/
double local_intf = integrate( elements(mesh), _Q<2>(), Px()*Px() + Py()*Py() + Pz()*Pz() ).evaluate()(0,0);

2. Assembling the laplacian using either weak or strong handling of Dirichlet boundary conditions

space_ptrtype Xh = space_type::New( mesh );
element_type u( Xh, "u" );
element_type v( Xh, "v" );
sparse_matrix_ptrtype D( M_backend->newMatrix( Xh, Xh ) );
form2( Xh, Xh, D, _init=true ) = integrate( elements(mesh), _Q<2*(Order-1)>(),
nu*gradt(u)*trans(grad(v)) );
// weak Dirichlet (Nitsche formulation)
form2( Xh, Xh, D ) +=
integrate( markedfaces(mesh,1), _Q<2*Order>(),
-(gradt(u)*N())*id(v) -(grad(v)*N())*idt(u) +penaldir*id(v)*idt(u)/hFace()) +
integrate( markedfaces(mesh,3), _Q<2*Order>(),
-(gradt(u)*N())*id(v) -(grad(v)*N())*idt(u) +penaldir*id(v)*idt(u)/hFace());
D->close();

Requirements

Software

Libraries

  • Boost >= 1.37
  • Mpi (optional)
  • Petsc >= 2.3.3 (optional)
  • Trilinos (optional)

Pre/Post-Processing

Pre-Processing formats

  • GAMBIT neutral
  • Gmsh

Post-processing supported formats

  • EnSight (use then ensight and/or paraview for visualisation)
  • Gmsh
Context in which the software is used

Distributions to which Life is integrated to

Plateforms :

All machines UNIX/Linux 32 ou 64b, MacOS X and Windows(cygwin)

Related software

ParaView
Free software for parallel scientific visualisation
http://www.paraview.org

Gmsh
Free software for CAO and mesh generation
http://geuz.org/gmsh/

Publications related to the software

Publications

Publications about FEEL++

ICIAM Mini Symposium on modern scientific computing

We present a brief overview of Life, a unified framework for finite element and spectral element methods in 1D, 2D and 3D in C++. First, we describe some basic principles, then we focus on the two cornerstones of the library, he polynomial library and FEEL++, a \cpp embedded language designed for partial differential equations. The applications range is potentially quite large; at the moment Life is essentially used for the developement of new numerical methods and the exhaustive comparisons between standard ones e.g. high order methods, stabilisation methods.

@INPROCEEDINGS{prudhomme07:_life,
author = {Christophe Prud'homme},
title = {Life: A modern and unified C++ implementation of finite-element and spectral-elements methods in 1D, 2D and 3D: overview and applications},
booktitle = {ICIAM},
year = {2007},
note = {accepted}
}

Para'06 article: an overview (10 pages) of Life

This article presents an overview of a unified framework for finite element and spectral element methods in 1D, 2D and 3D in C++ called Life. The objectives of this framework are quite ambitious and could be expressed in various ways:
(i) the creation of a versatile mathematical kernel allowing for solving easily problems using different techniques thus allowing testing and comparing methods, e.g. cG versus dG,
(ii) the creation of a small and manageable library which shall nevertheless encompass a wide range of numerical methods and techniques and
(iii) build mathematical software that follows closely the mathematical abstractions associated with the partial differential equations solved.

@INPROCEEDINGS{prudhomme06:_life,
author = {Christophe Prud'homme},
title = {Life: Overview of a Unified C++ Implementation of the Finite and Spectral Element Methods in 1D, 2D and 3D},
booktitle = {Workshop On State-Of-The-Art In Scientific And Parallel Computing},
year = {2006},
series = {Lecture Notes in Computer Science},
pages = {10},
month = {dec},
publisher = {Springer-Verlag},
}

The paper on Life DSEL for variational formulations

In this article, we present a domain specific embedded language in C++ that can be used in various contexts such as numerical projection onto a functional space, numerical integration, variational formulations and automatic differentiation. Albeit these tools operate in different ways, the language overcomes this difficulty by decoupling
expression constructions from evaluation. The language is implemented using expression templates and meta-programming techniques and uses various Boost libraries. The language is exercised on a number of
non-trivial examples and a benchmark presents the performance behavior on a few test problems.

@ARTICLE{prudhomme05:_domain_specif_embed_languag_c,
author = {Christophe Prud'homme},
title = {A domain specific embedded language in C++ for automatic differentiation, projection, integration and variational formulations},
journal = {Scientific Programming},
year = {2006},
volume = {14},
pages = {81-110},
number = {2},
url = {\url{http://iospress.metapress.com/link.asp?id=8xwd8r59hg1hmlcl}}
}

Publications using Life

Life and Fluid Structure Interaction

Accuracy is critical if we are to trust simulation predictions. In settings such as fluid-structure interaction it is all the more important to obtain reliable results to understand, for example, the impact of pathologies on blood flows in the cardio-vascular system. In this paper, we propose a computational strategy for simulating fluid structure interaction using high order methods in space and time.

First, we present the mathematical and computational core framework, Life, underlying our multi-physics solvers. Life is a versatile library allowing for 1D, 2D and 3D partial differential solves using h/p type Galerkin methods, continuous as well as discontinuous, in sequential and parallel settings. Then, we briefly describe the handling of high order geometry and the structure solver. Next we outline the high-order space-time approximation of the incompressible Navier-Stokes equations with an emphasis on the algebraic system and the preconditioning strategies. Numerical results are displayed to show the optimality of the preconditioner with respect to the discretization order in the Stokes case. Finally, we present the high-order rbitrary Lagrangian Eulerian (ALE) framework in which we solve the fluid-structure interaction problem as well as some initial results.

@ARTICLE{pena08:_const_of_high_order_fluid,
author = {Gon\c {c}alo {P}ena and {C}hristophe {P}rud'homme},
title = {Construction of a High Order Fluid-Structure Interaction Solver},
journal = {JOURNAL OF COMPUTATIONAL AND APPLIED MATHEMATICS},
year = {2008},
pages = {10},
note = {Accepted}
}

B. Stamm Phd. Thesis

@PHDTHESIS{Stamm2008,
author = {Stamm, Benjamin},
title = {Stabilization strategies for discontinuous {G}alerkin methods},
year = {2008},
address = {Lausanne},
affiliation = {EPFL},
details = {http://infoscience.epfl.ch/record/124839},
oai-id = {oai:infoscience.epfl.ch:thesis-4135},
oai-set = {thesis},
publisher = {EPFL},
status = {SUBMITTED},
thesis-note = {Thèse Ecole polytechnique fédérale de Lausanne EPFL, no 4135 (2008), Faculté des sciences de base SB, Programme doctoral Mathématiques, Institut d'analyse et calcul scientifique IACS (Chaire de modélisation et calcul scientifique CMCS). Dir.: Alfio Quarteroni, Erik Burman},
unit = {CMCS},
url = {http://library.epfl.ch/theses/?nr=4135}
}

C. Winkelmann Phd. Thesis

In the present work, we investigate mathematical and numerical aspects of interior penalty finite element methods for free surface flows. We consider the incompressible Navier-Stokes equations with variable density and viscosity, combined with a front capturing model using the level set method. We formulate interior penalty finite
element methods for both the Navier-Stokes equations and the level set advection equation. For the two-fluid Stokes equations, we propose and analyze an unfitted finite element scheme with interior penalty.
Optimal a priori error estimates for the velocity and the pressure are proved in the energy norm. A preconditioning strategy with adaptive reuse of incomplete factorizations as preconditioners for Krylov subspace methods is introduced and applied for solving the linear systems. Different and complementary solutions for reducing the matrix assembly time and the memory consumption are proposed and tested, each of which is applicable in general in the context of either multiphase flow or interior penalty stabilization. As level set reinitialization method, we apply a combination of the interface local projection and a fast marching scheme. We provide for the latter a reformulation of the distance computation algorithm on unstructured simplicial meshes in any spatial dimension, allowing for both an efficient implementation and geometric insight. We present and discuss numerical solutions of reference problems for the one-fluid Navier-Stokes equations and for the level set advection problem. Solutions of benchmark problems in two and three dimensions involving one or two fluids are then approximated, and the results are compared to literature values. Finally, we describe software design techniques and abstractions for the efficient and general implementation of the applied methods.

@PHDTHESIS{Winkelmann2007,
author = {Winkelmann, Christoph},
title = {Interior penalty finite element approximation of {N}avier-{S}tokes equations and application to free surface flows},
year = {2007},
address = {Lausanne},
affiliation = {EPFL},
details = {http://infoscience.epfl.ch/record/112720},
documenturl = {http://library.epfl.ch/theses/?nr=3971},
keywords = {Navier-Stokes equations; free surface; finite elements; interior penalty stabilization; unfitted elements; front capturing; level set method;
reinitialization; preconditioning},
oai-id = {oai:infoscience.epfl.ch:thesis-3971},
oai-set = {thesis; thesis:fulltext; fulltext},
pagecount = {147 p.},
publisher = {EPFL},
status = {PUBLISHED},
thesis-note = {Thèse sciences Ecole polytechnique fédérale de Lausanne EPFL, no 3971 (2007), Faculté des sciences de base SB, Section de mathématiques, Programme doctoral Mathématiques, Institut d'analyse et calcul scientifique IACS (Chaire de modélisation et calcul scientifique CMCS). Dir.: Alfio Quarteroni},
unit = {CMCS},
url = {http://library.epfl.ch/theses/?nr=3971}
}

Syndicate content