Searcharxiv⌕ Search

arXiv subjects

Robert C. Kirby

Publications and source records attributed to Robert C. Kirby.

At least 37 records · Page 2Linked to original sources

Finite elements for Helmholtz equations with a nonlocal boundary condition

Numerical resolution of exterior Helmholtz problems requires some approach to domain truncation. As an alternative to approximate nonreflecting boundary conditions and invocation of the Dirichlet-to-Neumann map, we introduce a new, nonlocal boundary condition. This condition is exact and requires the evaluation of layer potentials involving the free space Green's function. However, it seems to work in general unstructured geometry, and Galerkin finite element discretization leads to convergence under the usual mesh constraints imposed by Gårding-type inequalities. The nonlocal boundary conditions are readily approximated by fast multipole methods, and the resulting linear system can be preconditioned by the purely local operator involving transmission boundary conditions.

math.NA↗

Irksome: Automating Runge--Kutta time-stepping for finite element methods

While implicit Runge--Kutta methods possess high order accuracy and important stability properties, implementation difficulties and the high expense of solving the coupled algebraic system at each time step are frequently cited as impediments. We present IIrksome, a high-level library for manipulating UFL (Unified Form Language) expressions of semidiscrete variational forms to obtain UFL expressions for the coupled Runge--Kutta stage equations at each time step. Irksome works with the Firedrake package to enable the efficient solution of the resulting coupled algebraic systems. Numerical examples confirm the efficacy of the software and our solver techniques for various problems.

math.NA↗

Structured inversion of the Bernstein-Vandermonde Matrix

Bernstein polynomials, long a staple of approximation theory and computational geometry, have also increasingly become of interest in finite element methods. Many fundamental problems in interpolation and approximation give rise to interesting linear algebra questions. When attempting to find a polynomial approximation of boundary or initial data, one encounters the Bernstein-Vandermonde matrix, which is found to be highly ill-conditioned. Previously, we used the relationship between monomial Bezout matrices and the inverse of Hankel matrices to obtain a decomposition of the inverse of the Bernstein mass matrix in terms of Hankel, Toeplitz, and diagonal matrices. In this paper, we use properties of the Bernstein-Bezout matrix to factor the inverse of the Bernstein-Vandermonde matrix into a difference of products of Hankel, Toeplitz, and diagonal matrices. We also use a nonstandard matrix norm to study the conditioning of the Bernstein-Vandermonde matrix, showing that the conditioning in this case is better than in the standard 2-norm. Additionally, we use properties of multivariate Bernstein polynomials to derive a block $LU$ decomposition of the Bernstein-Vandermonde matrix corresponding to equispaced nodes on the $d$-simplex.

math.NA↗

Preconditioning mixed finite elements for tide models

We describe a fully discrete mixed finite element method for the linearized rotating shallow water model, possibly with damping. While Crank-Nicolson time-stepping conserves energy in the absence of drag or forcing terms and is not subject to a CFL-like stability condition, it requires the inversion of a linear system at each step. We develop weighted-norm preconditioners for this algebraic system that are nearly robust with respect to the physical and discretization parameters in the system. Numerical experiments using Firedrake support the theoretical results.

math.NA↗

Optimal-order preconditioners for the Morse-Ingard equations

The Morse-Ingard equations of thermoacoustics are a system of coupled time-harmonic equations for the temperature and pressure of an excited gas. They form a critical aspect of modeling trace gas sensors. In this paper, we analyze a reformulation of the system that has a weaker coupling between the equations than the original form. We give a Gårding-type inequality for the system that leads to optimal-order asymptotic finite element error estimates. We also develop preconditioners for the coupled system. These are derived by writing the system as a 2x2 block system with pressure and temperature unknowns segregated into separate blocks and then using either the block diagonal or block lower triangular part of this matrix as a preconditioner. Consequently, the preconditioner requires inverting smaller, Helmholtz-like systems individually for the pressure and temperature. Rigorous eigenvalue bounds are given for the preconditioned system, and these are supported by numerical experiments.

math.NA↗

Code generation for generally mapped finite elements

Many classical finite elements such as the Argyris and Bell elements have long been absent from high-level PDE software. Building on recent theoretical work, we describe how to implement very general finite element transformations in FInAT and hence into the Firedrake finite element system. Numerical results evaluate the new elements, comparing them to existing methods for classical problems. For a second order model problem, we find that new elements give smooth solutions at a mild increase in cost over standard Lagrange elements. For fourth-order problems, however, the newly-enabled methods significantly outperform interior penalty formulations. We also give some advanced use cases, solving the nonlinear Cahn-Hilliard equation and some biharmonic eigenvalue problems (including Chladni plates) using $C^1$ discretizations.

