Skip to main content

Research Repository

Advanced Search

Fast native-MATLAB stiffness assembly for SIPG linear elasticity

Bird, R.E.; Coombs, W.M.; Giani, S.

Fast native-MATLAB stiffness assembly for SIPG linear elasticity Thumbnail


Dr Robert Bird
PDRA in Computational Solid Mechanics


When written in MATLAB the finite element method (FEM) can be implemented quickly and with significantly fewer lines, when compared to compiled code. MATLAB is also an attractive environment for generating bespoke routines for scientific computation as it contains a library of easily accessible inbuilt functions, effective debugging tools and a simple syntax for generating scripts. However, there is a general view that MATLAB is too inefficient for the analysis of large problems. Here this preconception is challenged by detailing a vectorised and blocked algorithm for the global stiffness matrix computation of the symmetric interior penalty discontinuous Galerkin (SIPG) FEM. The major difference between the computation of the global stiffness matrix for SIPG and conventional continuous Galerkin approximations is the requirement to evaluate inter-element face terms, this significantly increases the computational effort. This paper focuses on the face integrals as they dominate the computation time and have not been addressed in the existing literature. Unlike existing optimised finite element algorithms available in the literature the paper makes use of only native MATLAB functionality and is compatible with GNU Octave. The algorithm is primarily described for 2D analysis for meshes with homogeneous element type and polynomial order. The same structure is also applied to, and results presented for, a 3D analysis. For problem sizes of 106 degrees of freedom (DOF), 2D computations of the local stiffness matrices were at least ≈24 times faster, with 13.7 times improvement from vectorisation and a further 1.8 times improvement from blocking. The speed up from blocking and vectorisation is dependent on the computer architecture, with the range of potential improvements shown for two architectures in this paper.


Bird, R., Coombs, W., & Giani, S. (2017). Fast native-MATLAB stiffness assembly for SIPG linear elasticity. Computers and Mathematics with Applications, 74(12), 3209-3230.

Journal Article Type Article
Acceptance Date Aug 15, 2017
Online Publication Date Sep 9, 2017
Publication Date Dec 15, 2017
Deposit Date Aug 17, 2017
Publicly Available Date Aug 17, 2017
Journal Computers and Mathematics with Applications
Print ISSN 0898-1221
Publisher Elsevier
Peer Reviewed Peer Reviewed
Volume 74
Issue 12
Pages 3209-3230


You might also like

Downloadable Citations