next day
all days

View: session overviewtalk overview

09:50-11:00 Session 2: Developments with FEniCS I
Complex Number support in FEniCS
PRESENTER: Igor Baratta

ABSTRACT. In many fields of science and engineering (such as electrodynamics, acoustics, and quantum mechanics), the partial differential equations (PDEs) can be complex-valued. Adding native support to complex-numbers in FEniCS opens up the possibility of large scale solutions to a new class of PDEs.

In this talk, we describe the implemented changes in some of FEniCS core libraries to add support to the solution of complex-valued equations. Much of the development was carried out during the Google Summer of Code 2018 within the frame of the project "Complex Number support in FEniCS".

Finally, we present some examples demonstrating the use of these newly introduced features and we also highlight the impact on the solution of time-harmonic wave problems.

Recent developments in dolfin-adjoint

ABSTRACT. dolfin-adjoint is a python library that enables automatic differentiation and optimization of FEniCS models by deriving and solving the corresponding first and second-order adjoint equations. In the last two years, dolfin-adjoint has been completely rewritten to accommodate the implementation of new features. For instance, we have implemented shape derivatives, which was enabled by a recent extension to UFL [1]. We will present a highlight of the new features in dolfin-adjoint, including deformation vector and strong Dirichlet boundary condition controls. Furthermore, we present the performance of these implementations compared to the theoretical optimum. Lastly, we mention how dolfin-adjoint can be extended to support new operations.

References [1] David A Ham, Lawrence Mitchell, Alberto Paganini, and Florian Wechsung. Automated shape differentiation in the unified form language. arXiv preprint arXiv:1808.08083, 2018.

tIGAr: Isogeometric analysis with FEniCS
PRESENTER: David Kamensky

ABSTRACT. This talk discusses recent work on implementing isogeometric analysis (IGA) using finite element (FE) software from the FEniCS project. The implementation, called tIGAr and documented in [1], retains many of the powerful features that make FEniCS an attractive platform for partial differential equation (PDE)-based analysis. The technical basis for tIGAr is to leverage the fact that spline functions used in IGA can be represented as linear combinations of FE basis functions, so linear systems assembled using FE bases can be transformed to systems involving IGA degrees of freedom, by applying matrices called extraction operators that encode the FE representation of spline basis functions. We use a collection of object-oriented abstractions to separate PDE solution from generation of extraction operators. This permits analysis of many different PDEs on a wide variety of existing spline types and provides an interface to add support for future spline constructions. We review several example applications, including Kirchhoff--Love shell structure dynamics, nonlocal contact mechanics, divergence-conforming IGA of incompressible flow, and fluid--structure interaction. The library source code and various demos are available online [2], and we are open to community feedback or contributions.

References: [1] https://doi.org/10.1016/j.cma.2018.10.002 [2] https://github.com/david-kamensky/tIGAr

11:30-13:00 Session 3: Developments with FEniCS II
hIPPYlib: An Extensible Software Framework for Large-Scale Inverse Problems with Quantified Uncertainties

ABSTRACT. In this talk, we present hIPPYlib (hippylib.github.io), an extensible software framework for the solution of large-scale deterministic and Bayesian inverse problems governed by partial differential equations (PDEs) with possibly infinite-dimensional parameter fields (which are high-dimensional after discretization). hIPPYlib overcomes the prohibitive nature of Bayesian inversion for this class of problems by implementing state-of-the-art scalable algorithms for PDE-based inverse problems that exploit the structure of the underlying operators, notably the Hessian of the log posterior.

hIPPYlib relies on FEniCS, a powerful finite element toolkit, for the discretization of the PDE, and on PETSc for scalable and efficient linear algebra operations and solvers. It also relies on FEniCS for its symbolic differentiation capability to automatically and efficiently generate the variational forms for the adjoint and incremental PDE problems needed to facilitate efficient gradient and Hessian evaluations.

The key property of hIPPYlib is that solution of the inverse problem with quantified uncertainty is computed at a cost, measured in forward PDE solves, that is independent of the parameter dimension. The goal of hIPPYlib is to make these advanced deterministic and Bayesian inversion algorithms accessible to domain scientists and provides an environment that expedites the development of new algorithms.

