QPALM
A proximal augmented Lagrangian method for QPs.
include
constants.h
Go to the documentation of this file.
1
7
#ifndef CONSTANTS_H
8
#define CONSTANTS_H
9
10
#ifdef __cplusplus
11
extern
"C"
{
12
#endif // ifdef __cplusplus
13
18
#define TRUE 1
19
#define FALSE 0
20
30
#define QPALM_SOLVED (1)
31
#define QPALM_DUAL_TERMINATED (2)
32
#define QPALM_MAX_ITER_REACHED (-2)
33
#define QPALM_PRIMAL_INFEASIBLE (-3)
34
#define QPALM_DUAL_INFEASIBLE (-4)
35
#define QPALM_TIME_LIMIT_REACHED (-5)
36
#define QPALM_UNSOLVED (-10)
37
#define QPALM_ERROR (0)
48
/**********************************
49
* Solver Parameters and Settings *
50
**********************************/
51
52
#ifndef QPALM_NULL
53
#define QPALM_NULL 0
54
#endif
/* ifndef QPALM_NULL */
55
56
#ifndef QPALM_NAN
57
#define QPALM_NAN ((c_float)0x7fc00000UL)
58
#endif
/* ifndef QPALM_NAN */
59
60
#ifndef QPALM_INFTY
61
#define QPALM_INFTY ((c_float)1e20)
62
#endif
/* ifndef QPALM_INFTY */
63
64
65
#define MAX_ITER (10000)
66
#define INNER_MAX_ITER (100)
67
#define EPS_ABS (1e-4)
68
#define EPS_REL (1e-4)
69
#define EPS_ABS_IN (1)
70
#define EPS_REL_IN (1)
71
#define RHO (0.1)
72
#define EPS_PRIM_INF (1e-5)
73
#define EPS_DUAL_INF (1e-5)
74
#define THETA (0.25)
75
#define DELTA (100)
76
#define SIGMA_MAX (1e9)
77
#define SIGMA_INIT (2e1)
78
#define PROXIMAL (TRUE)
79
#define GAMMA_INIT (1E7)
80
#define GAMMA_UPD (10)
81
#define GAMMA_MAX (1E7)
83
#define SCALING (10)
84
#define MIN_SCALING (1e-12)
85
#define MAX_SCALING (1e+04)
86
87
#define NONCONVEX (FALSE)
88
#define WARM_START (FALSE)
89
#define VERBOSE (TRUE)
90
#define PRINT_ITER (1)
92
#define RESET_NEWTON_ITER (10000)
94
#define ENABLE_DUAL_TERMINATION (FALSE)
95
#define DUAL_OBJECTIVE_LIMIT (QPALM_INFTY)
96
#define TIME_LIMIT (QPALM_INFTY)
98
#define MAX_RANK_UPDATE 160
99
#define MAX_RANK_UPDATE_FRACTION 0.1
101
#define RELATIVE_REFINEMENT_TOLERANCE 1e-10
102
#define ABSOLUTE_REFINEMENT_TOLERANCE 1e-12
103
#define MAX_REFINEMENT_ITERATIONS 3
105
/* Options for settings->factorization_method */
106
#define FACTORIZE_KKT 0
107
#define FACTORIZE_SCHUR 1
108
#define FACTORIZE_KKT_OR_SCHUR 2
110
#define FACTORIZATION_METHOD FACTORIZE_KKT_OR_SCHUR
112
#ifdef USE_LADEL
113
#include "ladel.h"
114
#define ORDERING AMD
115
#elif defined USE_CHOLMOD
116
#define ORDERING 0
117
#endif
118
124
#ifdef __cplusplus
125
}
126
#endif // __cplusplus
127
128
#endif // ifndef CONSTANTS_H
Generated by
1.8.15