  The implementation of discontinuous Galerkin finite element methods (DGFEMs)
represents a very challenging computational task, particularly for systems of
coupled nonlinear PDEs, including multiphysics problems, whose parameters may
consist of power series or functionals of the solution variables. Thereby, the
exploitation of symbolic algebra to express a given DGFEM approximation of a
PDE problem within a high level language, whose syntax closely resembles the
mathematical definition, is an invaluable tool. Indeed, this then facilitates
the automatic assembly of the resulting system of (nonlinear) equations, as
well as the computation of Fr\'echet derivative(s) of the DGFEM scheme, needed,
for example, within a Newton-type solver. However, even exploiting symbolic
algebra, the discretisation of coupled systems of PDEs can still be extremely
verbose and hard to debug. Thereby, in this article we develop a further layer
of abstraction by designing a class structure for the automatic computation of
DGFEM formulations. This work has been implemented within the FEniCS package,
based on exploiting the Unified Form Language. Numerical examples are presented
which highlight the simplicity of implementation of DGFEMs for the numerical
approximation of a range of PDE problems.