Digital Math: constructive solution of the grand challenges in science, education and industry

ABSTRACT. We present the Digital Math framework as the foundation for modern science based on constructive digital mathematical computation. The computed result (coefficient vector, FEM function, plot, etc.) is a mathematical theorem, and the mathematical Open Source code, here in the FEniCS framework, and computation is the mathematical proof. Additional constructive proofs can also be derived from the FEniCS and FEM formulation, such as stability.

Based on the Digital Math framework and the FEniCS realization, we present solutions to some of the grand challenges in science, education and industry:

1. The Direct FEM Simulation (DFS) methodology in Unicorn/FEniCS together with predictions of the most advanced benchmarks available, unlocking the grand challenge of turbulence and aerodynamics.

2. Today many students lose motivation entirely for mathematics by high school, this is one of the key problems in society. The DigiMat pedagogic methodology from pre-school to university and professionals creates motivation and learning. Students learn the simple algorithms for predicting the mathematical models describing the world, by playing and constructing games. The DigiMat project is supported by the Swedish Innovation Agency Vinnova, and is carried out in collaboration with child pedagogic researchers at Stockholm University, and several schools in Sweden.

3. The technical industries are successively becoming digitalized and automated, meaning that mathematical modeling software will soon dominate the entire activity and value of the industry. The Digital Math Open Source code ensures a scientific and mathematical basis for the industry, and allows a Linux-type ecosystem of companies with positive synergy. We present such a commercial example, supported by IVA Royal Swedish Academy of Engineering Sciences and the Swedish Innovation Agency Vinnova.

Compiling finite element variational forms for GPU-based assembly
PRESENTER: James D. Trotter

ABSTRACT. We present an experimental form compiler for exploring GPU-based algorithms for assembling vectors, matrices, and higher-order tensors from finite element variational forms.

Previous studies by Cecka et al. (2010), Markall et al. (2013), and Reguly and Giles (2015) have explored different strategies for using GPUs for finite element assembly, demonstrating the potential rewards and highlighting some of the difficulties in offloading assembly to a GPU. Even though these studies are limited to a few specific cases, mostly related to the Poisson problem, they already indicate that to achieve high performance, the appropriate assembly strategy depends on the problem at hand and the chosen discretisation.

By using a form compiler to automatically generate code for GPU-based assembly, we can explore a range of problems based on different variational forms and finite element discretisations. In this way, we aim to get a better picture of the potential benefits and challenges of assembling finite element variational forms on a GPU. Ultimately, the goal is to explore algorithms based on automated code generation that offload entire finite element methods to a GPU, including assembly of vectors and matrices and solution of linear systems.

In this talk, we give an exact characterisation of the class of finite element variational forms supported by our compiler, comprising a small subset of the Unified Form Language that is used by FEniCS and Firedrake. Furthermore, we describe a denotational semantics that explains how expressions in the form language are translated to low-level C or CUDA code for performing assembly over a computational mesh. We also present some initial results and discuss the performance of the generated code.


Cecka, Cris, Adrian J. Lew, and E. Darve. 2010. Assembly of finite element methods on graphics processors, International Journal for Numerical Methods in Engineering 85, no. 5, 640–669.

Markall, G. R., A. Slemmer, D. A. Ham, P. H. J. Kelly, C. D. Cantwell, and S. J. Sherwin. 2013. Finite element assembly strategies on multi-core and many-core architectures, International Journal for Numerical Methods in Fluids 71, no. 1, 80– 97.

Reguly, I. Z. and M. B. Giles. 2015. Finite Element Algorithms and Data Structures on Graphical Processing Units, International Journal of Parallel Programming 43, no. 2, 203–239.

LEoPart: a particle add-on for FEniCS
PRESENTER: Chris Richardson

