matrix/README.md

76 lines
1.8 KiB
Markdown

clojure matrix-repl thing, the last two methods in src/matrix/core.clj are the only interesting bits
src/matrix/core.clj is the only file with interesting stuff
\*actual\* usage example:
```
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 ┃
┗ ┛