Nektar++
docs
doxygen
mainpage.h
Go to the documentation of this file.
1
/**
2
* @mainpage The Nektar++ library
3
*
4
* Nektar++ is an open source software
5
* library currently being developed and designed to provide a toolbox
6
* of data structures and algorithms which implement the spectral/hp
7
* element method. Nektar++ is the continuation and adaptation of the
8
* <A
9
* HREF="http://www2.imperial.ac.uk/ssherw/spectralhp/nektar">Nektar</A>
10
* flow solver. As opposed to its predecessor which focused on solving
11
* fluid dynamics problems, Nektar++ is implemented as a C++
12
* object-oriented toolkit which allows developers to implement
13
* spectral element solvers for a variety of different engineering
14
* problems.
15
*
16
* The structure of the Nektar++ library, a collection of different
17
* sublibraries, is based upon the typical structure of a global
18
* spectral/hp approximation, which is characterized by:
19
* - <b>The elemental decomposition of the problem</b><BR> As for all finite
20
* element methods, the computational domain is partitioned into a
21
* mesh of many small subdomains or elements. Analogously, the
22
* spectral/hp solution is expanded into a series of local expansions,
23
* each with support on a single element. This elemental
24
* representation enables the treatment of operations on a local
25
* elemental basis rather than on global level. This not only
26
* simplifies the formulation but also allows many operations to be
27
* performed more efficiently.
28
* - <b>The introduction of a standard region</b><BR>
29
* The introduction of a standard region allows the
30
* expansion basis to be defined just once, that is only on the
31
* standard region. All other elements then can be considered as the
32
* image of the standard element under a parametric
33
* mapping. Consequently, the elemental operations of integration and
34
* differentiation can all be executed on the standard element,
35
* subject to a proper treatment of the transformation from local
36
* (world space) to standard (reference space) coordinates. For
37
* curved-sided elements, the mapping from standard element to local
38
* element is generally done using an <em>iso-parametric</em>
39
* representation. In this case, the local geometry is represented
40
* with an expansion of the same form and polynomial order as the
41
* unknown variables.
42
*
43
* This structure, supplemented with building blocks such as block
44
* matrix linear algebra routines and automatic data coordinating
45
* objects, can be encapsulated in an efficient object-oriented C++
46
* implementation.
47
*
48
* This conceptual
49
* approach of the software leads to a high user-flexibility,
50
* including the selection of the preferred expansion basis, its
51
* polynomial order and the preferred numerical quadrature.
52
*
53
* The website of the Nektar++ project can be found on: http://www.nektar.info
54
*/
Generated on Wed Oct 30 2024 16:07:27 for Nektar++ by
1.9.4