-
LEoPart: a particle library for FEniCS
Authors:
Jakob M. Maljaars,
Chris N. Richardson,
Nathan Sime
Abstract:
This paper introduces LEoPart, an add-on for the open source finite element software library FEniCS to seamlessly integrate Lagrangian particle functionality with (Eulerian) mesh-based finite element (FE) approaches. LEoPart - which is so much as to say: `Lagrangian-Eulerian on Particles' - contains tools for efficient, accurate and scalable advection of Lagrangian particles on arbitrary polyhedra…
▽ More
This paper introduces LEoPart, an add-on for the open source finite element software library FEniCS to seamlessly integrate Lagrangian particle functionality with (Eulerian) mesh-based finite element (FE) approaches. LEoPart - which is so much as to say: `Lagrangian-Eulerian on Particles' - contains tools for efficient, accurate and scalable advection of Lagrangian particles on arbitrary polyhedral meshes. In addition, LEoPart comes with several projection operators for exchanging information between the scattered particles and the mesh and \textit{vice versa}. These projection operators are based on a variational framework, which allows extension to high-order accuracy. In particular, by implementing a dedicated PDE-constrained particle-mesh projection operator, LEoPart provides all the tools for diffusion-free advection, while simultaneously achieving optimal convergence and ensuring conservation of the projected particle quantities on the underlying mesh. A range of numerical examples that are prototypical to passive and active tracer methods highlight the properties and the parallel performance of the different tools in LEoPart. Finally, future developments are identified. The source code for LEoPart is actively maintained and available under an open source license at https://bitbucket.org/jakob_maljaars/leopart.
△ Less
Submitted 29 May, 2020; v1 submitted 23 December, 2019;
originally announced December 2019.
-
Abstractions and automated algorithms for mixed domain finite element methods
Authors:
Cécile Daversin-Catty,
Chris N. Richardson,
Ada J. Ellingsrud,
Marie E. Rognes
Abstract:
Mixed dimensional partial differential equations (PDEs) are equations coupling unknown fields defined over domains of differing topological dimension. Such equations naturally arise in a wide range of scientific fields including geology, physiology, biology and fracture mechanics. Mixed dimensional PDEs are also commonly encountered when imposing non-standard conditions over a subspace of lower di…
▽ More
Mixed dimensional partial differential equations (PDEs) are equations coupling unknown fields defined over domains of differing topological dimension. Such equations naturally arise in a wide range of scientific fields including geology, physiology, biology and fracture mechanics. Mixed dimensional PDEs are also commonly encountered when imposing non-standard conditions over a subspace of lower dimension e.g. through a Lagrange multiplier. In this paper, we present general abstractions and algorithms for finite element discretizations of mixed domain and mixed dimensional PDEs of co-dimension up to one (i.e. nD-mD with |n-m| <= 1). We introduce high level mathematical software abstractions together with lower level algorithms for expressing and efficiently solving such coupled systems. The concepts introduced here have also been implemented in the context of the FEniCS finite element software. We illustrate the new features through a range of examples, including a constrained Poisson problem, a set of Stokes-type flow models and a model for ionic electrodiffusion.
△ Less
Submitted 4 November, 2019;
originally announced November 2019.
-
Scalable computation of thermomechanical turbomachinery problems
Authors:
Chris N. Richardson,
Nathan Sime,
Garth N. Wells
Abstract:
A commonly held view in the turbomachinery community is that finite element methods are not well-suited for very large-scale thermomechanical simulations. We seek to dispel this notion by presenting performance data for a collection of realistic, large-scale thermomechanical simulations. We describe the necessary technology to compute problems with $O(10^7)$ to $O(10^9)$ degrees-of-freedom, and em…
▽ More
A commonly held view in the turbomachinery community is that finite element methods are not well-suited for very large-scale thermomechanical simulations. We seek to dispel this notion by presenting performance data for a collection of realistic, large-scale thermomechanical simulations. We describe the necessary technology to compute problems with $O(10^7)$ to $O(10^9)$ degrees-of-freedom, and emphasise what is required to achieve near linear computational complexity with good parallel scaling. Performance data is presented for turbomachinery components with up to 3.3 billion degrees-of-freedom. The software libraries used to perform the simulations are freely available under open source licenses. The performance demonstrated in this work opens up the possibility of system-level thermomechanical modelling, and lays the foundation for further research into high-performance formulations for even larger problems and for other physical processes, such as contact, that are important in turbomachinery analysis.
△ Less
Submitted 15 November, 2018; v1 submitted 26 April, 2018;
originally announced April 2018.
-
Containers for portable, productive and performant scientific computing
Authors:
Jack S. Hale,
Lizao Li,
Chris N. Richardson,
Garth N. Wells
Abstract:
Containers are an emerging technology that hold promise for improving productivity and code portability in scientific computing. We examine Linux container technology for the distribution of a non-trivial scientific computing software stack and its execution on a spectrum of platforms from laptop computers through to high performance computing (HPC) systems. We show on a workstation and a leadersh…
▽ More
Containers are an emerging technology that hold promise for improving productivity and code portability in scientific computing. We examine Linux container technology for the distribution of a non-trivial scientific computing software stack and its execution on a spectrum of platforms from laptop computers through to high performance computing (HPC) systems. We show on a workstation and a leadership-class HPC system that when deployed appropriately there are no performance penalties running scientific programs inside containers. For Python code run on large parallel computers, the run time is reduced inside a container due to faster library imports. The software distribution approach and data that we present will help developers and users decide on whether container technology is appropriate for them. We also provide guidance for the vendors of HPC systems that rely on proprietary libraries for performance on what they can do to make containers work seamlessly and without performance penalty.
△ Less
Submitted 3 November, 2016; v1 submitted 26 August, 2016;
originally announced August 2016.