Nektar++
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
library
SolverUtils
RiemannSolvers
library/SolverUtils/RiemannSolvers/UpwindSolver.h
Go to the documentation of this file.
1
///////////////////////////////////////////////////////////////////////////////
2
//
3
// File: UpwindSolver.h
4
//
5
// For more information, please see: http://www.nektar.info
6
//
7
// The MIT License
8
//
9
// Copyright (c) 2006 Division of Applied Mathematics, Brown University (USA),
10
// Department of Aeronautics, Imperial College London (UK), and Scientific
11
// Computing and Imaging Institute, University of Utah (USA).
12
//
13
// License for the specific language governing rights and limitations under
14
// Permission is hereby granted, free of charge, to any person obtaining a
15
// copy of this software and associated documentation files (the "Software"),
16
// to deal in the Software without restriction, including without limitation
17
// the rights to use, copy, modify, merge, publish, distribute, sublicense,
18
// and/or sell copies of the Software, and to permit persons to whom the
19
// Software is furnished to do so, subject to the following conditions:
20
//
21
// The above copyright notice and this permission notice shall be included
22
// in all copies or substantial portions of the Software.
23
//
24
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
25
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
26
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
27
// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
28
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
29
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
30
// DEALINGS IN THE SOFTWARE.
31
//
32
// Description: Upwind Riemann solver.
33
//
34
///////////////////////////////////////////////////////////////////////////////
35
36
#ifndef NEKTAR_SOLVERUTILS_UPWINDSOLVER
37
#define NEKTAR_SOLVERUTILS_UPWINDSOLVER
38
39
#include <
SolverUtils/SolverUtilsDeclspec.h
>
40
#include <
SolverUtils/RiemannSolvers/RiemannSolver.h
>
41
42
namespace
Nektar
43
{
44
namespace
SolverUtils
45
{
46
class
UpwindSolver
:
public
RiemannSolver
47
{
48
public
:
49
SOLVER_UTILS_EXPORT
static
RiemannSolverSharedPtr
create
()
50
{
51
return
RiemannSolverSharedPtr
(
52
new
UpwindSolver
());
53
}
54
55
static
std::string
solverName
;
56
57
protected
:
58
UpwindSolver
();
59
60
virtual
void
v_Solve
(
61
const
int
nDim,
62
const
Array
<
OneD
,
const
Array<OneD, NekDouble>
> &Fwd,
63
const
Array
<
OneD
,
const
Array<OneD, NekDouble>
> &Bwd,
64
Array
<
OneD
,
Array<OneD, NekDouble>
> &flux);
65
};
66
}
67
}
68
69
#endif
Nektar
<
Definition:
CoupledSolver.h:1
Nektar::SolverUtils::UpwindSolver::solverName
static std::string solverName
Definition:
library/SolverUtils/RiemannSolvers/UpwindSolver.h:55
Nektar::SolverUtils::UpwindSolver::UpwindSolver
UpwindSolver()
Default constructor.
Definition:
library/SolverUtils/RiemannSolvers/UpwindSolver.cpp:66
Nektar::SolverUtils::RiemannSolverSharedPtr
boost::shared_ptr< RiemannSolver > RiemannSolverSharedPtr
A shared pointer to an EquationSystem object.
Definition:
RiemannSolver.h:194
Nektar::Array
Definition:
SharedArray.hpp:55
Nektar::SolverUtils::UpwindSolver::create
static SOLVER_UTILS_EXPORT RiemannSolverSharedPtr create()
Definition:
library/SolverUtils/RiemannSolvers/UpwindSolver.h:49
Nektar::SolverUtils::UpwindSolver::v_Solve
virtual void v_Solve(const int nDim, const Array< OneD, const Array< OneD, NekDouble > > &Fwd, const Array< OneD, const Array< OneD, NekDouble > > &Bwd, Array< OneD, Array< OneD, NekDouble > > &flux)
Implementation of the upwind solver.
Definition:
library/SolverUtils/RiemannSolvers/UpwindSolver.cpp:84
SolverUtilsDeclspec.h
Nektar::SolverUtils::UpwindSolver
Upwind scheme Riemann solver.
Definition:
library/SolverUtils/RiemannSolvers/UpwindSolver.h:46
Nektar::SolverUtils::RiemannSolver
The RiemannSolver class provides an abstract interface under which solvers for various Riemann proble...
Definition:
RiemannSolver.h:62
SOLVER_UTILS_EXPORT
#define SOLVER_UTILS_EXPORT
Definition:
SolverUtilsDeclspec.h:43
Nektar::OneD
Definition:
NektarUnivTypeDefs.hpp:50
RiemannSolver.h
Generated on Fri Sep 9 2016 12:03:20 for Nektar++ by
1.8.8