ABSTRACT. Passive and active tracer methods find applications in a versatile range of engineering areas such as geophysical flows, environmental fluid mechanics and biomedical applications. In many of these applications, the carrier fluid for advecting the Lagrangian tracers - or particles - is conveniently simulated using well-established mesh-based techniques. To enable interactions between mesh-based fields and the Lagrangian particles, dedicated tools are required for, e.g., advecting the particles in a mesh-based flow field or constructing source terms in the mesh-based problem from data carried by the particles. It goes without saying that efficiency of these particle-mesh interactions is desirable, the more so as the amount of particles needed, can typically exceed the number of mesh dofs by various orders of magnitude. LEoPart - which stands for Lagrangian-Eulerian on Particles, serves as a Lagrangian particle add-on for FEniCS by providing a suite of tools for integrating particle functionality in FEniCS. This includes particle advection tools, relying on an efficient particle tracking scheme tailored to arbitrary polyhedral meshes. In addition, LEoPart provides various options for the particle-mesh interactions via dedicated projection operators. Throughout, available FEniCS data structures are conveniently exploited. Apart from highlighting the core functionalities, the performance and scalability of the tools in the LEoPart library are demonstrated in this contribution, and future developments are identified. The FEniCS community is invited and encouraged to contribute to LEoPart on https://bitbucket.org/jakob_maljaars/leopart.

14:00-15:30 Session 4: Applications I
Toward a Partitioned Fluid-Structure Interaction Algorithm for Photovoltaic Panel Tracker Design
PRESENTER: Ethan Young

ABSTRACT. Modern photovoltaic (PV) panel arrays can be mounted on single-axis solar-tracking systems which adjust the panel angle to maintain an optimum position perpendicular to the solar radiation throughout the day, thereby increasing the energy collected by the system [H. Mousazadeh et al., 2009]. In certain environments, the effects of wind may pose a large design consideration when constructing these solar-tracking PV arrays. At certain tracking angles, the wind load on the panel can generate an aeroelastic fluttering behavior which can lead to damage or destruction of PV panels and tracking systems. These effects can be compounded when considering constructive interference between multiple PV panels installed in a large array. Understanding both the individual and collective response of these systems during fluttering events is essential to improving the design of solar trackers and panel installation guidelines. An open-source fluid-structure interaction code that allows for easy experimentation with such a physical system stands to greatly benefit the renewable energy research community.

In this study, a computational model of a PV panel array is investigated using a partitioned fluid-structure interaction model in which the fluid physics and solid physics are solved separately in FEniCS and then coupled at the interface. First, the algorithm uses a pressure correction approach to model the behavior of the incompressible fluid around the solid panel. Once a fluid solution is obtained, the traction on the panel due to the fluid can be calculated and the resulting deformation of the panel can be solved using the governing equations for an elastic structure with boundary conditions that approximate current panel fixation methods. Updates to the fluid mesh due to deformation and/or rotation are accomplished with a Laplacian smoothing strategy which preserves mesh quality in the region of the fluid-structure interface. These steps are iterated until convergence to enforce strong coupling between the fluid and solid physics. This simulation tool was used to study the behavior of PV panels at varying initial angles and with varying inter-panel array spacing. The flow features associated with panel geometry, forces and stresses generated around panel fixation points, and deformation of the panel obtained from these simulations are of particular interest. These preliminary results suggest potential changes to panel mounting geometry and array spacing for improving PV tracker system reliability while maintaining high energy generation. Future efforts will focus on incorporating crack propagation physics within the current framework to predict situations in which panel damage or failure occurs.

Modeling of ageing concrete
PRESENTER: Michal Habera

ABSTRACT. Ageing of concrete is very important for evaluation of its health and serviceability range. Typical state-of-the-art models lead to complex coupled multiphysics formulations which are very difficult from computational perspective. Matrices with many blocks are difficult to precondition effectively, making many parallel iterative solvers a bottleneck.

In this contribution attention to computational efficiency and effective implementation is payed. Presented model for concrete ageing is based on microprestress-solidification (MPS) theory of Bazant [1], Kunzel's model for heat and moisture transport [2] and Mazars model for damage [3]. Ageing linear viscoelastic response leads to system of ordinary differential equations for internal variables solved at every quadrature/nodal point. In addition, explicit solvers require efficient update of internal variables. This interpolation step is implemented as a custom C++ extension to dolfin. Numerical structure of the finite element discretisation is examined. Few simplifications on physical model lead to a very efficient linear algebra problem for which standard preconditioned Krylov solvers are reviewed. In parallel, weak and strong scaling tests are performed.

