2023-01-12 19:56:20 -05:00
|
|
|
clojure matrix-repl thing, the last two methods in src/matrix/core.clj are the only interesting bits
|
2023-01-12 19:58:18 -05:00
|
|
|
|
|
|
|
src/matrix/core.clj is the only file with interesting stuff
|
2023-01-13 14:07:38 -05:00
|
|
|
|
2023-01-15 21:00:04 -05:00
|
|
|
current version's usage example (only the first line is user-input):
|
|
|
|
```
|
|
|
|
[[3 1 1 2] [1 -2 1 4] [-1 1 0 4]]
|
|
|
|
Steps:
|
|
|
|
1/3R₁
|
|
|
|
-1R₁ + R₂
|
|
|
|
R₁ + R₃
|
|
|
|
-3/7R₂
|
|
|
|
-4/3R₂ + R₃
|
|
|
|
7/5R₃
|
|
|
|
-1/3R₃ + R₁
|
|
|
|
2/7R₃ + R₂
|
|
|
|
-1/3R₂ + R₁
|
|
|
|
Final:
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 0 0 -14/5 ┃
|
|
|
|
┃ 0 1 0 6/5 ┃
|
|
|
|
┃ 0 0 1 46/5 ┃
|
|
|
|
┗ ┛
|
|
|
|
```
|
|
|
|
|
|
|
|
OLD \*actual\* usage example:
|
2023-01-13 14:07:38 -05:00
|
|
|
```
|
|
|
|
matrix.core=> (matrix-repl [[1 1 -1 -5] [5 -1 1 -1] [-1 3 -2 1]] :yeah)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 -1 │ -5 ┃
|
|
|
|
┃ 5 -1 1 │ -1 ┃
|
|
|
|
┃ -1 3 -2 │ 1 ┃
|
|
|
|
┗ ┛
|
|
|
|
(add-mul 5 2 1)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 -1 │ -5 ┃
|
|
|
|
┃ 0 14 -9 │ 4 ┃
|
|
|
|
┃ -1 3 -2 │ 1 ┃
|
|
|
|
┗ ┛
|
|
|
|
(add 0 2)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 -1 │ -5 ┃
|
|
|
|
┃ 0 14 -9 │ 4 ┃
|
|
|
|
┃ 0 4 -3 │ -4 ┃
|
|
|
|
┗ ┛
|
|
|
|
(add-mul -4/14 1 2)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 -1 │ -5 ┃
|
|
|
|
┃ 0 14 -9 │ 4 ┃
|
|
|
|
┃ 0 0 -3/7 │ -36/7 ┃
|
|
|
|
┗ ┛
|
|
|
|
(mul 7 2)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 -1 │ -5 ┃
|
|
|
|
┃ 0 14 -9 │ 4 ┃
|
|
|
|
┃ 0 0 -3 │ -36 ┃
|
|
|
|
┗ ┛
|
|
|
|
(mul -1/3 2)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 -1 │ -5 ┃
|
|
|
|
┃ 0 14 -9 │ 4 ┃
|
|
|
|
┃ 0 0 1 │ 12 ┃
|
|
|
|
┗ ┛
|
|
|
|
(add-mul 9 2 1)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 -1 │ -5 ┃
|
|
|
|
┃ 0 14 0 │ 112 ┃
|
|
|
|
┃ 0 0 1 │ 12 ┃
|
|
|
|
┗ ┛
|
|
|
|
(mul 1/14 1)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 -1 │ -5 ┃
|
|
|
|
┃ 0 1 0 │ 8 ┃
|
|
|
|
┃ 0 0 1 │ 12 ┃
|
|
|
|
┗ ┛
|
|
|
|
(add 2 0)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 1 0 │ 7 ┃
|
|
|
|
┃ 0 1 0 │ 8 ┃
|
|
|
|
┃ 0 0 1 │ 12 ┃
|
|
|
|
┗ ┛
|
|
|
|
(add-mul -1 1 0)
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 0 0 │ -1 ┃
|
|
|
|
┃ 0 1 0 │ 8 ┃
|
|
|
|
┃ 0 0 1 │ 12 ┃
|
|
|
|
┗ ┛
|
|
|
|
print-equations
|
|
|
|
x = -1
|
|
|
|
y = 8
|
|
|
|
z = 12
|
|
|
|
┏ ┓
|
|
|
|
┃ 1 0 0 │ -1 ┃
|
|
|
|
┃ 0 1 0 │ 8 ┃
|
|
|
|
┃ 0 0 1 │ 12 ┃
|
|
|
|
┗ ┛
|