Reference documentation for deal.II version 9.1.1
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
deal.II
differentiation
sd
symengine_number_traits.h
1
// ---------------------------------------------------------------------
2
//
3
// Copyright (C) 2019 by the deal.II authors
4
//
5
// This file is part of the deal.II library.
6
//
7
// The deal.II library is free software; you can use it, redistribute
8
// it, and/or modify it under the terms of the GNU Lesser General
9
// Public License as published by the Free Software Foundation; either
10
// version 2.1 of the License, or (at your option) any later version.
11
// The full text of the license can be found in the file LICENSE at
12
// the top level of the deal.II distribution.
13
//
14
// ---------------------------------------------------------------------
15
16
#ifndef dealii_differentiation_sd_symengine_number_traits_h
17
#define dealii_differentiation_sd_symengine_number_traits_h
18
19
#include <deal.II/base/config.h>
20
21
#ifdef DEAL_II_WITH_SYMENGINE
22
23
# include <symengine/expression.h>
24
25
# include <type_traits>
26
27
28
DEAL_II_NAMESPACE_OPEN
29
30
31
namespace
Differentiation
32
{
33
namespace
SD
34
{
43
template
<
typename
NumberType>
44
struct
is_sd_number
: std::false_type
45
{};
46
47
56
template
<
typename
NumberType>
57
struct
is_symengine_number
: std::false_type
58
{};
59
60
61
/*--- SymEngine Expression class ---*/
62
63
71
template
<>
72
struct
is_symengine_number
<SymEngine::
Expression
> : std::true_type
73
{};
74
75
83
template
<>
84
struct
is_sd_number
<SymEngine::
Expression
> : std::true_type
85
{};
86
87
}
// namespace SD
88
}
// namespace Differentiation
89
90
91
DEAL_II_NAMESPACE_CLOSE
92
93
#endif // DEAL_II_WITH_SYMENGINE
94
95
#endif // dealii_differentiation_sd_symengine_number_traits_h
Differentiation
Definition:
numbers.h:571
Differentiation::SD::Expression
Definition:
symengine_number_types.h:177
Differentiation::SD::is_symengine_number
Definition:
symengine_number_traits.h:57
Differentiation::SD::is_sd_number
Definition:
symengine_number_traits.h:44
Generated by
1.8.14