scs 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -0
- data/README.md +42 -13
- data/lib/scs/ffi.rb +1 -7
- data/lib/scs/matrix.rb +72 -0
- data/lib/scs/solver.rb +19 -26
- data/lib/scs/version.rb +1 -1
- data/lib/scs.rb +1 -0
- data/vendor/scs/CITATION.cff +1 -1
- data/vendor/scs/CMakeLists.txt +55 -7
- data/vendor/scs/Makefile +9 -9
- data/vendor/scs/README.md +4 -1
- data/vendor/scs/include/aa.h +1 -1
- data/vendor/scs/include/cones.h +17 -12
- data/vendor/scs/include/glbopts.h +27 -66
- data/vendor/scs/include/linalg.h +2 -1
- data/vendor/scs/include/linsys.h +13 -13
- data/vendor/scs/include/normalize.h +7 -5
- data/vendor/scs/include/rw.h +3 -3
- data/vendor/scs/include/scs.h +85 -106
- data/vendor/scs/include/scs_types.h +34 -0
- data/vendor/scs/include/scs_work.h +80 -0
- data/vendor/scs/include/util.h +3 -1
- data/vendor/scs/linsys/cpu/direct/private.c +86 -73
- data/vendor/scs/linsys/cpu/direct/private.h +2 -2
- data/vendor/scs/linsys/cpu/indirect/private.c +42 -33
- data/vendor/scs/linsys/cpu/indirect/private.h +1 -2
- data/vendor/scs/linsys/csparse.c +3 -3
- data/vendor/scs/linsys/external/amd/LICENSE.txt +0 -897
- data/vendor/scs/linsys/external/amd/SuiteSparse_config.c +9 -7
- data/vendor/scs/linsys/external/amd/SuiteSparse_config.h +1 -1
- data/vendor/scs/linsys/external/amd/amd_order.c +5 -5
- data/vendor/scs/linsys/gpu/gpu.h +8 -11
- data/vendor/scs/linsys/gpu/indirect/private.c +72 -49
- data/vendor/scs/linsys/gpu/indirect/private.h +14 -13
- data/vendor/scs/linsys/scs_matrix.c +55 -104
- data/vendor/scs/linsys/scs_matrix.h +5 -4
- data/vendor/scs/scs.mk +1 -5
- data/vendor/scs/src/aa.c +13 -8
- data/vendor/scs/src/cones.c +197 -108
- data/vendor/scs/src/linalg.c +25 -0
- data/vendor/scs/src/normalize.c +75 -26
- data/vendor/scs/src/rw.c +74 -30
- data/vendor/scs/src/scs.c +300 -264
- data/vendor/scs/src/scs_version.c +8 -6
- data/vendor/scs/src/util.c +27 -13
- data/vendor/scs/test/minunit.h +6 -1
- data/vendor/scs/test/problem_utils.h +28 -35
- data/vendor/scs/test/problems/degenerate.h +2 -1
- data/vendor/scs/test/problems/hs21_tiny_qp.h +2 -1
- data/vendor/scs/test/problems/hs21_tiny_qp_rw.h +6 -2
- data/vendor/scs/test/problems/infeasible_tiny_qp.h +2 -1
- data/vendor/scs/test/problems/qafiro_tiny_qp.h +5 -4
- data/vendor/scs/test/problems/random_prob.h +6 -2
- data/vendor/scs/test/problems/rob_gauss_cov_est.h +9 -2
- data/vendor/scs/test/problems/small_lp.h +7 -2
- data/vendor/scs/test/problems/small_qp.h +387 -0
- data/vendor/scs/test/problems/{test_fails.h → test_validation.h} +7 -4
- data/vendor/scs/test/problems/unbounded_tiny_qp.h +4 -4
- data/vendor/scs/test/random_socp_prob.c +4 -2
- data/vendor/scs/test/run_from_file.c +16 -4
- data/vendor/scs/test/run_tests.c +23 -14
- metadata +10 -35
- data/vendor/scs/linsys/cpu/direct/private.o +0 -0
- data/vendor/scs/linsys/cpu/indirect/private.o +0 -0
- data/vendor/scs/linsys/csparse.o +0 -0
- data/vendor/scs/linsys/external/amd/SuiteSparse_config.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_1.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_2.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_aat.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_control.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_defaults.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_dump.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_global.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_info.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_order.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_post_tree.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_postorder.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_preprocess.o +0 -0
- data/vendor/scs/linsys/external/amd/amd_valid.o +0 -0
- data/vendor/scs/linsys/external/qdldl/qdldl.o +0 -0
- data/vendor/scs/linsys/scs_matrix.o +0 -0
- data/vendor/scs/src/aa.o +0 -0
- data/vendor/scs/src/cones.o +0 -0
- data/vendor/scs/src/ctrlc.o +0 -0
- data/vendor/scs/src/linalg.o +0 -0
- data/vendor/scs/src/normalize.o +0 -0
- data/vendor/scs/src/rw.o +0 -0
- data/vendor/scs/src/scs.o +0 -0
- data/vendor/scs/src/scs_indir.o +0 -0
- data/vendor/scs/src/scs_version.o +0 -0
- data/vendor/scs/src/util.o +0 -0
@@ -0,0 +1,387 @@
|
|
1
|
+
#include "glbopts.h"
|
2
|
+
#include "minunit.h"
|
3
|
+
#include "problem_utils.h"
|
4
|
+
#include "scs.h"
|
5
|
+
#include "util.h"
|
6
|
+
|
7
|
+
scs_float P_x[] = {
|
8
|
+
10.74980, 1.07498, 41.62331, 0.11891, 5.80636, 0.58064, 3.13259,
|
9
|
+
0.31326, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331,
|
10
|
+
0.11891, 11.49095, 1.14910, 3.13259, 0.31326, 41.62331, 41.62331,
|
11
|
+
41.62331, 41.62331, 41.62331, 41.62331, 0.11891, 11.49095, 1.14910,
|
12
|
+
3.13259, 0.31326, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331,
|
13
|
+
41.62331, 0.11891, 11.49095, 1.14910, 50.00000, 41.62331, 41.62331,
|
14
|
+
41.62331, 41.62331, 10.40583, 10.74980, 10.74980, 1.07498, 1.07498,
|
15
|
+
50.00000, 3.13259, 3.13259, 0.31326, 0.31326, 50.00000, 41.62331,
|
16
|
+
41.62331, 50.00000, 41.62331, 41.62331, 41.62331, 25.00000, 5.80636,
|
17
|
+
0.58064, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331,
|
18
|
+
50.00000, 3.13259, 3.13259, 0.31326, 0.31326, 50.00000, 41.62331,
|
19
|
+
41.62331, 50.00000, 41.62331, 41.62331, 41.62331, 25.00000, 5.80636,
|
20
|
+
0.58064, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331,
|
21
|
+
50.00000, 3.13259, 3.13259, 0.31326, 0.31326, 50.00000, 41.62331,
|
22
|
+
41.62331, 50.00000, 41.62331, 41.62331, 41.62331, 25.00000, 5.80636,
|
23
|
+
0.58064, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331, 41.62331,
|
24
|
+
41.62331, 0.19531, 10.40583, 10.40583, 0.19531, 41.62331, 41.62331,
|
25
|
+
0.19531, 41.62331, 41.62331, 0.19531, 41.62331, 41.62331, 0.19531,
|
26
|
+
41.62331, 41.62331, 0.19531, 41.62331, 41.62331, 0.19531, 41.62331,
|
27
|
+
41.62331};
|
28
|
+
scs_int P_i[] = {
|
29
|
+
1, 2, 4, 5, 6, 7, 9, 10, 12, 14, 16, 18, 20, 22, 23,
|
30
|
+
24, 25, 27, 28, 30, 32, 34, 36, 38, 40, 41, 42, 43, 45, 46,
|
31
|
+
48, 50, 52, 54, 56, 58, 59, 60, 61, 62, 63, 65, 67, 69, 71,
|
32
|
+
1, 73, 2, 74, 75, 9, 76, 10, 77, 78, 12, 79, 80, 14, 81,
|
33
|
+
83, 84, 85, 86, 88, 90, 92, 94, 20, 96, 97, 27, 98, 28, 99,
|
34
|
+
100, 30, 101, 102, 32, 103, 105, 106, 107, 108, 110, 112, 114, 116, 38,
|
35
|
+
118, 119, 45, 120, 46, 121, 122, 48, 123, 124, 50, 125, 127, 128, 129,
|
36
|
+
130, 132, 134, 136, 63, 138, 56, 140, 141, 71, 142, 143, 16, 144, 145,
|
37
|
+
22, 146, 147, 34, 148, 149, 40, 150, 151, 52, 152, 153, 58, 154};
|
38
|
+
scs_int P_p[] = {
|
39
|
+
0, 0, 1, 2, 2, 3, 4, 5, 6, 6, 7, 8, 8, 9, 9,
|
40
|
+
10, 10, 11, 11, 12, 12, 13, 13, 14, 15, 16, 17, 17, 18, 19,
|
41
|
+
19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 26, 27, 28,
|
42
|
+
28, 29, 30, 30, 31, 31, 32, 32, 33, 33, 34, 34, 35, 35, 36,
|
43
|
+
37, 38, 39, 40, 41, 41, 42, 42, 43, 43, 44, 44, 45, 45, 47,
|
44
|
+
49, 50, 52, 54, 55, 57, 58, 60, 60, 61, 62, 63, 64, 64, 65,
|
45
|
+
65, 66, 66, 67, 67, 68, 68, 70, 71, 73, 75, 76, 78, 79, 81,
|
46
|
+
81, 82, 83, 84, 85, 85, 86, 86, 87, 87, 88, 88, 89, 89, 91,
|
47
|
+
92, 94, 96, 97, 99, 100, 102, 102, 103, 104, 105, 106, 106, 107, 107,
|
48
|
+
108, 108, 109, 109, 111, 111, 113, 114, 116, 117, 119, 120, 122, 123, 125,
|
49
|
+
126, 128, 129, 131, 132, 134};
|
50
|
+
scs_float A_x[] = {
|
51
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
52
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
53
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
54
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
55
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
56
|
+
1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
57
|
+
-1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
58
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
59
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
60
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
61
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
62
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
63
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
64
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
65
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
66
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
67
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
68
|
+
1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
69
|
+
-1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
70
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
71
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
72
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
73
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
74
|
+
1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
75
|
+
-1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
76
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
77
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
78
|
+
-1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
79
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
80
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
81
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
82
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
83
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
84
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
85
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
86
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
87
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
88
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
89
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
90
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
91
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
92
|
+
1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
93
|
+
-1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
94
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
95
|
+
1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
96
|
+
-1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
97
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
98
|
+
1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
99
|
+
-1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
100
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
101
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
102
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
103
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
104
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
105
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
106
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
107
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
108
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
109
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
110
|
+
1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
111
|
+
-1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000,
|
112
|
+
1.00000, 1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000,
|
113
|
+
1.00000, 1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000,
|
114
|
+
1.00000, 1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000,
|
115
|
+
1.00000, 1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
116
|
+
1.00000, -1.00000, 1.00000, 1.00000, 1.00000, 1.00000, 1.00000,
|
117
|
+
-1.00000, 1.00000, 1.00000};
|
118
|
+
scs_int A_i[] = {
|
119
|
+
0, 3, 34, 96, 96, 197, 96, 166, 177, 1, 3, 34, 97, 97, 199,
|
120
|
+
2, 3, 34, 98, 98, 200, 98, 167, 179, 4, 9, 34, 99, 99, 201,
|
121
|
+
99, 168, 180, 5, 9, 34, 100, 100, 203, 6, 9, 34, 101, 101, 205,
|
122
|
+
7, 9, 34, 102, 102, 207, 8, 9, 34, 103, 103, 209, 10, 13, 34,
|
123
|
+
104, 104, 216, 11, 13, 34, 105, 105, 218, 12, 13, 34, 106, 106, 220,
|
124
|
+
106, 170, 183, 14, 19, 34, 107, 107, 221, 107, 171, 184, 15, 19, 34,
|
125
|
+
108, 108, 223, 16, 19, 34, 109, 109, 225, 17, 19, 34, 110, 110, 227,
|
126
|
+
18, 19, 34, 111, 111, 229, 20, 23, 34, 112, 112, 236, 21, 23, 34,
|
127
|
+
113, 113, 238, 22, 23, 34, 114, 114, 240, 114, 173, 187, 24, 29, 34,
|
128
|
+
115, 115, 241, 115, 174, 188, 25, 29, 34, 116, 116, 243, 26, 29, 34,
|
129
|
+
117, 117, 245, 27, 29, 34, 118, 118, 247, 28, 29, 34, 119, 119, 249,
|
130
|
+
30, 33, 34, 120, 120, 257, 31, 33, 34, 121, 121, 259, 32, 33, 34,
|
131
|
+
122, 122, 261, 122, 176, 191, 35, 36, 37, 123, 123, 255, 38, 43, 80,
|
132
|
+
124, 124, 192, 39, 43, 80, 125, 125, 193, 40, 43, 80, 126, 126, 194,
|
133
|
+
41, 43, 80, 127, 127, 195, 42, 43, 80, 128, 128, 198, 128, 166, 178,
|
134
|
+
44, 49, 80, 129, 129, 202, 129, 168, 181, 45, 49, 80, 130, 130, 204,
|
135
|
+
46, 49, 80, 131, 131, 206, 47, 49, 80, 132, 132, 210, 48, 49, 80,
|
136
|
+
133, 133, 211, 133, 169, 182, 50, 55, 80, 134, 134, 212, 51, 55, 80,
|
137
|
+
135, 135, 213, 52, 55, 80, 136, 136, 214, 53, 55, 80, 137, 137, 215,
|
138
|
+
54, 55, 80, 138, 138, 217, 56, 61, 80, 139, 139, 222, 139, 171, 185,
|
139
|
+
57, 61, 80, 140, 140, 224, 58, 61, 80, 141, 141, 226, 59, 61, 80,
|
140
|
+
142, 142, 230, 60, 61, 80, 143, 143, 231, 143, 172, 186, 62, 67, 80,
|
141
|
+
144, 144, 232, 63, 67, 80, 145, 145, 233, 64, 67, 80, 146, 146, 234,
|
142
|
+
65, 67, 80, 147, 147, 235, 66, 67, 80, 148, 148, 237, 68, 73, 80,
|
143
|
+
149, 149, 242, 149, 174, 189, 69, 73, 80, 150, 150, 244, 70, 73, 80,
|
144
|
+
151, 151, 246, 71, 73, 80, 152, 152, 250, 72, 73, 80, 153, 153, 251,
|
145
|
+
153, 175, 190, 74, 79, 80, 154, 154, 252, 75, 79, 80, 155, 155, 253,
|
146
|
+
76, 79, 80, 156, 156, 254, 77, 79, 80, 157, 157, 256, 78, 79, 80,
|
147
|
+
158, 158, 258, 81, 82, 95, 159, 159, 196, 83, 84, 95, 160, 160, 208,
|
148
|
+
85, 86, 95, 161, 161, 219, 87, 88, 95, 162, 162, 228, 89, 90, 95,
|
149
|
+
163, 163, 239, 91, 92, 95, 164, 164, 248, 93, 94, 95, 165, 165, 260};
|
150
|
+
scs_int A_p[] = {
|
151
|
+
0, 4, 6, 9, 13, 15, 19, 21, 24, 28, 30, 33, 37, 39, 43,
|
152
|
+
45, 49, 51, 55, 57, 61, 63, 67, 69, 73, 75, 78, 82, 84, 87,
|
153
|
+
91, 93, 97, 99, 103, 105, 109, 111, 115, 117, 121, 123, 127, 129, 132,
|
154
|
+
136, 138, 141, 145, 147, 151, 153, 157, 159, 163, 165, 169, 171, 175, 177,
|
155
|
+
181, 183, 186, 190, 192, 196, 198, 202, 204, 208, 210, 214, 216, 220, 222,
|
156
|
+
225, 229, 231, 234, 238, 240, 244, 246, 250, 252, 256, 258, 261, 265, 267,
|
157
|
+
271, 273, 277, 279, 283, 285, 289, 291, 295, 297, 300, 304, 306, 310, 312,
|
158
|
+
316, 318, 322, 324, 327, 331, 333, 337, 339, 343, 345, 349, 351, 355, 357,
|
159
|
+
361, 363, 366, 370, 372, 376, 378, 382, 384, 388, 390, 393, 397, 399, 403,
|
160
|
+
405, 409, 411, 415, 417, 421, 423, 427, 429, 433, 435, 439, 441, 445, 447,
|
161
|
+
451, 453, 457, 459, 463, 465};
|
162
|
+
scs_int n = 155;
|
163
|
+
scs_int m = 262;
|
164
|
+
scs_float l[] = {
|
165
|
+
30.00000, 30.00000, 59.00000, 119.00000, 30.00000, 30.00000,
|
166
|
+
30.00000, 30.00000, 30.00000, 150.00000, 30.00000, 30.00000,
|
167
|
+
59.00000, 119.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
168
|
+
30.00000, 150.00000, 30.00000, 30.00000, 59.00000, 119.00000,
|
169
|
+
30.00000, 30.00000, 30.00000, 30.00000, 30.00000, 150.00000,
|
170
|
+
30.00000, 30.00000, 59.00000, 119.00000, 926.00000, 31.00000,
|
171
|
+
31.00000, 31.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
172
|
+
30.00000, 150.00000, 31.00000, 31.00000, 31.00000, 30.00000,
|
173
|
+
28.00000, 151.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
174
|
+
30.00000, 150.00000, 31.00000, 31.00000, 31.00000, 30.00000,
|
175
|
+
28.00000, 151.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
176
|
+
30.00000, 150.00000, 31.00000, 31.00000, 31.00000, 30.00000,
|
177
|
+
28.00000, 151.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
178
|
+
30.00000, 150.00000, 1053.00000, 16.00000, 16.00000, 16.00000,
|
179
|
+
16.00000, 16.00000, 16.00000, 16.00000, 16.00000, 16.00000,
|
180
|
+
16.00000, 16.00000, 16.00000, 16.00000, 16.00000, 112.00000,
|
181
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
182
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
183
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
184
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
185
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
186
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
187
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
188
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
189
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
190
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
191
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
192
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
193
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
194
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
195
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
196
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
197
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
198
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
199
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
200
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
201
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
202
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
203
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
204
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
205
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
206
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
207
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
208
|
+
0.00000, 0.00000, 0.00000, 0.00000};
|
209
|
+
scs_float u[] = {
|
210
|
+
30.00000, 30.00000, 59.00000, 119.00000, 30.00000, 30.00000,
|
211
|
+
30.00000, 30.00000, 30.00000, 150.00000, 30.00000, 30.00000,
|
212
|
+
59.00000, 119.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
213
|
+
30.00000, 150.00000, 30.00000, 30.00000, 59.00000, 119.00000,
|
214
|
+
30.00000, 30.00000, 30.00000, 30.00000, 30.00000, 150.00000,
|
215
|
+
30.00000, 30.00000, 59.00000, 119.00000, 926.00000, 31.00000,
|
216
|
+
31.00000, 31.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
217
|
+
30.00000, 150.00000, 31.00000, 31.00000, 31.00000, 30.00000,
|
218
|
+
28.00000, 151.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
219
|
+
30.00000, 150.00000, 31.00000, 31.00000, 31.00000, 30.00000,
|
220
|
+
28.00000, 151.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
221
|
+
30.00000, 150.00000, 31.00000, 31.00000, 31.00000, 30.00000,
|
222
|
+
28.00000, 151.00000, 30.00000, 30.00000, 30.00000, 30.00000,
|
223
|
+
30.00000, 150.00000, 1053.00000, 36.00000, 17.00000, 36.00000,
|
224
|
+
17.00000, 36.00000, 17.00000, 36.00000, 17.00000, 36.00000,
|
225
|
+
17.00000, 36.00000, 17.00000, 36.00000, 17.00000, 112.00000,
|
226
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
227
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
228
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
229
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
230
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
231
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
232
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
233
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
234
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
235
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
236
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
237
|
+
0.00000, 0.00000, 0.00000, 0.00000, 30.00000, 28.00000,
|
238
|
+
54.00000, 52.00000, 28.00000, 54.00000, 52.00000, 28.00000,
|
239
|
+
52.00000, 52.00000, 28.00000, 96.00000, 96.00000, 96.00000,
|
240
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
241
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
242
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
243
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
244
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
245
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
246
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
247
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
248
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
249
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
250
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
251
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
252
|
+
96.00000, 96.00000, 96.00000, 96.00000, 96.00000, 96.00000,
|
253
|
+
96.00000, 96.00000, 96.00000, 96.00000};
|
254
|
+
scs_float c[] = {0.00000, 0.00000, -35.02643, 0.00000, 0.00000,
|
255
|
+
-3.56718, 0.00000, -17.41907, 0.00000, 0.00000,
|
256
|
+
-17.64691, 0.00000, 0.00000, 0.00000, 0.00000,
|
257
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
258
|
+
0.00000, 0.00000, 0.00000, -3.56718, 0.00000,
|
259
|
+
-32.17466, 0.00000, 0.00000, -17.64691, 0.00000,
|
260
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
261
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
262
|
+
0.00000, -3.56718, 0.00000, -32.17466, 0.00000,
|
263
|
+
0.00000, -17.07260, 0.00000, 0.00000, 0.00000,
|
264
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
265
|
+
0.00000, 0.00000, 0.00000, 0.00000, -3.56718,
|
266
|
+
0.00000, -32.17466, -1600.00000, 0.00000, 0.00000,
|
267
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
268
|
+
0.00000, 0.00000, 0.00000, 0.00000, -35.02643,
|
269
|
+
-1500.00000, 0.00000, -17.64691, -1500.00000, 0.00000,
|
270
|
+
-1500.00000, 0.00000, 0.00000, 0.00000, -750.00000,
|
271
|
+
0.00000, -31.69304, 0.00000, 0.00000, 0.00000,
|
272
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
273
|
+
0.00000, 0.00000, -1500.00000, 0.00000, -17.64691,
|
274
|
+
-1500.00000, 0.00000, -1500.00000, 0.00000, 0.00000,
|
275
|
+
0.00000, -750.00000, 0.00000, -31.69304, 0.00000,
|
276
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
277
|
+
0.00000, 0.00000, 0.00000, 0.00000, -1500.00000,
|
278
|
+
0.00000, -17.07260, -1500.00000, 0.00000, -1500.00000,
|
279
|
+
0.00000, 0.00000, 0.00000, -750.00000, 0.00000,
|
280
|
+
-31.69304, 0.00000, 0.00000, 0.00000, 0.00000,
|
281
|
+
0.00000, 0.00000, 0.00000, 0.00000, 0.00000,
|
282
|
+
0.00000, -3.90625, 0.00000, -3.90625, 0.00000,
|
283
|
+
-3.90625, 0.00000, -3.90625, 0.00000, -3.90625,
|
284
|
+
0.00000, -3.90625, 0.00000, -3.90625, 0.00000};
|
285
|
+
scs_int A_nnz = 465;
|
286
|
+
|
287
|
+
static const char *small_qp(void) {
|
288
|
+
ScsCone *k = (ScsCone *)scs_calloc(1, sizeof(ScsCone));
|
289
|
+
ScsData *d = (ScsData *)scs_calloc(1, sizeof(ScsData));
|
290
|
+
ScsSettings *stgs = (ScsSettings *)scs_calloc(1, sizeof(ScsSettings));
|
291
|
+
ScsSolution *sol = (ScsSolution *)scs_calloc(1, sizeof(ScsSolution));
|
292
|
+
ScsInfo info = {0};
|
293
|
+
scs_int success, exitflag;
|
294
|
+
scs_int j;
|
295
|
+
const char *fail;
|
296
|
+
|
297
|
+
d->m = m + 1; /* t var in box cone */
|
298
|
+
d->n = n;
|
299
|
+
d->b = (scs_float *)scs_calloc(m + 1, sizeof(scs_float));
|
300
|
+
d->b[0] = 1; /* t var in box cone */
|
301
|
+
d->c = c;
|
302
|
+
|
303
|
+
d->A = (ScsMatrix *)scs_calloc(1, sizeof(ScsMatrix));
|
304
|
+
d->A->m = m + 1; /* t var in box cone */
|
305
|
+
d->A->n = n;
|
306
|
+
d->A->x = A_x;
|
307
|
+
d->A->i = A_i;
|
308
|
+
d->A->p = A_p;
|
309
|
+
|
310
|
+
/* Ax + s = b, s \in box, need to negate A */
|
311
|
+
for (j = 0; j < A_nnz; ++j) {
|
312
|
+
d->A->x[j] *= -1;
|
313
|
+
}
|
314
|
+
/* need to add row of all zeros to top of A */
|
315
|
+
for (j = 0; j < A_nnz; ++j) {
|
316
|
+
d->A->i[j] += 1;
|
317
|
+
}
|
318
|
+
|
319
|
+
d->P = (ScsMatrix *)scs_calloc(1, sizeof(ScsMatrix));
|
320
|
+
d->P->m = n;
|
321
|
+
d->P->n = n;
|
322
|
+
d->P->x = P_x;
|
323
|
+
d->P->i = P_i;
|
324
|
+
d->P->p = P_p;
|
325
|
+
|
326
|
+
k->bu = u;
|
327
|
+
k->bl = l;
|
328
|
+
k->bsize = m + 1; /* t var in box cone */
|
329
|
+
|
330
|
+
scs_set_default_settings(stgs);
|
331
|
+
stgs->eps_abs = 1e-6;
|
332
|
+
stgs->eps_rel = 1e-6;
|
333
|
+
stgs->eps_infeas = 1e-10;
|
334
|
+
|
335
|
+
ScsWork *w = scs_init(d, k, stgs);
|
336
|
+
exitflag = scs_solve(w, sol, &info, 0);
|
337
|
+
success = exitflag == SCS_SOLVED;
|
338
|
+
|
339
|
+
mu_assert("small_qp: SCS failed to produce outputflag SCS_SOLVED", success);
|
340
|
+
fail = verify_solution_correct(d, k, stgs, &info, sol, exitflag);
|
341
|
+
if (fail)
|
342
|
+
return fail;
|
343
|
+
|
344
|
+
/* test updating c */
|
345
|
+
d->c[0] = 1.0; /* set to new value */
|
346
|
+
scs_update(w, SCS_NULL, d->c);
|
347
|
+
exitflag = scs_solve(w, sol, &info, 1);
|
348
|
+
success = exitflag == SCS_SOLVED;
|
349
|
+
|
350
|
+
mu_assert("small_qp: SCS failed to produce outputflag SCS_SOLVED", success);
|
351
|
+
fail = verify_solution_correct(d, k, stgs, &info, sol, exitflag);
|
352
|
+
if (fail)
|
353
|
+
return fail;
|
354
|
+
|
355
|
+
/* test updating b */
|
356
|
+
d->b[0] = 4.0; /* set to new value */
|
357
|
+
scs_update(w, d->b, SCS_NULL);
|
358
|
+
exitflag = scs_solve(w, sol, &info, 1);
|
359
|
+
success = exitflag == SCS_SOLVED;
|
360
|
+
|
361
|
+
mu_assert("small_qp: SCS failed to produce outputflag SCS_SOLVED", success);
|
362
|
+
fail = verify_solution_correct(d, k, stgs, &info, sol, exitflag);
|
363
|
+
if (fail)
|
364
|
+
return fail;
|
365
|
+
|
366
|
+
/* revert back to original data */
|
367
|
+
d->c[0] = 0.0; /* revert to original value */
|
368
|
+
d->b[0] = 1.0; /* revert to original value */
|
369
|
+
scs_update(w, d->b, d->c);
|
370
|
+
exitflag = scs_solve(w, sol, &info, 1);
|
371
|
+
success = exitflag == SCS_SOLVED;
|
372
|
+
|
373
|
+
mu_assert("small_qp: SCS failed to produce outputflag SCS_SOLVED", success);
|
374
|
+
fail = verify_solution_correct(d, k, stgs, &info, sol, exitflag);
|
375
|
+
|
376
|
+
scs_finish(w);
|
377
|
+
|
378
|
+
scs_free(d->A);
|
379
|
+
scs_free(d->P);
|
380
|
+
scs_free(d->b);
|
381
|
+
scs_free(k);
|
382
|
+
scs_free(d);
|
383
|
+
scs_free(stgs);
|
384
|
+
SCS(free_sol)(sol);
|
385
|
+
|
386
|
+
return fail;
|
387
|
+
}
|
@@ -4,8 +4,8 @@
|
|
4
4
|
#include "scs.h"
|
5
5
|
#include "util.h"
|
6
6
|
|
7
|
-
static const char *
|
8
|
-
scs_printf("Testing that SCS handles bad inputs correctly
|
7
|
+
static const char *test_validation(void) {
|
8
|
+
scs_printf("Testing that SCS handles bad inputs correctly:\n");
|
9
9
|
|
10
10
|
ScsCone *k = (ScsCone *)scs_calloc(1, sizeof(ScsCone));
|
11
11
|
ScsData *d = (ScsData *)scs_calloc(1, sizeof(ScsData));
|
@@ -27,7 +27,7 @@ static const char *test_fails(void) {
|
|
27
27
|
d->m = m;
|
28
28
|
d->n = n;
|
29
29
|
gen_random_prob_data(nnz, col_nnz, d, k, opt_sol, seed);
|
30
|
-
|
30
|
+
scs_set_default_settings(stgs);
|
31
31
|
|
32
32
|
/* TODO test more failure modes */
|
33
33
|
stgs->eps_abs = -1;
|
@@ -36,8 +36,11 @@ static const char *test_fails(void) {
|
|
36
36
|
|
37
37
|
mu_assert("test_fails: SCS failed to produce outputflag SCS_FAILED",
|
38
38
|
exitflag == SCS_FAILED);
|
39
|
-
SCS(free_data)(d
|
39
|
+
SCS(free_data)(d);
|
40
|
+
SCS(free_cone)(k);
|
40
41
|
SCS(free_sol)(sol);
|
41
42
|
SCS(free_sol)(opt_sol);
|
43
|
+
scs_free(stgs);
|
44
|
+
|
42
45
|
return 0;
|
43
46
|
}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
#include "glbopts.h"
|
2
2
|
#include "linalg.h"
|
3
3
|
#include "minunit.h"
|
4
|
+
#include "problem_utils.h"
|
4
5
|
#include "scs.h"
|
5
6
|
#include "scs_matrix.h"
|
6
7
|
#include "util.h"
|
@@ -60,7 +61,7 @@ static const char *unbounded_tiny_qp(void) {
|
|
60
61
|
|
61
62
|
k->l = l;
|
62
63
|
|
63
|
-
|
64
|
+
scs_set_default_settings(stgs);
|
64
65
|
stgs->eps_abs = 1e-6;
|
65
66
|
stgs->eps_rel = 1e-6;
|
66
67
|
stgs->eps_infeas = 1e-7;
|
@@ -73,10 +74,9 @@ static const char *unbounded_tiny_qp(void) {
|
|
73
74
|
fail = verify_solution_correct(d, k, stgs, &info, sol, exitflag);
|
74
75
|
|
75
76
|
SCS(free_sol)(sol);
|
76
|
-
|
77
|
-
scs_free(d->P);
|
78
|
-
scs_free(k);
|
77
|
+
SCS(free_cone)(k);
|
79
78
|
scs_free(stgs);
|
79
|
+
scs_free(d->A);
|
80
80
|
scs_free(d);
|
81
81
|
return fail;
|
82
82
|
}
|
@@ -146,7 +146,7 @@ int main(int argc, char **argv) {
|
|
146
146
|
d->m = m;
|
147
147
|
d->n = n;
|
148
148
|
gen_random_prob_data(nnz, col_nnz, d, k, opt_sol, seed);
|
149
|
-
|
149
|
+
scs_set_default_settings(stgs);
|
150
150
|
|
151
151
|
/* stgs->write_data_filename = "random_socp_prob"; */
|
152
152
|
|
@@ -164,9 +164,11 @@ int main(int argc, char **argv) {
|
|
164
164
|
scs_printf("scs dua obj = %4f\n", -SCS(dot)(d->b, sol->y, d->m));
|
165
165
|
}
|
166
166
|
|
167
|
-
SCS(free_data)(d
|
167
|
+
SCS(free_data)(d);
|
168
|
+
SCS(free_cone)(k);
|
168
169
|
SCS(free_sol)(sol);
|
169
170
|
SCS(free_sol)(opt_sol);
|
171
|
+
scs_free(stgs);
|
170
172
|
|
171
173
|
return 0;
|
172
174
|
}
|
@@ -61,18 +61,30 @@ int main(int argc, char **argv) {
|
|
61
61
|
for (i = 2; i < argc; i += 2) {
|
62
62
|
if (argc < i + 2) {
|
63
63
|
scs_printf("Incorrect number of arguments supplied\n.");
|
64
|
-
|
64
|
+
|
65
|
+
SCS(free_data)(d);
|
66
|
+
SCS(free_cone)(k);
|
67
|
+
scs_free(stgs);
|
68
|
+
|
65
69
|
return -1;
|
66
70
|
}
|
67
71
|
if (override_setting(stgs, argv[i], argv[i + 1]) < 0) {
|
68
72
|
scs_printf("Unrecognized setting %s\n", argv[i]);
|
69
|
-
|
73
|
+
|
74
|
+
SCS(free_data)(d);
|
75
|
+
SCS(free_cone)(k);
|
76
|
+
scs_free(stgs);
|
77
|
+
|
70
78
|
return -1;
|
71
79
|
}
|
72
80
|
}
|
73
|
-
sol = scs_calloc(1, sizeof(ScsSolution));
|
81
|
+
sol = (ScsSolution *)scs_calloc(1, sizeof(ScsSolution));
|
74
82
|
scs(d, k, stgs, sol, &info);
|
75
|
-
|
83
|
+
|
84
|
+
SCS(free_data)(d);
|
85
|
+
SCS(free_cone)(k);
|
76
86
|
SCS(free_sol)(sol);
|
87
|
+
scs_free(stgs);
|
88
|
+
|
77
89
|
return 0;
|
78
90
|
}
|
data/vendor/scs/test/run_tests.c
CHANGED
@@ -11,34 +11,43 @@
|
|
11
11
|
#include "problems/hs21_tiny_qp_rw.h"
|
12
12
|
#include "problems/infeasible_tiny_qp.h"
|
13
13
|
#include "problems/qafiro_tiny_qp.h"
|
14
|
-
#include "problems/random_prob.h"
|
15
|
-
#include "problems/rob_gauss_cov_est.h"
|
16
14
|
#include "problems/small_lp.h"
|
17
|
-
#include "problems/
|
15
|
+
#include "problems/small_qp.h"
|
16
|
+
#include "problems/test_validation.h"
|
18
17
|
#include "problems/unbounded_tiny_qp.h"
|
19
18
|
|
19
|
+
#define _SKIP(problem) \
|
20
|
+
char *problem(void) { \
|
21
|
+
scs_printf("skipped\n"); \
|
22
|
+
return 0; \
|
23
|
+
}
|
24
|
+
|
25
|
+
#ifdef USE_LAPACK /* solve SDPs, requires blas / lapack */
|
26
|
+
#include "problems/rob_gauss_cov_est.h"
|
27
|
+
#else
|
28
|
+
_SKIP(rob_gauss_cov_est)
|
29
|
+
#endif
|
30
|
+
|
31
|
+
/* TODO: this reads a file written with 32bit ints */
|
32
|
+
#if defined(USE_LAPACK) && !defined(DLONG)
|
33
|
+
#include "problems/random_prob.h"
|
34
|
+
#else
|
35
|
+
_SKIP(random_prob)
|
36
|
+
#endif
|
37
|
+
|
20
38
|
int tests_run = 0;
|
21
39
|
|
22
40
|
static const char *all_tests(void) {
|
23
|
-
|
24
|
-
mu_run_test(test_fails);
|
25
|
-
scs_printf("degenerate\n");
|
41
|
+
mu_run_test(test_validation);
|
26
42
|
mu_run_test(degenerate);
|
27
|
-
scs_printf("small_lp\n");
|
28
43
|
mu_run_test(small_lp);
|
29
|
-
|
44
|
+
mu_run_test(small_qp);
|
30
45
|
mu_run_test(rob_gauss_cov_est);
|
31
|
-
scs_printf("hs21_tiny_qp\n");
|
32
46
|
mu_run_test(hs21_tiny_qp);
|
33
|
-
scs_printf("hs21_tiny_qp_rw\n");
|
34
47
|
mu_run_test(hs21_tiny_qp_rw);
|
35
|
-
scs_printf("qafiro_tiny_qp\n");
|
36
48
|
mu_run_test(qafiro_tiny_qp);
|
37
|
-
scs_printf("infeasible_tiny_qp\n");
|
38
49
|
mu_run_test(infeasible_tiny_qp);
|
39
|
-
scs_printf("unbounded_tiny_qp\n");
|
40
50
|
mu_run_test(unbounded_tiny_qp);
|
41
|
-
scs_printf("random_prob\n");
|
42
51
|
mu_run_test(random_prob);
|
43
52
|
return 0;
|
44
53
|
}
|