Nektar++


Nektar++ is a spectral/hp element framework designed to support the construction of efficient high-performance scalable solvers for a wide range of partial differential equations. The code is released as open-source under the MIT license. Although primarily driven by application-based research, it has been designed as a platform to support the development of novel numerical techniques in the area of high-order finite element methods.
Nektar++ is modern object-oriented code written in C++ and is being actively developed by members of the SherwinLab at Imperial College London and Kirby's group at the University of Utah.

Capabilities

Nektar++ includes the following capabilities:
  • One-, two- and three-dimensional problems;
  • Multiple and mixed element types, i.e. triangles, quadrilaterals, tetrahedra, prisms and hexahedra;
  • Both hierarchical and nodal expansion bases with variable and heterogeneous polynomial order between elements;
  • Continuous Galerkin, discontinuous Galerkin, hybridizable discontinuous Galerkin and flux reconstruction operators;
  • Multiple implementations of finite element operators for efficient execution on a wide range of CPU architectures;
  • Comprehensive range of explicit, implicit and implicit-explicit time-integration schemes;
  • Preconditioners tailored to high-order finite element methods;
  • Numerical stabilization techniques such as dealiasing and spectral vanishing viscosity;
  • Parallel execution and scalable to thousands of processor cores;
  • Pre-processing tools to generate meshes, or manipulate and convert meshes generated with third-party software into a Nektar++-readable format;
  • Extensive post-processing capabilities for manipulating output data;
  • Cross platform support for Linux, Mac OS X and Windows;
  • Support for running jobs on cloud computing platforms via the prototype Nekkloud interface from the libhpc project;
  • Wide user community, support and annual workshop.
Stable versions of the software are released on a 1-month basis and it is supported by an extensive testing framework which ensures correctness across a range of platforms and architectures.
Other capabilities currently under active development include p-adaption, r-adaption and support for accelerators.

Application domains

The development of the Nektar++ framework is driven by a number of aerodynamics and biomedical engineering applications and consequently the software package includes a number of pre-written solvers for these areas.

Incompressible flow

This solver time-integrates the incompressible Navier-Stokes equations for performing large-scale direct numerical simulation in complex geometries. It also supports the linearised and adjoint forms of the Navier-Stokes equations for evaluating hydrodynamic stability of flows.

Compressible flow

External aerodynamics simulations of high-speed compressible flows are supported through solution of the compressible Euler or Navier-Stokes equations.

Cardiac Electrophysiology

This solver supports the solution of the monodomain model and bidomain model of action potential propagation through myocardium.

Other application areas

License

Nektar++ is free and open source software, released under the MIT license.

Alternative software

Free and open-source software

Proprietary software

Official resources

*
*