Ifpack2 Templated Preconditioning Package
Version 1.0
src
Ifpack2_Details_LapackSupportsScalar.hpp
1
#ifndef IFPACK2_DETAILS_LAPACKSUPPORTSSCALAR_HPP
2
#define IFPACK2_DETAILS_LAPACKSUPPORTSSCALAR_HPP
3
4
#include "Teuchos_ConfigDefs.hpp"
5
6
#ifdef HAVE_TEUCHOS_COMPLEX
7
# include <complex>
8
#endif // HAVE_TEUCHOS_COMPLEX
9
10
namespace
Ifpack2
{
11
namespace
Details
{
12
16
template
<
class
ScalarType>
17
class
LapackSupportsScalar
{
18
public
:
19
const
static
bool
value =
false
;
20
};
21
22
template
<>
23
class
LapackSupportsScalar
<float> {
24
public
:
25
const
static
bool
value =
true
;
26
};
27
28
template
<>
29
class
LapackSupportsScalar<double> {
30
public
:
31
const
static
bool
value =
true
;
32
};
33
34
#ifdef HAVE_TEUCHOS_COMPLEX
35
template
<>
36
class
LapackSupportsScalar<std::complex<float> > {
37
public
:
38
const
static
bool
value =
true
;
39
};
40
41
template
<>
42
class
LapackSupportsScalar<std::complex<double> > {
43
public
:
44
const
static
bool
value =
true
;
45
};
46
#endif // HAVE_TEUCHOS_COMPLEX
47
48
}
// namespace Details
49
}
// namespace Ifpack2
50
51
#endif // IFPACK2_DETAILS_LAPACKSUPPORTSSCALAR_HPP
Ifpack2::Details::LapackSupportsScalar
Type traits class that says whether Teuchos::LAPACK has a valid implementation for the given ScalarTy...
Definition:
Ifpack2_Details_LapackSupportsScalar.hpp:17
Details
Ifpack2 implementation details.
Ifpack2
Preconditioners and smoothers for Tpetra sparse matrices.
Definition:
Ifpack2_AdditiveSchwarz_decl.hpp:72
Generated by
1.8.16