Nektar++
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
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 May 4 2016 17:54:14 for Nektar++ by
1.8.8