dc.contributor.author | Moxey, D | |
dc.contributor.author | Cantwell, CD | |
dc.contributor.author | Bao, Y | |
dc.contributor.author | Cassinelli, A | |
dc.contributor.author | Castiglioni, G | |
dc.contributor.author | Chun, S | |
dc.contributor.author | Juda, E | |
dc.contributor.author | Kazemi, E | |
dc.contributor.author | Lackhove, K | |
dc.contributor.author | Marcon, J | |
dc.contributor.author | Mengaldo, G | |
dc.contributor.author | Serson, D | |
dc.contributor.author | Turner, M | |
dc.contributor.author | Xu, H | |
dc.contributor.author | Peiró, J | |
dc.contributor.author | Kirby, RM | |
dc.contributor.author | Sherwin, SJ | |
dc.date.accessioned | 2020-01-29T11:21:38Z | |
dc.date.issued | 2019-12-18 | |
dc.description.abstract | 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 summary: 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: spectral/hp element method | en_GB |
dc.description.sponsorship | EPSRC | en_GB |
dc.description.sponsorship | British Heart Foundation | en_GB |
dc.description.sponsorship | Royal Society of Engineering | en_GB |
dc.description.sponsorship | EU FP7 | en_GB |
dc.description.sponsorship | Horizon 2020 | en_GB |
dc.description.sponsorship | National Natural Science Foundation | en_GB |
dc.description.sponsorship | McLaren Racing | en_GB |
dc.description.sponsorship | Army Research Office | en_GB |
dc.description.sponsorship | Air Force Office of Scientific Research | en_GB |
dc.description.sponsorship | Department of Energy | en_GB |
dc.identifier.citation | Published online 18-December-2019 | en_GB |
dc.identifier.doi | 10.1016/j.cpc.2019.107110 | |
dc.identifier.grantnumber | EP/R029423/1 | en_GB |
dc.identifier.grantnumber | EP/R029326/1 | en_GB |
dc.identifier.grantnumber | EP/L000407/1 | en_GB |
dc.identifier.grantnumber | EP/K037536/1 | en_GB |
dc.identifier.grantnumber | EP/K038788/1 | en_GB |
dc.identifier.grantnumber | EP/L000261/1 | en_GB |
dc.identifier.grantnumber | EP/I037946/1 | en_GB |
dc.identifier.grantnumber | EP/H000208/1, | en_GB |
dc.identifier.grantnumber | EP/I030239/1 | en_GB |
dc.identifier.grantnumber | EP/H050507/1, | en_GB |
dc.identifier.grantnumber | EP/D044073/1 | en_GB |
dc.identifier.grantnumber | EP/C539834/1 | en_GB |
dc.identifier.uri | http://hdl.handle.net/10871/40638 | |
dc.language.iso | en | en_GB |
dc.publisher | Elsevier | en_GB |
dc.rights | © 2019 The Author(s). Published by Elsevier B.V. This is an open access article under the CC BY license (http://creativecommons.org/licenses/by/4.0/) | en_GB |
dc.subject | Nektar++ | en_GB |
dc.subject | Spectral/hp element methods | en_GB |
dc.subject | High-order finite element methods | en_GB |
dc.title | Nektar++: Enhancing the capability and application of high-fidelity spectral/hp element methods | en_GB |
dc.type | Article | en_GB |
dc.date.available | 2020-01-29T11:21:38Z | |
dc.identifier.issn | 0010-4655 | |
dc.description | This is the final version. Available from Elsevier via the DOI in this record. | en_GB |
dc.identifier.journal | Computer Physics Communications | en_GB |
dc.rights.uri | http://www.rioxx.net/licenses/all-rights-reserved | en_GB |
dcterms.dateAccepted | 2019-12-05 | |
rioxxterms.version | VoR | en_GB |
rioxxterms.licenseref.startdate | 2019-12-05 | |
rioxxterms.type | Journal Article/Review | en_GB |
refterms.dateFCD | 2020-01-29T11:08:54Z | |
refterms.versionFCD | VoR | |
refterms.dateFOA | 2020-01-29T11:21:56Z | |
refterms.panel | B | en_GB |