Nektar++
Main Page
Related Pages
+
Namespaces
Namespace List
+
Namespace Members
+
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
z
+
Variables
_
a
b
c
d
e
f
g
i
k
l
m
n
o
p
r
s
t
u
v
w
x
+
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
+
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
+
Enumerator
e
g
m
r
s
x
y
z
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
+
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
+
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Typedefs
a
b
c
d
e
f
g
i
m
n
o
p
r
s
t
v
Enumerations
+
Enumerator
e
s
t
Properties
+
Related Functions
a
c
d
i
k
l
m
n
o
t
+
Files
File List
+
File Members
+
All
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
+
Functions
a
b
c
d
e
g
l
m
n
o
p
r
s
t
Variables
Typedefs
Enumerations
Enumerator
+
Macros
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
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 Jan 20 2021 03:33:36 for Nektar++ by
1.8.13