chris_lib 1.1.10 → 1.1.11
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/lib/chris_lib.rb +1 -0
- data/lib/chris_lib/chris_math.rb +14 -0
- data/lib/chris_lib/version.rb +1 -1
- metadata +11 -163
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 79c4ea547446df8d0379c747cdfc49c2d75a6dbca69c030fbb184addc55a35f8
|
|
4
|
+
data.tar.gz: 964c3612a94592578ca8c5620e235f32990616fac42d26f6e5c030983b6dbd98
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f7fa67040270e0404053b52235d126e308429ab264a7d87cae17e594f80953419e971cb30443384f88ebee3d8193fd39d83ec47dca36aa883d6c86fe46162b07
|
|
7
|
+
data.tar.gz: c2efb641ba2af31d692f3ebdef4ae6cc19c308f99ac7abc0d870d3e25365225ce4b7c7934d4a45ec550bf955beb84a8ec5a16b15a7c9d82677a54ccf3d7bed15
|
data/lib/chris_lib.rb
CHANGED
data/lib/chris_lib/chris_math.rb
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
require 'matrix'
|
|
1
2
|
Integer.class_eval do
|
|
2
3
|
def factorial
|
|
3
4
|
n = self
|
|
@@ -10,11 +11,24 @@ Integer.class_eval do
|
|
|
10
11
|
end
|
|
11
12
|
|
|
12
13
|
Matrix.class_eval do
|
|
14
|
+
# right pseudo-inverse for linearly independent rows
|
|
13
15
|
def pinv
|
|
14
16
|
full_rank = (rank == [row_count, column_count].min)
|
|
15
17
|
raise ExceptionForMatrix::ErrNotRegular unless full_rank
|
|
16
18
|
transpose * (self * transpose).inv
|
|
17
19
|
end
|
|
20
|
+
|
|
21
|
+
# for linearly independent rows
|
|
22
|
+
def pinv_right
|
|
23
|
+
full_rank = (rank == [row_count, column_count].min)
|
|
24
|
+
raise ExceptionForMatrix::ErrNotRegular unless full_rank
|
|
25
|
+
transpose * (self * transpose).inv
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# for linearly independent columns
|
|
29
|
+
def pinv_left
|
|
30
|
+
(transpose * self).inv * transpose
|
|
31
|
+
end
|
|
18
32
|
end
|
|
19
33
|
|
|
20
34
|
Array.class_eval do
|
data/lib/chris_lib/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,197 +1,45 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: chris_lib
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.1.
|
|
4
|
+
version: 1.1.11
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Chris
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2021-
|
|
11
|
+
date: 2021-07-31 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: dotenv
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - "~>"
|
|
18
|
-
- !ruby/object:Gem::Version
|
|
19
|
-
version: '2.2'
|
|
20
17
|
- - ">="
|
|
21
18
|
- !ruby/object:Gem::Version
|
|
22
|
-
version:
|
|
19
|
+
version: '0'
|
|
23
20
|
type: :runtime
|
|
24
21
|
prerelease: false
|
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
26
23
|
requirements:
|
|
27
|
-
- - "~>"
|
|
28
|
-
- !ruby/object:Gem::Version
|
|
29
|
-
version: '2.2'
|
|
30
|
-
- - ">="
|
|
31
|
-
- !ruby/object:Gem::Version
|
|
32
|
-
version: 2.2.1
|
|
33
|
-
- !ruby/object:Gem::Dependency
|
|
34
|
-
name: actionview
|
|
35
|
-
requirement: !ruby/object:Gem::Requirement
|
|
36
|
-
requirements:
|
|
37
|
-
- - "~>"
|
|
38
|
-
- !ruby/object:Gem::Version
|
|
39
|
-
version: '5.1'
|
|
40
|
-
- - ">="
|
|
41
|
-
- !ruby/object:Gem::Version
|
|
42
|
-
version: 5.2.4.3
|
|
43
|
-
type: :development
|
|
44
|
-
prerelease: false
|
|
45
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
46
|
-
requirements:
|
|
47
|
-
- - "~>"
|
|
48
|
-
- !ruby/object:Gem::Version
|
|
49
|
-
version: '5.1'
|
|
50
|
-
- - ">="
|
|
51
|
-
- !ruby/object:Gem::Version
|
|
52
|
-
version: 5.2.4.3
|
|
53
|
-
- !ruby/object:Gem::Dependency
|
|
54
|
-
name: actionpack
|
|
55
|
-
requirement: !ruby/object:Gem::Requirement
|
|
56
|
-
requirements:
|
|
57
|
-
- - "~>"
|
|
58
|
-
- !ruby/object:Gem::Version
|
|
59
|
-
version: '5.2'
|
|
60
|
-
- - ">="
|
|
61
|
-
- !ruby/object:Gem::Version
|
|
62
|
-
version: 5.2.4.6
|
|
63
|
-
type: :development
|
|
64
|
-
prerelease: false
|
|
65
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
66
|
-
requirements:
|
|
67
|
-
- - "~>"
|
|
68
|
-
- !ruby/object:Gem::Version
|
|
69
|
-
version: '5.2'
|
|
70
|
-
- - ">="
|
|
71
|
-
- !ruby/object:Gem::Version
|
|
72
|
-
version: 5.2.4.6
|
|
73
|
-
- !ruby/object:Gem::Dependency
|
|
74
|
-
name: loofah
|
|
75
|
-
requirement: !ruby/object:Gem::Requirement
|
|
76
|
-
requirements:
|
|
77
|
-
- - "~>"
|
|
78
|
-
- !ruby/object:Gem::Version
|
|
79
|
-
version: '2.3'
|
|
80
|
-
- - ">="
|
|
81
|
-
- !ruby/object:Gem::Version
|
|
82
|
-
version: 2.3.1
|
|
83
|
-
type: :development
|
|
84
|
-
prerelease: false
|
|
85
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
86
|
-
requirements:
|
|
87
|
-
- - "~>"
|
|
88
|
-
- !ruby/object:Gem::Version
|
|
89
|
-
version: '2.3'
|
|
90
24
|
- - ">="
|
|
91
25
|
- !ruby/object:Gem::Version
|
|
92
|
-
version:
|
|
26
|
+
version: '0'
|
|
93
27
|
- !ruby/object:Gem::Dependency
|
|
94
28
|
name: rails
|
|
95
29
|
requirement: !ruby/object:Gem::Requirement
|
|
96
30
|
requirements:
|
|
97
|
-
- - "~>"
|
|
98
|
-
- !ruby/object:Gem::Version
|
|
99
|
-
version: '5.1'
|
|
100
31
|
- - ">="
|
|
101
32
|
- !ruby/object:Gem::Version
|
|
102
|
-
version:
|
|
103
|
-
type: :
|
|
104
|
-
prerelease: false
|
|
105
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
106
|
-
requirements:
|
|
107
|
-
- - "~>"
|
|
108
|
-
- !ruby/object:Gem::Version
|
|
109
|
-
version: '5.1'
|
|
110
|
-
- - ">="
|
|
111
|
-
- !ruby/object:Gem::Version
|
|
112
|
-
version: 5.1.4.6
|
|
113
|
-
- !ruby/object:Gem::Dependency
|
|
114
|
-
name: rspec-rails
|
|
115
|
-
requirement: !ruby/object:Gem::Requirement
|
|
116
|
-
requirements:
|
|
117
|
-
- - "~>"
|
|
118
|
-
- !ruby/object:Gem::Version
|
|
119
|
-
version: '3.7'
|
|
120
|
-
- - ">="
|
|
121
|
-
- !ruby/object:Gem::Version
|
|
122
|
-
version: 3.7.2
|
|
123
|
-
type: :development
|
|
124
|
-
prerelease: false
|
|
125
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
126
|
-
requirements:
|
|
127
|
-
- - "~>"
|
|
128
|
-
- !ruby/object:Gem::Version
|
|
129
|
-
version: '3.7'
|
|
130
|
-
- - ">="
|
|
131
|
-
- !ruby/object:Gem::Version
|
|
132
|
-
version: 3.7.2
|
|
133
|
-
- !ruby/object:Gem::Dependency
|
|
134
|
-
name: sqlite3
|
|
135
|
-
requirement: !ruby/object:Gem::Requirement
|
|
136
|
-
requirements:
|
|
137
|
-
- - "~>"
|
|
138
|
-
- !ruby/object:Gem::Version
|
|
139
|
-
version: '1.3'
|
|
140
|
-
- - ">="
|
|
141
|
-
- !ruby/object:Gem::Version
|
|
142
|
-
version: 1.3.11
|
|
143
|
-
type: :development
|
|
144
|
-
prerelease: false
|
|
145
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
146
|
-
requirements:
|
|
147
|
-
- - "~>"
|
|
148
|
-
- !ruby/object:Gem::Version
|
|
149
|
-
version: '1.3'
|
|
150
|
-
- - ">="
|
|
151
|
-
- !ruby/object:Gem::Version
|
|
152
|
-
version: 1.3.11
|
|
153
|
-
- !ruby/object:Gem::Dependency
|
|
154
|
-
name: nokogiri
|
|
155
|
-
requirement: !ruby/object:Gem::Requirement
|
|
156
|
-
requirements:
|
|
157
|
-
- - "~>"
|
|
158
|
-
- !ruby/object:Gem::Version
|
|
159
|
-
version: '1.10'
|
|
160
|
-
- - ">="
|
|
161
|
-
- !ruby/object:Gem::Version
|
|
162
|
-
version: 1.11.4
|
|
163
|
-
type: :development
|
|
164
|
-
prerelease: false
|
|
165
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
166
|
-
requirements:
|
|
167
|
-
- - "~>"
|
|
168
|
-
- !ruby/object:Gem::Version
|
|
169
|
-
version: '1.10'
|
|
170
|
-
- - ">="
|
|
171
|
-
- !ruby/object:Gem::Version
|
|
172
|
-
version: 1.11.4
|
|
173
|
-
- !ruby/object:Gem::Dependency
|
|
174
|
-
name: rack
|
|
175
|
-
requirement: !ruby/object:Gem::Requirement
|
|
176
|
-
requirements:
|
|
177
|
-
- - "~>"
|
|
178
|
-
- !ruby/object:Gem::Version
|
|
179
|
-
version: '2.0'
|
|
180
|
-
- - ">="
|
|
181
|
-
- !ruby/object:Gem::Version
|
|
182
|
-
version: 2.2.3
|
|
183
|
-
type: :development
|
|
33
|
+
version: '0'
|
|
34
|
+
type: :runtime
|
|
184
35
|
prerelease: false
|
|
185
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
186
37
|
requirements:
|
|
187
|
-
- - "~>"
|
|
188
|
-
- !ruby/object:Gem::Version
|
|
189
|
-
version: '2.0'
|
|
190
38
|
- - ">="
|
|
191
39
|
- !ruby/object:Gem::Version
|
|
192
|
-
version:
|
|
40
|
+
version: '0'
|
|
193
41
|
- !ruby/object:Gem::Dependency
|
|
194
|
-
name:
|
|
42
|
+
name: rspec
|
|
195
43
|
requirement: !ruby/object:Gem::Requirement
|
|
196
44
|
requirements:
|
|
197
45
|
- - ">="
|
|
@@ -205,7 +53,7 @@ dependencies:
|
|
|
205
53
|
- !ruby/object:Gem::Version
|
|
206
54
|
version: '0'
|
|
207
55
|
- !ruby/object:Gem::Dependency
|
|
208
|
-
name:
|
|
56
|
+
name: nokogiri
|
|
209
57
|
requirement: !ruby/object:Gem::Requirement
|
|
210
58
|
requirements:
|
|
211
59
|
- - ">="
|
|
@@ -219,7 +67,7 @@ dependencies:
|
|
|
219
67
|
- !ruby/object:Gem::Version
|
|
220
68
|
version: '0'
|
|
221
69
|
- !ruby/object:Gem::Dependency
|
|
222
|
-
name:
|
|
70
|
+
name: pry
|
|
223
71
|
requirement: !ruby/object:Gem::Requirement
|
|
224
72
|
requirements:
|
|
225
73
|
- - ">="
|
|
@@ -269,7 +117,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
269
117
|
- !ruby/object:Gem::Version
|
|
270
118
|
version: '0'
|
|
271
119
|
requirements: []
|
|
272
|
-
rubygems_version: 3.1.
|
|
120
|
+
rubygems_version: 3.1.6
|
|
273
121
|
signing_key:
|
|
274
122
|
specification_version: 4
|
|
275
123
|
summary: This an eclectic collection of methods. It include maths, datetime, and rspec
|