scs 0.2.1 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +16 -0
- data/LICENSE.txt +18 -18
- data/README.md +12 -7
- data/lib/scs/ffi.rb +30 -13
- data/lib/scs/solver.rb +32 -14
- data/lib/scs/version.rb +1 -1
- data/vendor/scs/CITATION.cff +39 -0
- data/vendor/scs/CMakeLists.txt +272 -0
- data/vendor/scs/Makefile +24 -15
- data/vendor/scs/README.md +8 -216
- data/vendor/scs/include/aa.h +67 -23
- data/vendor/scs/include/cones.h +17 -17
- data/vendor/scs/include/glbopts.h +98 -32
- data/vendor/scs/include/linalg.h +2 -4
- data/vendor/scs/include/linsys.h +58 -44
- data/vendor/scs/include/normalize.h +3 -3
- data/vendor/scs/include/rw.h +8 -2
- data/vendor/scs/include/scs.h +293 -133
- data/vendor/scs/include/util.h +3 -15
- data/vendor/scs/linsys/cpu/direct/private.c +220 -224
- data/vendor/scs/linsys/cpu/direct/private.h +13 -7
- data/vendor/scs/linsys/cpu/indirect/private.c +177 -110
- data/vendor/scs/linsys/cpu/indirect/private.h +8 -4
- data/vendor/scs/linsys/csparse.c +87 -0
- data/vendor/scs/linsys/csparse.h +34 -0
- data/vendor/scs/linsys/external/amd/SuiteSparse_config.c +1 -1
- data/vendor/scs/linsys/external/amd/amd_internal.h +1 -1
- data/vendor/scs/linsys/external/qdldl/changes +2 -0
- data/vendor/scs/linsys/external/qdldl/qdldl.c +29 -46
- data/vendor/scs/linsys/external/qdldl/qdldl.h +33 -41
- data/vendor/scs/linsys/external/qdldl/qdldl_types.h +11 -3
- data/vendor/scs/linsys/gpu/gpu.c +58 -21
- data/vendor/scs/linsys/gpu/gpu.h +66 -28
- data/vendor/scs/linsys/gpu/indirect/private.c +368 -154
- data/vendor/scs/linsys/gpu/indirect/private.h +26 -12
- data/vendor/scs/linsys/scs_matrix.c +498 -0
- data/vendor/scs/linsys/scs_matrix.h +70 -0
- data/vendor/scs/scs.mk +13 -9
- data/vendor/scs/src/aa.c +384 -109
- data/vendor/scs/src/cones.c +440 -353
- data/vendor/scs/src/ctrlc.c +15 -5
- data/vendor/scs/src/linalg.c +84 -28
- data/vendor/scs/src/normalize.c +22 -64
- data/vendor/scs/src/rw.c +161 -22
- data/vendor/scs/src/scs.c +768 -561
- data/vendor/scs/src/scs_version.c +9 -3
- data/vendor/scs/src/util.c +37 -106
- data/vendor/scs/test/minunit.h +17 -8
- data/vendor/scs/test/problem_utils.h +176 -14
- data/vendor/scs/test/problems/degenerate.h +130 -0
- data/vendor/scs/test/problems/hs21_tiny_qp.h +124 -0
- data/vendor/scs/test/problems/hs21_tiny_qp_rw.h +116 -0
- data/vendor/scs/test/problems/infeasible_tiny_qp.h +100 -0
- data/vendor/scs/test/problems/qafiro_tiny_qp.h +199 -0
- data/vendor/scs/test/problems/random_prob +0 -0
- data/vendor/scs/test/problems/random_prob.h +45 -0
- data/vendor/scs/test/problems/rob_gauss_cov_est.h +188 -31
- data/vendor/scs/test/problems/small_lp.h +13 -14
- data/vendor/scs/test/problems/test_fails.h +43 -0
- data/vendor/scs/test/problems/unbounded_tiny_qp.h +82 -0
- data/vendor/scs/test/random_socp_prob.c +54 -53
- data/vendor/scs/test/rng.h +109 -0
- data/vendor/scs/test/run_from_file.c +19 -10
- data/vendor/scs/test/run_tests.c +27 -3
- metadata +25 -97
- data/vendor/scs/linsys/amatrix.c +0 -305
- data/vendor/scs/linsys/amatrix.h +0 -36
- data/vendor/scs/linsys/amatrix.o +0 -0
- data/vendor/scs/linsys/cpu/direct/private.o +0 -0
- data/vendor/scs/linsys/cpu/indirect/private.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/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_version.o +0 -0
- data/vendor/scs/src/util.o +0 -0
- data/vendor/scs/test/data/small_random_socp +0 -0
- data/vendor/scs/test/problems/small_random_socp.h +0 -33
- data/vendor/scs/test/run_tests +0 -2
@@ -0,0 +1,109 @@
|
|
1
|
+
/* This program by D E Knuth is in the public domain and freely copyable
|
2
|
+
* AS LONG AS YOU MAKE ABSOLUTELY NO CHANGES!
|
3
|
+
* It is explained in Seminumerical Algorithms, 3rd edition, Section 3.6
|
4
|
+
* (or in the errata to the 2nd edition --- see
|
5
|
+
* http://www-cs-faculty.stanford.edu/~knuth/taocp.html
|
6
|
+
* in the changes to Volume 2 on pages 171 and following). */
|
7
|
+
|
8
|
+
/* N.B. The MODIFICATIONS introduced in the 9th printing (2002) are
|
9
|
+
included here; there's no backwards compatibility with the original. */
|
10
|
+
|
11
|
+
/* This version also adopts Brendan McKay's suggestion to
|
12
|
+
accommodate naive users who forget to call ran_start(seed). */
|
13
|
+
|
14
|
+
/* If you find any bugs, please report them immediately to
|
15
|
+
* taocp@cs.stanford.edu
|
16
|
+
* (and you will be rewarded if the bug is genuine). Thanks! */
|
17
|
+
|
18
|
+
/************ see the book for explanations and caveats! *******************/
|
19
|
+
/************ in particular, you need two's complement arithmetic **********/
|
20
|
+
|
21
|
+
#define KK 100 /* the long lag */
|
22
|
+
#define LL 37 /* the short lag */
|
23
|
+
#define MM (1L << 30) /* the modulus */
|
24
|
+
#define mod_diff(x, y) (((x) - (y)) & (MM - 1)) /* subtraction mod MM */
|
25
|
+
|
26
|
+
long ran_x[KK]; /* the generator state */
|
27
|
+
|
28
|
+
#ifdef __STDC__
|
29
|
+
void ran_array(long aa[], int n)
|
30
|
+
#else
|
31
|
+
void ran_array(aa, n) /* put n new random numbers in aa */
|
32
|
+
long *aa; /* destination */
|
33
|
+
int n; /* array length (must be at least KK) */
|
34
|
+
#endif
|
35
|
+
{
|
36
|
+
register int i, j;
|
37
|
+
for (j = 0; j < KK; j++)
|
38
|
+
aa[j] = ran_x[j];
|
39
|
+
for (; j < n; j++)
|
40
|
+
aa[j] = mod_diff(aa[j - KK], aa[j - LL]);
|
41
|
+
for (i = 0; i < LL; i++, j++)
|
42
|
+
ran_x[i] = mod_diff(aa[j - KK], aa[j - LL]);
|
43
|
+
for (; i < KK; i++, j++)
|
44
|
+
ran_x[i] = mod_diff(aa[j - KK], ran_x[i - LL]);
|
45
|
+
}
|
46
|
+
|
47
|
+
/* the following routines are from exercise 3.6--15 */
|
48
|
+
/* after calling ran_start, get new randoms by, e.g., "x=ran_arr_next()" */
|
49
|
+
|
50
|
+
#define QUALITY 1009 /* recommended quality level for high-res use */
|
51
|
+
long ran_arr_buf[QUALITY];
|
52
|
+
long ran_arr_dummy = -1, ran_arr_started = -1;
|
53
|
+
long *ran_arr_ptr = &ran_arr_dummy; /* the next random number, or -1 */
|
54
|
+
|
55
|
+
#define TT 70 /* guaranteed separation between streams */
|
56
|
+
#define is_odd(x) ((x)&1) /* units bit of x */
|
57
|
+
|
58
|
+
#ifdef __STDC__
|
59
|
+
void ran_start(long seed)
|
60
|
+
#else
|
61
|
+
void ran_start(seed) /* do this before using ran_array */
|
62
|
+
long seed; /* selector for different streams */
|
63
|
+
#endif
|
64
|
+
{
|
65
|
+
register int t, j;
|
66
|
+
long x[KK + KK - 1]; /* the preparation buffer */
|
67
|
+
register long ss = (seed + 2) & (MM - 2);
|
68
|
+
for (j = 0; j < KK; j++) {
|
69
|
+
x[j] = ss; /* bootstrap the buffer */
|
70
|
+
ss <<= 1;
|
71
|
+
if (ss >= MM)
|
72
|
+
ss -= MM - 2; /* cyclic shift 29 bits */
|
73
|
+
}
|
74
|
+
x[1]++; /* make x[1] (and only x[1]) odd */
|
75
|
+
for (ss = seed & (MM - 1), t = TT - 1; t;) {
|
76
|
+
for (j = KK - 1; j > 0; j--)
|
77
|
+
x[j + j] = x[j], x[j + j - 1] = 0; /* "square" */
|
78
|
+
for (j = KK + KK - 2; j >= KK; j--)
|
79
|
+
x[j - (KK - LL)] = mod_diff(x[j - (KK - LL)], x[j]),
|
80
|
+
x[j - KK] = mod_diff(x[j - KK], x[j]);
|
81
|
+
if (is_odd(ss)) { /* "multiply by z" */
|
82
|
+
for (j = KK; j > 0; j--)
|
83
|
+
x[j] = x[j - 1];
|
84
|
+
x[0] = x[KK]; /* shift the buffer cyclically */
|
85
|
+
x[LL] = mod_diff(x[LL], x[KK]);
|
86
|
+
}
|
87
|
+
if (ss)
|
88
|
+
ss >>= 1;
|
89
|
+
else
|
90
|
+
t--;
|
91
|
+
}
|
92
|
+
for (j = 0; j < LL; j++)
|
93
|
+
ran_x[j + KK - LL] = x[j];
|
94
|
+
for (; j < KK; j++)
|
95
|
+
ran_x[j - LL] = x[j];
|
96
|
+
for (j = 0; j < 10; j++)
|
97
|
+
ran_array(x, KK + KK - 1); /* warm things up */
|
98
|
+
ran_arr_ptr = &ran_arr_started;
|
99
|
+
}
|
100
|
+
|
101
|
+
#define ran_arr_next() (*ran_arr_ptr >= 0 ? *ran_arr_ptr++ : ran_arr_cycle())
|
102
|
+
long ran_arr_cycle(void) {
|
103
|
+
if (ran_arr_ptr == &ran_arr_dummy)
|
104
|
+
ran_start(314159L); /* the user forgot to initialize */
|
105
|
+
ran_array(ran_arr_buf, QUALITY);
|
106
|
+
ran_arr_buf[KK] = -1;
|
107
|
+
ran_arr_ptr = ran_arr_buf + 1;
|
108
|
+
return ran_arr_buf[0];
|
109
|
+
}
|
@@ -12,16 +12,24 @@ scs_int override_setting(ScsSettings *s, char *param, char *val) {
|
|
12
12
|
s->rho_x = atof(val);
|
13
13
|
} else if (strcmp(param, "max_iters") == 0) {
|
14
14
|
s->max_iters = atoi(val);
|
15
|
-
} else if (strcmp(param, "
|
16
|
-
s->
|
15
|
+
} else if (strcmp(param, "eps_abs") == 0) {
|
16
|
+
s->eps_abs = atof(val);
|
17
|
+
} else if (strcmp(param, "eps_rel") == 0) {
|
18
|
+
s->eps_rel = atof(val);
|
19
|
+
} else if (strcmp(param, "eps_infeas") == 0) {
|
20
|
+
s->eps_infeas = atof(val);
|
17
21
|
} else if (strcmp(param, "alpha") == 0) {
|
18
22
|
s->alpha = atof(val);
|
19
|
-
} else if (strcmp(param, "cg_rate") == 0) {
|
20
|
-
s->cg_rate = atof(val);
|
21
23
|
} else if (strcmp(param, "verbose") == 0) {
|
22
24
|
s->verbose = atoi(val);
|
23
25
|
} else if (strcmp(param, "acceleration_lookback") == 0) {
|
24
26
|
s->acceleration_lookback = atoi(val);
|
27
|
+
} else if (strcmp(param, "acceleration_interval") == 0) {
|
28
|
+
s->acceleration_interval = atoi(val);
|
29
|
+
} else if (strcmp(param, "adaptive_scale") == 0) {
|
30
|
+
s->adaptive_scale = atoi(val);
|
31
|
+
} else if (strcmp(param, "log_csv_filename") == 0) {
|
32
|
+
s->log_csv_filename = val;
|
25
33
|
} else {
|
26
34
|
return -1;
|
27
35
|
}
|
@@ -36,6 +44,7 @@ int main(int argc, char **argv) {
|
|
36
44
|
scs_int read_status;
|
37
45
|
ScsData *d;
|
38
46
|
ScsCone *k;
|
47
|
+
ScsSettings *stgs;
|
39
48
|
ScsSolution *sol;
|
40
49
|
ScsInfo info = {0};
|
41
50
|
scs_int i;
|
@@ -44,7 +53,7 @@ int main(int argc, char **argv) {
|
|
44
53
|
return -1;
|
45
54
|
}
|
46
55
|
filename = argv[1];
|
47
|
-
read_status = SCS(read_data)(filename, &d, &k);
|
56
|
+
read_status = SCS(read_data)(filename, &d, &k, &stgs);
|
48
57
|
if (read_status < 0) {
|
49
58
|
scs_printf("Data read failure, exit.\n");
|
50
59
|
return -1;
|
@@ -52,18 +61,18 @@ int main(int argc, char **argv) {
|
|
52
61
|
for (i = 2; i < argc; i += 2) {
|
53
62
|
if (argc < i + 2) {
|
54
63
|
scs_printf("Incorrect number of arguments supplied\n.");
|
55
|
-
SCS(free_data)(d, k);
|
64
|
+
SCS(free_data)(d, k, stgs);
|
56
65
|
return -1;
|
57
66
|
}
|
58
|
-
if (override_setting(
|
67
|
+
if (override_setting(stgs, argv[i], argv[i + 1]) < 0) {
|
59
68
|
scs_printf("Unrecognized setting %s\n", argv[i]);
|
60
|
-
SCS(free_data)(d, k);
|
69
|
+
SCS(free_data)(d, k, stgs);
|
61
70
|
return -1;
|
62
71
|
}
|
63
72
|
}
|
64
73
|
sol = scs_calloc(1, sizeof(ScsSolution));
|
65
|
-
scs(d, k, sol, &info);
|
66
|
-
SCS(free_data)(d, k);
|
74
|
+
scs(d, k, stgs, sol, &info);
|
75
|
+
SCS(free_data)(d, k, stgs);
|
67
76
|
SCS(free_sol)(sol);
|
68
77
|
return 0;
|
69
78
|
}
|
data/vendor/scs/test/run_tests.c
CHANGED
@@ -6,16 +6,40 @@
|
|
6
6
|
#include "scs.h"
|
7
7
|
|
8
8
|
/* Include Tests */
|
9
|
-
#include "problems/
|
9
|
+
#include "problems/degenerate.h"
|
10
|
+
#include "problems/hs21_tiny_qp.h"
|
11
|
+
#include "problems/hs21_tiny_qp_rw.h"
|
12
|
+
#include "problems/infeasible_tiny_qp.h"
|
13
|
+
#include "problems/qafiro_tiny_qp.h"
|
14
|
+
#include "problems/random_prob.h"
|
10
15
|
#include "problems/rob_gauss_cov_est.h"
|
11
|
-
#include "problems/
|
16
|
+
#include "problems/small_lp.h"
|
17
|
+
#include "problems/test_fails.h"
|
18
|
+
#include "problems/unbounded_tiny_qp.h"
|
12
19
|
|
13
20
|
int tests_run = 0;
|
14
21
|
|
15
22
|
static const char *all_tests(void) {
|
23
|
+
scs_printf("test_fails\n");
|
24
|
+
mu_run_test(test_fails);
|
25
|
+
scs_printf("degenerate\n");
|
26
|
+
mu_run_test(degenerate);
|
27
|
+
scs_printf("small_lp\n");
|
16
28
|
mu_run_test(small_lp);
|
29
|
+
scs_printf("rob_gauss_cov_est\n");
|
17
30
|
mu_run_test(rob_gauss_cov_est);
|
18
|
-
|
31
|
+
scs_printf("hs21_tiny_qp\n");
|
32
|
+
mu_run_test(hs21_tiny_qp);
|
33
|
+
scs_printf("hs21_tiny_qp_rw\n");
|
34
|
+
mu_run_test(hs21_tiny_qp_rw);
|
35
|
+
scs_printf("qafiro_tiny_qp\n");
|
36
|
+
mu_run_test(qafiro_tiny_qp);
|
37
|
+
scs_printf("infeasible_tiny_qp\n");
|
38
|
+
mu_run_test(infeasible_tiny_qp);
|
39
|
+
scs_printf("unbounded_tiny_qp\n");
|
40
|
+
mu_run_test(unbounded_tiny_qp);
|
41
|
+
scs_printf("random_prob\n");
|
42
|
+
mu_run_test(random_prob);
|
19
43
|
return 0;
|
20
44
|
}
|
21
45
|
|
metadata
CHANGED
@@ -1,73 +1,17 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kane
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
12
|
-
dependencies:
|
13
|
-
|
14
|
-
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '0'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: rake
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - ">="
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '0'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: minitest
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ">="
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '5'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '5'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: numo-narray
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - ">="
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - ">="
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
69
|
-
description:
|
70
|
-
email: andrew@chartkick.com
|
11
|
+
date: 2021-10-08 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description:
|
14
|
+
email: andrew@ankane.org
|
71
15
|
executables: []
|
72
16
|
extensions:
|
73
17
|
- ext/scs/extconf.rb
|
@@ -81,6 +25,8 @@ files:
|
|
81
25
|
- lib/scs/ffi.rb
|
82
26
|
- lib/scs/solver.rb
|
83
27
|
- lib/scs/version.rb
|
28
|
+
- vendor/scs/CITATION.cff
|
29
|
+
- vendor/scs/CMakeLists.txt
|
84
30
|
- vendor/scs/LICENSE.txt
|
85
31
|
- vendor/scs/Makefile
|
86
32
|
- vendor/scs/README.md
|
@@ -95,93 +41,75 @@ files:
|
|
95
41
|
- vendor/scs/include/scs.h
|
96
42
|
- vendor/scs/include/scs_blas.h
|
97
43
|
- vendor/scs/include/util.h
|
98
|
-
- vendor/scs/linsys/amatrix.c
|
99
|
-
- vendor/scs/linsys/amatrix.h
|
100
|
-
- vendor/scs/linsys/amatrix.o
|
101
44
|
- vendor/scs/linsys/cpu/direct/private.c
|
102
45
|
- vendor/scs/linsys/cpu/direct/private.h
|
103
|
-
- vendor/scs/linsys/cpu/direct/private.o
|
104
46
|
- vendor/scs/linsys/cpu/indirect/private.c
|
105
47
|
- vendor/scs/linsys/cpu/indirect/private.h
|
106
|
-
- vendor/scs/linsys/
|
48
|
+
- vendor/scs/linsys/csparse.c
|
49
|
+
- vendor/scs/linsys/csparse.h
|
107
50
|
- vendor/scs/linsys/external/amd/LICENSE.txt
|
108
51
|
- vendor/scs/linsys/external/amd/SuiteSparse_config.c
|
109
52
|
- vendor/scs/linsys/external/amd/SuiteSparse_config.h
|
110
|
-
- vendor/scs/linsys/external/amd/SuiteSparse_config.o
|
111
53
|
- vendor/scs/linsys/external/amd/amd.h
|
112
54
|
- vendor/scs/linsys/external/amd/amd_1.c
|
113
|
-
- vendor/scs/linsys/external/amd/amd_1.o
|
114
55
|
- vendor/scs/linsys/external/amd/amd_2.c
|
115
|
-
- vendor/scs/linsys/external/amd/amd_2.o
|
116
56
|
- vendor/scs/linsys/external/amd/amd_aat.c
|
117
|
-
- vendor/scs/linsys/external/amd/amd_aat.o
|
118
57
|
- vendor/scs/linsys/external/amd/amd_control.c
|
119
|
-
- vendor/scs/linsys/external/amd/amd_control.o
|
120
58
|
- vendor/scs/linsys/external/amd/amd_defaults.c
|
121
|
-
- vendor/scs/linsys/external/amd/amd_defaults.o
|
122
59
|
- vendor/scs/linsys/external/amd/amd_dump.c
|
123
|
-
- vendor/scs/linsys/external/amd/amd_dump.o
|
124
60
|
- vendor/scs/linsys/external/amd/amd_global.c
|
125
|
-
- vendor/scs/linsys/external/amd/amd_global.o
|
126
61
|
- vendor/scs/linsys/external/amd/amd_info.c
|
127
|
-
- vendor/scs/linsys/external/amd/amd_info.o
|
128
62
|
- vendor/scs/linsys/external/amd/amd_internal.h
|
129
63
|
- vendor/scs/linsys/external/amd/amd_order.c
|
130
|
-
- vendor/scs/linsys/external/amd/amd_order.o
|
131
64
|
- vendor/scs/linsys/external/amd/amd_post_tree.c
|
132
|
-
- vendor/scs/linsys/external/amd/amd_post_tree.o
|
133
65
|
- vendor/scs/linsys/external/amd/amd_postorder.c
|
134
|
-
- vendor/scs/linsys/external/amd/amd_postorder.o
|
135
66
|
- vendor/scs/linsys/external/amd/amd_preprocess.c
|
136
|
-
- vendor/scs/linsys/external/amd/amd_preprocess.o
|
137
67
|
- vendor/scs/linsys/external/amd/amd_valid.c
|
138
|
-
- vendor/scs/linsys/external/amd/amd_valid.o
|
139
68
|
- vendor/scs/linsys/external/amd/changes
|
140
69
|
- vendor/scs/linsys/external/qdldl/LICENSE
|
141
70
|
- vendor/scs/linsys/external/qdldl/README.md
|
142
71
|
- vendor/scs/linsys/external/qdldl/changes
|
143
72
|
- vendor/scs/linsys/external/qdldl/qdldl.c
|
144
73
|
- vendor/scs/linsys/external/qdldl/qdldl.h
|
145
|
-
- vendor/scs/linsys/external/qdldl/qdldl.o
|
146
74
|
- vendor/scs/linsys/external/qdldl/qdldl_types.h
|
147
75
|
- vendor/scs/linsys/gpu/gpu.c
|
148
76
|
- vendor/scs/linsys/gpu/gpu.h
|
149
77
|
- vendor/scs/linsys/gpu/indirect/private.c
|
150
78
|
- vendor/scs/linsys/gpu/indirect/private.h
|
79
|
+
- vendor/scs/linsys/scs_matrix.c
|
80
|
+
- vendor/scs/linsys/scs_matrix.h
|
151
81
|
- vendor/scs/scs.mk
|
152
82
|
- vendor/scs/src/aa.c
|
153
|
-
- vendor/scs/src/aa.o
|
154
83
|
- vendor/scs/src/cones.c
|
155
|
-
- vendor/scs/src/cones.o
|
156
84
|
- vendor/scs/src/ctrlc.c
|
157
|
-
- vendor/scs/src/ctrlc.o
|
158
85
|
- vendor/scs/src/linalg.c
|
159
|
-
- vendor/scs/src/linalg.o
|
160
86
|
- vendor/scs/src/normalize.c
|
161
|
-
- vendor/scs/src/normalize.o
|
162
87
|
- vendor/scs/src/rw.c
|
163
|
-
- vendor/scs/src/rw.o
|
164
88
|
- vendor/scs/src/scs.c
|
165
|
-
- vendor/scs/src/scs.o
|
166
89
|
- vendor/scs/src/scs_version.c
|
167
|
-
- vendor/scs/src/scs_version.o
|
168
90
|
- vendor/scs/src/util.c
|
169
|
-
- vendor/scs/src/util.o
|
170
|
-
- vendor/scs/test/data/small_random_socp
|
171
91
|
- vendor/scs/test/minunit.h
|
172
92
|
- vendor/scs/test/problem_utils.h
|
93
|
+
- vendor/scs/test/problems/degenerate.h
|
94
|
+
- vendor/scs/test/problems/hs21_tiny_qp.h
|
95
|
+
- vendor/scs/test/problems/hs21_tiny_qp_rw.h
|
96
|
+
- vendor/scs/test/problems/infeasible_tiny_qp.h
|
97
|
+
- vendor/scs/test/problems/qafiro_tiny_qp.h
|
98
|
+
- vendor/scs/test/problems/random_prob
|
99
|
+
- vendor/scs/test/problems/random_prob.h
|
173
100
|
- vendor/scs/test/problems/rob_gauss_cov_est.h
|
174
101
|
- vendor/scs/test/problems/small_lp.h
|
175
|
-
- vendor/scs/test/problems/
|
102
|
+
- vendor/scs/test/problems/test_fails.h
|
103
|
+
- vendor/scs/test/problems/unbounded_tiny_qp.h
|
176
104
|
- vendor/scs/test/random_socp_prob.c
|
105
|
+
- vendor/scs/test/rng.h
|
177
106
|
- vendor/scs/test/run_from_file.c
|
178
|
-
- vendor/scs/test/run_tests
|
179
107
|
- vendor/scs/test/run_tests.c
|
180
108
|
homepage: https://github.com/ankane/scs
|
181
109
|
licenses:
|
182
110
|
- MIT
|
183
111
|
metadata: {}
|
184
|
-
post_install_message:
|
112
|
+
post_install_message:
|
185
113
|
rdoc_options: []
|
186
114
|
require_paths:
|
187
115
|
- lib
|
@@ -196,8 +124,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
196
124
|
- !ruby/object:Gem::Version
|
197
125
|
version: '0'
|
198
126
|
requirements: []
|
199
|
-
rubygems_version: 3.
|
200
|
-
signing_key:
|
127
|
+
rubygems_version: 3.2.22
|
128
|
+
signing_key:
|
201
129
|
specification_version: 4
|
202
130
|
summary: SCS - the splitting conic solver - for Ruby
|
203
131
|
test_files: []
|