carl
24.04
Computer ARithmetic Library
MultivariateHornerSettings.h
Go to the documentation of this file.
1
namespace
carl
{
2
3
enum
variableSelectionHeurisics
{
4
GREEDY_I
= 0,
5
//GREEDY_I minimizes the amount of arithmetic operations as fast as possible
6
GREEDY_Is
= 1,
7
//GREEDY_Is does the same as GREEDY_I, but adds a simplifyer at the end.
8
GREEDY_II
= 2,
9
//GREEDY_II minimizes the solution space, by evaluating each monome.
10
GREEDY_IIs
= 3
11
//GREEDY_IIs does the same as GREEDY_II, but adds a simplifyer at the end.
12
};
13
14
#ifdef __VS
15
#define CONSTEXPR const
16
#else
17
#define CONSTEXPR constexpr
18
#endif
19
20
struct
strategy
21
{
22
/*
23
* selectionType determines which variable selection heuristic is used to create a horner scheme.
24
*/
25
static
CONSTEXPR
variableSelectionHeurisics
selectionType
=
GREEDY_I
;
26
27
/*
28
* defines for GREEDY_II/IIs the default value used to evaluate variables (x = [-targetDiameter,+targetDiameter])
29
*/
30
#ifdef __VS
31
static
double
targetDiameter
() {
return
0.1; }
32
#else
33
static
constexpr
double
targetDiameter
= 0.1;
34
#endif
35
36
/*
37
* Toggles a counter, that monitors the reduction of arithmetic operations by Horner schemes.
38
*/
39
static
CONSTEXPR
bool
use_arithmeticOperationsCounter
=
false
;
40
};
41
42
43
}
CONSTEXPR
#define CONSTEXPR
Definition:
MultivariateHornerSettings.h:17
carl
carl is the main namespace for the library.
carl::variableSelectionHeurisics
variableSelectionHeurisics
Definition:
MultivariateHornerSettings.h:3
carl::GREEDY_II
@ GREEDY_II
Definition:
MultivariateHornerSettings.h:8
carl::GREEDY_I
@ GREEDY_I
Definition:
MultivariateHornerSettings.h:4
carl::GREEDY_Is
@ GREEDY_Is
Definition:
MultivariateHornerSettings.h:6
carl::GREEDY_IIs
@ GREEDY_IIs
Definition:
MultivariateHornerSettings.h:10
carl::strategy
Definition:
MultivariateHornerSettings.h:21
carl::strategy::use_arithmeticOperationsCounter
static CONSTEXPR bool use_arithmeticOperationsCounter
Definition:
MultivariateHornerSettings.h:39
carl::strategy::targetDiameter
static constexpr double targetDiameter
Definition:
MultivariateHornerSettings.h:33
carl::strategy::selectionType
static CONSTEXPR variableSelectionHeurisics selectionType
Definition:
MultivariateHornerSettings.h:25
carl-arith
poly
umvpoly
functions
horner
MultivariateHornerSettings.h
Generated by
1.9.1