cs.MS↗

Structured inversion of the Bernstein mass matrix

Bernstein polynomials, long a staple of approximation theory and computational geometry, have also increasingly become of interest in finite element methods. Many fundamental problems in interpolation and approximation give rise to interesting linear algebra questions. Previously, we gave block-structured algorithms for inverting the Bernstein mass matrix on simplicial cells, but did not study fast alorithms for the univariate case. Here, we give several approaches to inverting the univariate mass matrix based on exact formulae for the inverse; decompositions of the inverse in terms of Hankel, Toeplitz, and diagonal matrices; and a spectral decomposition. In particular, the eigendecomposition can be explicitly constructed in $\mathcal{O}(n^2)$ operations, while its accuracy for solving linear systems is comparable to that of the Cholesky decomposition. Moreover, we study conditioning and accuracy of these methods from the standpoint of the effect of roundoff error in the $L^2$ norm on polynomials, showing that the conditioning in this case is far less extreme than in the standard 2-norm.

math.NA↗

Solver composition across the PDE/linear algebra barrier

The efficient solution of discretisations of coupled systems of partial differential equations (PDEs) is at the core of much of numerical simulation. Significant effort has been expended on scalable algorithms to precondition Krylov iterations for the linear systems that arise. With few exceptions, the reported numerical implementation of such solution strategies is specific to a particular model setup, and intimately ties the solver strategy to the discretisation and PDE, especially when the preconditioner requires auxiliary operators. In this paper, we present recent improvements in the Firedrake finite element library that allow for straightforward development of the building blocks of extensible, composable preconditioners that decouple the solver from the model formulation. Our implementation extends the algebraic composability of linear solvers offered by the PETSc library by augmenting operators, and hence preconditioners, with the ability to provide any necessary auxiliary operators. Rather than specifying up front the full solver configuration, tied to the model, solvers can be developed independently of model formulation and configured at runtime. We illustrate with examples from incompressible fluids and temperature-driven convection.

cs.MS↗

Exposing and exploiting structure: optimal code generation for high-order finite element methods

Code generation based software platforms, such as Firedrake, have become popular tools for developing complicated finite element discretisations of partial differential equations. We extended the code generation infrastructure in Firedrake with optimisations that can exploit the structure inherent to some finite elements. This includes sum factorisation on cuboid cells for continuous, discontinuous, H(div) and H(curl) conforming elements. Our experiments confirm optimal algorithmic complexity for high-order finite element assembly. This is achieved through several novel contributions: the introduction of a more powerful interface between the form compiler and the library providing the finite elements; a more abstract, smarter library of finite elements called FInAT that explicitly communicates the structure of elements; and form compiler algorithms to automatically exploit this exposed structure.

cs.MS↗

A general approach to transforming finite elements

The use of a reference element on which a finite element basis is constructed once and mapped to each cell in a mesh greatly expedites the structure and efficiency of finite element codes. However, many famous finite elements such as Hermite, Morley, Argyris, and Bell, do not possess the kind of equivalence needed to work with a reference element in the standard way. This paper gives a generalizated approach to mapping bases for such finite elements by means of studying relationships between the finite element nodes under push-forward.

math.NA↗

Mixed finite elements for global tide models with nonlinear damping

We study mixed finite element methods for the rotating shallow water equations with linearized momentum terms but nonlinear drag. By means of an equivalent second-order formulation, we prove long-time stability of the system without energy accumulation. We also give rates of damping in unforced systems and various continuous dependence results on initial conditions and forcing terms. \emph{A priori} error estimates for the momentum and free surface elevation are given in $L^2$ as well as for the time derivative and divergence of the momentum. Numerical results confirm the theoretical results regarding both energy damping and convergence rates.

math.NA↗

Efficient discontinuous Galerkin finite element methods via Bernstein polynomials

We consider the discontinuous Galerkin method for hyperbolic conservation laws, with some particular attention to the linear acoustic equation, using Bernstein polynomials as local bases. Adapting existing techniques leads to optimal-complexity computation of the element and boundary flux terms. The element mass matrix, however, requires special care. In particular, we give an explicit formula for its eigenvalues and exact characterization of the eigenspaces in terms of the Bernstein representation of orthogonal polynomials. We also show a fast algorithm for solving linear systems involving the element mass matrix to preserve the overall complexity of the DG method. Finally, we present numerical results investigating the accuracy of the mass inversion algorithms and the scaling of total run-time for the function evaluation needed in DG time-stepping.

