Sacado Package Browser (Single Doxygen Collection)
Version of the Day
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
src
new_design
Sacado_Fad_Exp_Ops_Fwd.hpp
Go to the documentation of this file.
1
// @HEADER
2
// *****************************************************************************
3
// Sacado Package
4
//
5
// Copyright 2006 NTESS and the Sacado contributors.
6
// SPDX-License-Identifier: LGPL-2.1-or-later
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef SACADO_EXP_FAD_OPS_FWD_HPP
11
#define SACADO_EXP_FAD_OPS_FWD_HPP
12
13
#include <type_traits>
14
15
namespace
Sacado {
16
17
template
<
typename
T>
struct
IsSimdType
;
18
template
<
typename
T>
struct
IsFad
;
19
template
<
typename
T>
struct
ValueType
;
20
21
namespace
Fad {
22
namespace
Exp {
23
24
template
<
typename
T,
typename
E>
class
UnaryPlusOp
;
25
template
<
typename
T,
typename
E>
class
UnaryMinusOp
;
26
template
<
typename
T,
typename
E>
class
ExpOp
;
27
template
<
typename
T,
typename
E>
class
LogOp
;
28
template
<
typename
T,
typename
E>
class
Log10Op
;
29
template
<
typename
T,
typename
E>
class
SqrtOp
;
30
template
<
typename
T,
typename
E>
class
CosOp
;
31
template
<
typename
T,
typename
E>
class
SinOp
;
32
template
<
typename
T,
typename
E>
class
TanOp
;
33
template
<
typename
T,
typename
E>
class
ACosOp
;
34
template
<
typename
T,
typename
E>
class
ASinOp
;
35
template
<
typename
T,
typename
E>
class
ATanOp
;
36
template
<
typename
T,
typename
E>
class
CoshOp
;
37
template
<
typename
T,
typename
E>
class
SinhOp
;
38
template
<
typename
T,
typename
E>
class
TanhOp
;
39
template
<
typename
T,
typename
E>
class
ACoshOp
;
40
template
<
typename
T,
typename
E>
class
ASinhOp
;
41
template
<
typename
T,
typename
E>
class
ATanhOp
;
42
template
<
typename
T,
typename
E>
class
AbsOp
;
43
template
<
typename
T,
typename
E>
class
FAbsOp
;
44
template
<
typename
T,
typename
E>
class
CbrtOp
;
45
template <typename T, typename E, bool is_simd = IsSimdType<T>::value
>
46
class
SafeSqrtOp
;
47
48
template
<
typename
T1,
typename
T2,
bool
,
bool
,
typename
E>
49
class
AdditionOp
;
50
template
<
typename
T1,
typename
T2,
bool
,
bool
,
typename
E>
51
class
SubtractionOp
;
52
template
<
typename
T1,
typename
T2,
bool
,
bool
,
typename
E>
53
class
Multiplicationp
;
54
template
<
typename
T1,
typename
T2,
bool
,
bool
,
typename
E>
55
class
DivisionOp
;
56
template
<
typename
T1,
typename
T2,
bool
,
bool
,
typename
E>
class
Atan2Op
;
57
template
<
typename
T1,
typename
T2,
bool
,
bool
,
typename
E>
class
MaxOp
;
58
template
<
typename
T1,
typename
T2,
bool
,
bool
,
typename
E>
class
MinOp
;
59
60
namespace
PowerImpl {
61
struct
Simd
{};
62
struct
Nested
{};
63
struct
NestedSimd
{};
64
struct
Scalar
{};
65
66
template
<
typename
T1,
typename
T2>
67
struct
Selector
{
68
static
constexpr
bool
is_simd
=
69
IsSimdType<T1>::value
||
IsSimdType<T2>::value
;
70
static
constexpr
bool
is_fad
=
71
IsFad< typename Sacado::ValueType<T1>::type
>
::value
||
72
IsFad< typename Sacado::ValueType<T2>::type
>
::value
;
73
typedef
typename
std::conditional<
74
is_simd
&&
is_fad
,
75
NestedSimd
,
76
typename
std::conditional<
77
is_simd
,
78
Simd
,
79
typename
std::conditional<
80
is_fad
,
81
Nested
,
82
Scalar
>
::type
83
>
::type
84
>
::type
type
;
85
};
86
}
87
template
<
typename
T1
,
typename
T2
, bool, bool,
typename
E
,
88
typename
Impl =
typename
PowerImpl::Selector<T1,T2>::type
>
89
class
PowerOp
;
90
91
}
// namespace Exp
92
}
// namespace Fad
93
94
}
// namespace Sacado
95
96
#endif // SACADO_FAD_EXPRESSION_HPP
Sacado::Fad::Exp::SqrtOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:29
Sacado::Fad::Exp::SinhOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:37
Sacado::Fad::Exp::PowerOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:89
Sacado::Fad::Exp::PowerImpl::Selector::is_simd
static constexpr bool is_simd
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:68
Sacado::Fad::Exp::Atan2Op
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:56
Sacado::Fad::Exp::ATanOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:35
Sacado::Fad::Exp::DivisionOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:55
Sacado::Fad::Exp::PowerImpl::Nested
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:62
Sacado::Fad::Exp::FAbsOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:43
Sacado::Fad::Exp::PowerImpl::Selector::type
std::conditional< is_simd &&is_fad, NestedSimd, typename std::conditional< is_simd, Simd, typename std::conditional< is_fad, Nested, Scalar >::type >::type >::type type
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:84
Sacado::IsFad
Base template specification for whether a type is a Fad type.
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:18
Sacado::Fad::Exp::TanhOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:38
Sacado::Fad::Exp::PowerImpl::Scalar
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:64
Sacado::Fad::Exp::PowerImpl::Selector::is_fad
static constexpr bool is_fad
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:70
Sacado::Fad::Exp::Log10Op
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:28
Sacado::Fad::Exp::PowerImpl::Selector
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:67
Sacado::IsSimdType
Base template specification for IsSimdType.
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:17
Sacado::Fad::Exp::Multiplicationp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:53
Sacado::Fad::Exp::PowerImpl::Simd
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:61
T2
#define T2(r, f)
Definition:
Sacado_rad.hpp:558
Sacado::Fad::Exp::ASinOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:34
Sacado::Fad::Exp::CosOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:30
Sacado::Fad::Exp::CoshOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:36
Sacado::Fad::Exp::ACoshOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:39
Sacado::Fad::Exp::ATanhOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:41
Sacado::Fad::Exp::AdditionOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:49
Sacado::Fad::Exp::PowerImpl::NestedSimd
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:63
Sacado::Fad::Exp::SinOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:31
Sacado::Fad::Exp::TanOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:32
Sacado::Fad::Exp::UnaryMinusOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:25
T1
#define T1(r, f)
Definition:
Sacado_rad.hpp:583
Sacado::Fad::Exp::LogOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:27
Sacado::Fad::Exp::SubtractionOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:51
Sacado::Fad::Exp::UnaryPlusOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:24
E
value
int value
Definition:
gmock-matchers_test.cc:664
Sacado::Fad::Exp::CbrtOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:44
Sacado::Fad::Exp::MaxOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:57
Sacado::Fad::Exp::SafeSqrtOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:46
Sacado::Fad::Exp::AbsOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:42
Sacado::Fad::Exp::ExpOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:26
Sacado::Fad::Exp::ACosOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:33
Sacado::Fad::Exp::ASinhOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:40
Sacado::Fad::Exp::MinOp
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:58
Sacado::ValueType
Base template specification for ValueType.
Definition:
Sacado_Fad_Exp_Ops_Fwd.hpp:19
Generated on Thu Nov 21 2024 09:23:59 for Sacado Package Browser (Single Doxygen Collection) by
1.8.5