All results are produced within latest development version of dolfin-x. We believe that techniques and results presented in this contribution could help other users of FEniCS in writing high-performance solvers, not only for concrete models.

References: (1) ZP Bazant, AB Hauggaard, and S Baweja. Microprestress-solidification theory for concrete creep. ii: Algorithm and verification. Journal of Engineering Mechanics, 123 (11):1195–1201, 1997.

(2) Hartwig M. Kunzel. Simultaneous Heat and Moisture Transport in Building Components IRB-Verlag Stuttgart, 1995.

(3) Gilles Pijaudier-Cabot and Jacky Mazars. Damage models for concrete, 2001.

Two-dimensional Thermal Finite Element Model of Directed Energy Deposition
PRESENTER: Bohumir Jelinek

ABSTRACT. A two-dimensional (2D) thermal finite element (FE) model of the Directed Energy Deposition (DED) process is developed using the FEniCS framework. The model incrementally deposits material ahead of the laser focus point according to the geometry of the part. The laser heat energy is supplied by a Gaussian-distributed heat source while the phase change is represented by increased heat capacity around the solidus-liquidus temperature range.

Calibration of the numerical model is performed by matching results of the melt pool temperature measurements taken by a dual wave length pyrometer during the build process of a box-shaped Ti-6Al-4V part with large geometrical voids.

Effects of large geometrical voids on the melt pool shape and maximum melt pool temperature are examined. Both numerical model and experimental data show an increase in the melt pool size and temperature during deposition above large voids. The trailing edge of the melt pool's temperature profile obtained using the developed numerical model exhibits a solidification plateau extending horizontally from the solidus temperature that closely matches pyrometer measurements.

FEniCS heat flow models connect micron-lengthscale experiments to the 100 km-thick thermal boundary layer at base of the Earth’s mantle

ABSTRACT. Heat flows out of the Earth’s core in proportion to the value of thermal conductivity of the mixture of silicates and oxides making up the base of the Earth’s mantle. To date, no experiments have probed thermal conductivity of silicates or oxides at the relevant conditions of pressure and temperature. Here, we couple high pressure high temperature flash-laser heating experiments with finite-element models of our experiments to infer that the thermal conductivity is 7 +- 3.5 at the base of the convecting mantle. FEniCS heat equation codes were used to fit the experimental data and were invaluable in estimating errors in the sample’s thermal conductivity, which is but one of eight free parameters in the finite element codes.

Distributed memory algorithms for Finite Element computing in FEniCS with applications in continuum mechanics
PRESENTER: Tamara Dancheva

ABSTRACT. Distributed-memory general simplicial mesh operations are a key component of general goal-oriented adaptive error control methods, interface-tracking methods and moving/deforming mesh simulations which are fundamental in science and industry. We identify the Omega_h library as a representative world-leading research, scalable, highly-efficient and robust Open Source implementation of this key technology. We present our work on developing and integrating Omega_h in our Unicorn/FEniCS framework.

One application is in aerodynamics and fluid-structure interaction, areas that have been widely explored within our research group. We integrate Omega_h with the existing DFS (Direct FEM Simulation) and Unified continuum methodologies.

Secondly, we introduce Omega_h in solid mechanics problems relevant to manufacturing processes. The ENABLE project is a European Training Network project whose main goal is the development of new solutions for the simulation of various manufacturing processes (Machining, Friction Stir Welding and Additive Manufacturing) of metal alloys using the FEniCS platform. The main motivation behind the mesh adaptation is to prevent degradation of elements, facilitate optimal transient simulations and limit the waste of resources in large strain/ strain rate/ temperature, deforming/moving mesh simulations such as the ones on which the ENABLE project focuses on. The adaptation is based on building a metric to conform to a given user function such as the error indicators of the dual problem.

16:00-17:00 Session 5: FEniCS-X
FEniCS-X, the future of FEniCS

ABSTRACT. FEniCS-X represents the future direction of the FEniCS project. We discuss the core changes, philosophy and implication of new FEniCS-X developments.