/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() { return 0; }
16 static constexpr int one() { return 1; }
17 static constexpr int max() { return std::numeric_limits<int>::max(); }
18 static constexpr int min() { return std::numeric_limits<int>::min(); }
19};
20
21template <>
22struct DTraits<double>
23{
24 static constexpr double zero() { return 0.0; }
25 static constexpr double one() { return 1.0; }
26 static constexpr double max() { return std::numeric_limits<double>::max(); }
27 static constexpr double min() { return std::numeric_limits<double>::min(); }
28 static constexpr double eps()
29 {
30 return std::numeric_limits<double>::epsilon();
31 }
32};
33
34template <>
35struct DTraits<float>
36{
37 static constexpr float zero() { return 0.0F; }
38 static constexpr float one() { return 1.0F; }
39 static constexpr float max() { return std::numeric_limits<float>::max(); }
40 static constexpr float min() { return std::numeric_limits<float>::min(); }
41 static constexpr float eps()
42 {
43 return std::numeric_limits<float>::epsilon();
44 }
45};
46
47} // namespace amr_wind::vs
48
49#endif /* VSTRAITS_H */
Definition tensor.H:8
static constexpr double zero()
Definition vstraits.H:24
static constexpr double min()
Definition vstraits.H:27
static constexpr double one()
Definition vstraits.H:25
static constexpr double max()
Definition vstraits.H:26
static constexpr double eps()
Definition vstraits.H:28
static constexpr float eps()
Definition vstraits.H:41
static constexpr float zero()
Definition vstraits.H:37
static constexpr float one()
Definition vstraits.H:38
static constexpr float min()
Definition vstraits.H:40
static constexpr float max()
Definition vstraits.H:39
static constexpr int min()
Definition vstraits.H:18
static constexpr int max()
Definition vstraits.H:17
static constexpr int zero()
Definition vstraits.H:15
static constexpr int one()
Definition vstraits.H:16
Definition vstraits.H:10