Loading…

Nektar++: Enhancing the capability and application of high-fidelity spectral/hp element methods

Nektar++ is an open-source framework that provides a flexible, high-performance and scalable platform for the development of solvers for partial differential equations using the high-order spectral/hp element method. In particular, Nektar++ aims to overcome the complex implementation challenges that...

Full description

Saved in:
Bibliographic Details
Published in:Computer physics communications 2020-04, Vol.249, Article 107110
Main Authors: Moxey, David, Cantwell, Chris D., Bao, Yan, Cassinelli, Andrea, Castiglioni, Giacomo, Chun, Sehun, Juda, Emilia, Kazemi, Ehsan, Lackhove, Kilian, Marcon, Julian, Mengaldo, Gianmarco, Serson, Douglas, Turner, Michael, Xu, Hui, Peiró, Joaquim, Kirby, Robert M., Sherwin, Spencer J.
Format: Article
Language:English
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Nektar++ is an open-source framework that provides a flexible, high-performance and scalable platform for the development of solvers for partial differential equations using the high-order spectral/hp element method. In particular, Nektar++ aims to overcome the complex implementation challenges that are often associated with high-order methods, thereby allowing them to be more readily used in a wide range of application areas. In this paper, we present the algorithmic, implementation and application developments associated with our Nektar++ version 5.0 release. We describe some of the key software and performance developments, including our strategies on parallel I/O, on in situ processing, the use of collective operations for exploiting current and emerging hardware, and interfaces to enable multi-solver coupling. Furthermore, we provide details on a newly developed Python interface that enables a more rapid introduction for new users unfamiliar with spectral/hp element methods, C++ and/or Nektar++. This release also incorporates a number of numerical method developments – in particular: the method of moving frames (MMF), which provides an additional approach for the simulation of equations on embedded curvilinear manifolds and domains; a means of handling spatially variable polynomial order; and a novel technique for quasi-3D simulations (which combine a 2D spectral element and 1D Fourier spectral method) to permit spatially-varying perturbations to the geometry in the homogeneous direction. Finally, we demonstrate the new application-level features provided in this release, namely: a facility for generating high-order curvilinear meshes called NekMesh; a novel new AcousticSolver for aeroacoustic problems; our development of a ‘thick’ strip model for the modelling of fluid–structure interaction (FSI) problems in the context of vortex-induced vibrations (VIV). We conclude by commenting on some lessons learned and by discussing some directions for future code development and expansion. Program Title: Nektar++ Program Files doi:http://dx.doi.org/10.17632/9drxd9d8nx.1 Code Ocean Capsule:https://doi.org/10.24433/CO.9865757.v1 Licensing provisions: MIT Programming language: C++ External routines/libraries: Boost, METIS, FFTW, MPI, Scotch, PETSc, TinyXML, HDF5, OpenCASCADE, CWIPI Nature of problem: The Nektar++ framework is designed to enable the discretisation and solution of time-independent or time-dependent partial differential equations. Solution method: s
ISSN:0010-4655
1879-2944
DOI:10.1016/j.cpc.2019.107110