1,686 research outputs found
Automated code generation for discontinuous Galerkin methods
A compiler approach for generating low-level computer code from high-level
input for discontinuous Galerkin finite element forms is presented. The input
language mirrors conventional mathematical notation, and the compiler generates
efficient code in a standard programming language. This facilitates the rapid
generation of efficient code for general equations in varying spatial
dimensions. Key concepts underlying the compiler approach and the automated
generation of computer code are elaborated. The approach is demonstrated for a
range of common problems, including the Poisson, biharmonic,
advection--diffusion and Stokes equations
Recommended from our members
Optimisations for quadrature representations of finite element tensors through automated code generation
We examine aspects of the computation of finite element matrices and vectors
which are made possible by automated code generation. Given a variational form
in a syntax which resembles standard mathematical notation, the low-level
computer code for building finite element tensors, typically matrices, vectors
and scalars, can be generated automatically via a form compiler. In particular,
the generation of code for computing finite element matrices using a quadrature
approach is addressed. For quadrature representations, a number of optimisation
strategies which are made possible by automated code generation are presented.
The relative performance of two different automatically generated
representations of finite element matrices is examined, with a particular
emphasis on complicated variational forms. It is shown that approaches which
perform best for simple forms are not tractable for more complicated problems
in terms of run time performance, the time required to generate the code or the
size of the generated code. The approach and optimisations elaborated here are
effective for a range of variational forms
Recommended from our members
Representations of finite element tensors via automated code generation
We examine aspects of the computation of finite element matrices and vectors which are made possible by automated code generation. Given a variational form in a syntax which resembles standard mathematical notation, the low-level computer code for building finite element tensors, typically matrices, vectors and scalars, can be generated automatically via a form compiler. In particular, the generation of code for computing finite element matrices using a quadrature approach is addressed. For quadrature representations, a number of optimisation strategies which are made possible by automated code generation are presented. The relative performance of two different automatically generated representations of finite element matrices is examined, with a particular emphasis on complicated variational forms. It is shown that approaches which perform best for simple forms are not tractable for more complicated problems in terms of run time performance, the time required to generate the code or the size of the generated code. The approach and optimisations elaborated here are effective for a range of variational forms
Finite Element Integration on GPUs
We present a novel finite element integration method for low order elements
on GPUs. We achieve more than 100GF for element integration on first order
discretizations of both the Laplacian and Elasticity operators.Comment: 16 pages, 3 figure
Embedded discontinuous Galerkin transport schemes with localised limiters
Motivated by finite element spaces used for representation of temperature in
the compatible finite element approach for numerical weather prediction, we
introduce locally bounded transport schemes for (partially-)continuous finite
element spaces. The underlying high-order transport scheme is constructed by
injecting the partially-continuous field into an embedding discontinuous finite
element space, applying a stable upwind discontinuous Galerkin (DG) scheme, and
projecting back into the partially-continuous space; we call this an embedded
DG scheme. We prove that this scheme is stable in L2 provided that the
underlying upwind DG scheme is. We then provide a framework for applying
limiters for embedded DG transport schemes. Standard DG limiters are applied
during the underlying DG scheme. We introduce a new localised form of
element-based flux-correction which we apply to limiting the projection back
into the partially-continuous space, so that the whole transport scheme is
bounded. We provide details in the specific case of tensor-product finite
element spaces on wedge elements that are discontinuous P1/Q1 in the horizontal
and continuous P2 in the vertical. The framework is illustrated with numerical
tests
- …