math.NA↗

Mixed finite elements for global tide models

We study mixed finite element methods for the linearized rotating shallow water equations with linear drag and forcing terms. By means of a strong energy estimate for an equivalent second-order formulation for the linearized momentum, we prove long-time stability of the system without energy accumulation -- the geotryptic state. A priori error estimates for the linearized momentum and free surface elevation are given in $L^2$ as well as for the time derivative and divergence of the linearized momentum. Numerical results confirm the theoretical results regarding both energy damping and convergence rates.

math.NA↗

Delocalization for the 3-D discrete random Schroedinger operator at weak disorder

We apply a recently developed approach (Liaw 2013) to study the existence of extended states for the three dimensional discrete random Schroedinger operator at small disorder. The conclusion of delocalization at small disorder agrees with other numerical and experimental observations. Further the work furnishes a verification of the numerical approach and its implementation. Not being based on scaling theory, this method eliminates problems due to boundary conditions, common to previous numerical methods in the field. At the same time, as with any numerical experiment, one cannot exclude finite-size effects with complete certainty. Our work can be thought of as a new and quite different use of Lanczos' algorithm; a posteriori tests to show that the orthogonality loss is very small. We numerically track the "bulk distribution" (here: the distribution of where we most likely find an electron) of a wave packet initially located at the origin, after iterative application of the discrete random Schroedinger operator.

math-ph↗

Optimizing the Evaluation of Finite Element Matrices

Assembling stiffness matrices represents a significant cost in many finite element computations. We address the question of optimizing the evaluation of these matrices. By finding redundant computations, we are able to significantly reduce the cost of building local stiffness matrices for the Laplace operator and for the trilinear form for Navier-Stokes. For the Laplace operator in two space dimensions, we have developed a heuristic graph algorithm that searches for such redundancies and generates code for computing the local stiffness matrices. Up to cubics, we are able to build the stiffness matrix on any triangle in less than one multiply-add pair per entry. Up to sixth degree, we can do it in less than about two. Preliminary low-degree results for Poisson and Navier-Stokes operators in three dimensions are also promising.

math.NA↗

Topological Optimization of the Evaluation of Finite Element Matrices

We present a topological framework for finding low-flop algorithms for evaluating element stiffness matrices associated with multilinear forms for finite element methods posed over straight-sided affine domains. This framework relies on phrasing the computation on each element as the contraction of each collection of reference element tensors with an element-specific geometric tensor. We then present a new concept of complexity-reducing relations that serve as distance relations between these reference element tensors. This notion sets up a graph-theoretic context in which we may find an optimized algorithm by computing a minimum spanning tree. We present experimental results for some common multilinear forms showing significant reductions in operation count and also discuss some efficient algorithms for building the graph we use for the optimization.

math.NA↗

Efficient Assembly of H(div) and H(curl) Conforming Finite Elements

In this paper, we discuss how to efficiently evaluate and assemble general finite element variational forms on H(div) and H(curl). The proposed strategy relies on a decomposition of the element tensor into a precomputable reference tensor and a mesh-dependent geometry tensor. Two key points must then be considered: the appropriate mapping of basis functions from a reference element, and the orientation of geometrical entities. To address these issues, we extend here a previously presented representation theorem for affinely mapped elements to Piola-mapped elements. We also discuss a simple numbering strategy that removes the need to contend with directions of facet normals and tangents. The result is an automated, efficient, and easy-to-use implementation that allows a user to specify finite element variational forms on H(div) and H(curl) in close to mathematical notation.

math.NA↗

Efficient Compilation of a Class of Variational Forms

We investigate the compilation of general multilinear variational forms over affines simplices and prove a representation theorem for the representation of the element tensor (element stiffness matrix) as the contraction of a constant reference tensor and a geometry tensor that accounts for geometry and variable coefficients. Based on this representation theorem, we design an algorithm for efficient pretabulation of the reference tensor. The new algorithm has been implemented in the FEniCS Form Compiler (FFC) and improves on a previous loop-based implementation by several orders of magnitude, thus shortening compile-times and development cycles for users of FFC.

math.NA↗