scs 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/LICENSE.txt +1 -1
- data/lib/scs/solver.rb +0 -5
- data/lib/scs/version.rb +1 -1
- data/vendor/scs/README.md +3 -1
- 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.c +7 -4
- 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
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cf0730fd042983c36ce96ea46ad28c0a330c5765e1521f8cfb28eb3321507df9
|
4
|
+
data.tar.gz: 677ebb1dc72dc2c1e51857c8644a11e91f9a332c95574ee8c452e31f36f4ec88
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 889d538aba521314bc093e11fc584eb58f519116f72fedcab865b9a49a44fec44eaffbc20e28d1f2673c294922474c7ccc91f7ee7f0b08243c9e20ae52150e3c
|
7
|
+
data.tar.gz: 25ca5f1af62a227f1f05c34031d8f1554e1b9121c2d8c43bb40c4bd12d0af5d106b73a601f8abb8a3849fbdcde310b51a2fecfe17bb9e4bba4d3a70e5fd59fff
|
data/CHANGELOG.md
CHANGED
data/LICENSE.txt
CHANGED
data/lib/scs/solver.rb
CHANGED
@@ -44,11 +44,6 @@ module SCS
|
|
44
44
|
raise Error, "Error code #{ret}" if ret != 0
|
45
45
|
end
|
46
46
|
|
47
|
-
def read_string(char_ptr)
|
48
|
-
idx = char_ptr.index { |v| v == 0 }
|
49
|
-
char_ptr[0, idx].map(&:chr).join
|
50
|
-
end
|
51
|
-
|
52
47
|
def float_array(arr)
|
53
48
|
# SCS float = double
|
54
49
|
Fiddle::Pointer[arr.to_a.pack("d*")]
|
data/lib/scs/version.rb
CHANGED
data/vendor/scs/README.md
CHANGED
@@ -12,7 +12,9 @@ and can be used in other C, C++,
|
|
12
12
|
[Python](https://github.com/bodono/scs-python),
|
13
13
|
[Matlab](https://github.com/bodono/scs-matlab),
|
14
14
|
[R](https://github.com/bodono/scs-r),
|
15
|
-
[Julia](https://github.com/JuliaOpt/SCS.jl),
|
15
|
+
[Julia](https://github.com/JuliaOpt/SCS.jl), and
|
16
|
+
[Ruby](https://github.com/ankane/scs),
|
17
|
+
programs via the linked
|
16
18
|
interfaces. It can also be called as a solver from convex optimization
|
17
19
|
toolboxes [CVX](http://cvxr.com/cvx/) (3.0 or later),
|
18
20
|
[CVXPY](https://github.com/cvxgrp/cvxpy),
|
data/vendor/scs/linsys/amatrix.o
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/vendor/scs/src/aa.o
CHANGED
Binary file
|
data/vendor/scs/src/cones.o
CHANGED
Binary file
|
data/vendor/scs/src/ctrlc.o
CHANGED
Binary file
|
data/vendor/scs/src/linalg.o
CHANGED
Binary file
|
data/vendor/scs/src/normalize.o
CHANGED
Binary file
|
data/vendor/scs/src/rw.o
CHANGED
Binary file
|
data/vendor/scs/src/scs.c
CHANGED
@@ -625,15 +625,16 @@ static void print_footer(const ScsData *d, const ScsCone *k, ScsSolution *sol,
|
|
625
625
|
|
626
626
|
static scs_int has_converged(ScsWork *w, ScsResiduals *r, scs_int iter) {
|
627
627
|
scs_float eps = w->stgs->eps;
|
628
|
-
if (r->res_pri
|
628
|
+
if (isless(r->res_pri, eps) && isless(r->res_dual, eps) &&
|
629
|
+
isless(r->rel_gap, eps)) {
|
629
630
|
return SCS_SOLVED;
|
630
631
|
}
|
631
632
|
/* Add iter > 0 to avoid strange edge case where infeasible point found
|
632
633
|
* right at start of run `out/demo_SOCP_indirect 2 0.1 0.3 1506264403` */
|
633
|
-
if (r->res_unbdd
|
634
|
+
if (isless(r->res_unbdd, eps) && iter > 0) {
|
634
635
|
return SCS_UNBOUNDED;
|
635
636
|
}
|
636
|
-
if (r->res_infeas
|
637
|
+
if (isless(r->res_infeas, eps) && iter > 0) {
|
637
638
|
return SCS_INFEASIBLE;
|
638
639
|
}
|
639
640
|
return 0;
|
@@ -747,7 +748,9 @@ static ScsWork *init_work(const ScsData *d, const ScsCone *k) {
|
|
747
748
|
if (!(w->accel =
|
748
749
|
aa_init(2 * (w->m + w->n + 1), ABS(w->stgs->acceleration_lookback),
|
749
750
|
w->stgs->acceleration_lookback >= 0))) {
|
750
|
-
|
751
|
+
if (w->stgs->verbose) {
|
752
|
+
scs_printf("WARN: aa_init returned NULL, no acceleration applied.\n");
|
753
|
+
}
|
751
754
|
}
|
752
755
|
return w;
|
753
756
|
}
|
data/vendor/scs/src/scs.o
CHANGED
Binary file
|
Binary file
|
data/vendor/scs/src/util.o
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kane
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-07-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -196,7 +196,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
196
196
|
- !ruby/object:Gem::Version
|
197
197
|
version: '0'
|
198
198
|
requirements: []
|
199
|
-
rubygems_version: 3.
|
199
|
+
rubygems_version: 3.1.2
|
200
200
|
signing_key:
|
201
201
|
specification_version: 4
|
202
202
|
summary: SCS - the splitting conic solver - for Ruby
|