solver  1.0
NumericConstants.h
Go to the documentation of this file.
1 /*
2  This file is part of the EnergyOptimizatorOfRoboticCells program.
3 
4  EnergyOptimizatorOfRoboticCells is free software: you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation, either version 3 of the License, or
7  (at your option) any later version.
8 
9  EnergyOptimizatorOfRoboticCells is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with EnergyOptimizatorOfRoboticCells. If not, see <http://www.gnu.org/licenses/>.
16 */
17 
18 #ifndef HLIDAC_PES_NUMERIC_CONSTANTS_H
19 #define HLIDAC_PES_NUMERIC_CONSTANTS_H
20 
27 #include <cmath>
28 #include <climits>
29 
31 constexpr double TIME_TOL = 0.01;
33 constexpr double CRITERION_RTOL = 0.005;
35 constexpr double TIME_ERR = 0.001*TIME_TOL;
36 
37 constexpr double F32_INF = std::numeric_limits<float>::infinity();
38 constexpr double F32_MIN = std::numeric_limits<float>::lowest();
39 constexpr double F32_MAX = std::numeric_limits<float>::max();
40 constexpr double F32_EPS = std::numeric_limits<float>::epsilon();
41 
42 constexpr double F64_INF = std::numeric_limits<double>::infinity();
43 constexpr double F64_MIN = std::numeric_limits<double>::lowest();
44 constexpr double F64_MAX = std::numeric_limits<double>::max();
45 constexpr double F64_EPS = std::numeric_limits<double>::epsilon();
46 
47 #endif
constexpr double CRITERION_RTOL
A maximal relative tolerance of the criterion error imposed by the piece-wise linearization of energy...
constexpr double TIME_ERR
Minimal recognizable difference in the time.
constexpr double TIME_TOL
A minimal time difference that is considered significant for a solution.