/home/runner/work/amr-wind/amr-wind/amr-wind/core/vs/vstraits.H Source File

AMR-Wind API: /home/runner/work/amr-wind/amr-wind/amr-wind/core/vs/vstraits.H Source File
AMR-Wind API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
vstraits.H
Go to the documentation of this file.
1#ifndef VSTRAITS_H
2#define VSTRAITS_H
3
4#include <limits>
5
6namespace amr_wind::vs {
7
8template <typename T>
9struct DTraits
10{};
11
12template <>
13struct DTraits<int>
14{
15 static constexpr int zero() noexcept { return 0; }
16 static constexpr int one() noexcept { return 1; }
17 static constexpr int max() noexcept
18 {
19 return std::numeric_limits<int>::max();
20 }
21 static constexpr int min() noexcept
22 {
23 return std::numeric_limits<int>::min();
24 }
25};
26
27template <>
28struct DTraits<double>
29{
30 static constexpr double zero() noexcept { return 0.0; }
31 static constexpr double one() noexcept { return 1.0; }
32 static constexpr double max() noexcept
33 {
34 return std::numeric_limits<double>::max();
35 }
36 static constexpr double min() noexcept
37 {
38 return std::numeric_limits<double>::min();
39 }
40 static constexpr double eps() noexcept
41 {
42 return std::numeric_limits<double>::epsilon();
43 }
44};
45
46template <>
47struct DTraits<float>
48{
49 static constexpr float zero() noexcept { return 0.0F; }
50 static constexpr float one() noexcept { return 1.0F; }
51 static constexpr float max() noexcept
52 {
53 return std::numeric_limits<float>::max();
54 }
55 static constexpr float min() noexcept
56 {
57 return std::numeric_limits<float>::min();
58 }
59 static constexpr float eps() noexcept
60 {
61 return std::numeric_limits<float>::epsilon();
62 }
63};
64
65} // namespace amr_wind::vs
66
67#endif /* VSTRAITS_H */
Definition tensor.H:8
static constexpr double eps() noexcept
Definition vstraits.H:40
static constexpr double min() noexcept
Definition vstraits.H:36
static constexpr double zero() noexcept
Definition vstraits.H:30
static constexpr double one() noexcept
Definition vstraits.H:31
static constexpr double max() noexcept
Definition vstraits.H:32
static constexpr float one() noexcept
Definition vstraits.H:50
static constexpr float eps() noexcept
Definition vstraits.H:59
static constexpr float zero() noexcept
Definition vstraits.H:49
static constexpr float min() noexcept
Definition vstraits.H:55
static constexpr float max() noexcept
Definition vstraits.H:51
static constexpr int one() noexcept
Definition vstraits.H:16
static constexpr int zero() noexcept
Definition vstraits.H:15
static constexpr int max() noexcept
Definition vstraits.H:17
static constexpr int min() noexcept
Definition vstraits.H:21
Definition vstraits.H:10