@lakuna/umath 1.3.5 → 1.3.7

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.
Files changed (141) hide show
  1. package/LICENSE +1 -1
  2. package/dist/algorithms/combinations.d.ts +7 -0
  3. package/dist/algorithms/combinations.d.ts.map +1 -1
  4. package/dist/algorithms/combinations.js +7 -0
  5. package/dist/algorithms/combinations.js.map +1 -1
  6. package/dist/algorithms/degreesToRadians.d.ts +7 -0
  7. package/dist/algorithms/degreesToRadians.d.ts.map +1 -1
  8. package/dist/algorithms/degreesToRadians.js +7 -0
  9. package/dist/algorithms/degreesToRadians.js.map +1 -1
  10. package/dist/algorithms/factorial.d.ts +6 -0
  11. package/dist/algorithms/factorial.d.ts.map +1 -1
  12. package/dist/algorithms/factorial.js +8 -1
  13. package/dist/algorithms/factorial.js.map +1 -1
  14. package/dist/algorithms/fibonacci.d.ts +6 -1
  15. package/dist/algorithms/fibonacci.d.ts.map +1 -1
  16. package/dist/algorithms/fibonacci.js +5 -0
  17. package/dist/algorithms/fibonacci.js.map +1 -1
  18. package/dist/algorithms/greatestCommonDivisor.d.ts +14 -0
  19. package/dist/algorithms/greatestCommonDivisor.d.ts.map +1 -1
  20. package/dist/algorithms/greatestCommonDivisor.js +2 -0
  21. package/dist/algorithms/greatestCommonDivisor.js.map +1 -1
  22. package/dist/algorithms/hypergeometricPmf.d.ts +9 -0
  23. package/dist/algorithms/hypergeometricPmf.d.ts.map +1 -1
  24. package/dist/algorithms/hypergeometricPmf.js +9 -0
  25. package/dist/algorithms/hypergeometricPmf.js.map +1 -1
  26. package/dist/algorithms/isPrime.d.ts +6 -0
  27. package/dist/algorithms/isPrime.d.ts.map +1 -1
  28. package/dist/algorithms/isPrime.js +7 -0
  29. package/dist/algorithms/isPrime.js.map +1 -1
  30. package/dist/algorithms/permutations.d.ts +7 -0
  31. package/dist/algorithms/permutations.d.ts.map +1 -1
  32. package/dist/algorithms/permutations.js +7 -0
  33. package/dist/algorithms/permutations.js.map +1 -1
  34. package/dist/algorithms/primeFactorization.d.ts +6 -0
  35. package/dist/algorithms/primeFactorization.d.ts.map +1 -1
  36. package/dist/algorithms/primeFactorization.js +6 -0
  37. package/dist/algorithms/primeFactorization.js.map +1 -1
  38. package/dist/algorithms/radiansToDegrees.d.ts +7 -0
  39. package/dist/algorithms/radiansToDegrees.d.ts.map +1 -1
  40. package/dist/algorithms/radiansToDegrees.js +7 -0
  41. package/dist/algorithms/radiansToDegrees.js.map +1 -1
  42. package/dist/algorithms/summation.d.ts +8 -0
  43. package/dist/algorithms/summation.d.ts.map +1 -1
  44. package/dist/algorithms/summation.js +9 -0
  45. package/dist/algorithms/summation.js.map +1 -1
  46. package/dist/linalg/DualQuaternion.d.ts +410 -27
  47. package/dist/linalg/DualQuaternion.d.ts.map +1 -1
  48. package/dist/linalg/DualQuaternion.js +429 -54
  49. package/dist/linalg/DualQuaternion.js.map +1 -1
  50. package/dist/linalg/Matrix.d.ts +67 -0
  51. package/dist/linalg/Matrix.d.ts.map +1 -1
  52. package/dist/linalg/Matrix2.d.ts +309 -20
  53. package/dist/linalg/Matrix2.d.ts.map +1 -1
  54. package/dist/linalg/Matrix2.js +321 -40
  55. package/dist/linalg/Matrix2.js.map +1 -1
  56. package/dist/linalg/Matrix3.d.ts +424 -26
  57. package/dist/linalg/Matrix3.d.ts.map +1 -1
  58. package/dist/linalg/Matrix3.js +437 -52
  59. package/dist/linalg/Matrix3.js.map +1 -1
  60. package/dist/linalg/Matrix4.d.ts +766 -42
  61. package/dist/linalg/Matrix4.d.ts.map +1 -1
  62. package/dist/linalg/Matrix4.js +789 -84
  63. package/dist/linalg/Matrix4.js.map +1 -1
  64. package/dist/linalg/Quaternion.d.ts +359 -21
  65. package/dist/linalg/Quaternion.d.ts.map +1 -1
  66. package/dist/linalg/Quaternion.js +380 -42
  67. package/dist/linalg/Quaternion.js.map +1 -1
  68. package/dist/linalg/SlowMatrix.d.ts +70 -0
  69. package/dist/linalg/SlowMatrix.d.ts.map +1 -1
  70. package/dist/linalg/SlowMatrix.js +71 -0
  71. package/dist/linalg/SlowMatrix.js.map +1 -1
  72. package/dist/linalg/SlowSquareMatrix.d.ts +55 -0
  73. package/dist/linalg/SlowSquareMatrix.d.ts.map +1 -1
  74. package/dist/linalg/SlowSquareMatrix.js +58 -0
  75. package/dist/linalg/SlowSquareMatrix.js.map +1 -1
  76. package/dist/linalg/SquareMatrix.d.ts +23 -0
  77. package/dist/linalg/SquareMatrix.d.ts.map +1 -1
  78. package/dist/linalg/Vector.d.ts +123 -0
  79. package/dist/linalg/Vector.d.ts.map +1 -1
  80. package/dist/linalg/Vector2.d.ts +450 -33
  81. package/dist/linalg/Vector2.d.ts.map +1 -1
  82. package/dist/linalg/Vector2.js +480 -66
  83. package/dist/linalg/Vector2.js.map +1 -1
  84. package/dist/linalg/Vector3.d.ts +542 -38
  85. package/dist/linalg/Vector3.d.ts.map +1 -1
  86. package/dist/linalg/Vector3.js +579 -76
  87. package/dist/linalg/Vector3.js.map +1 -1
  88. package/dist/linalg/Vector4.d.ts +416 -30
  89. package/dist/linalg/Vector4.d.ts.map +1 -1
  90. package/dist/linalg/Vector4.js +441 -60
  91. package/dist/linalg/Vector4.js.map +1 -1
  92. package/dist/types/AxisAngle.d.ts +3 -0
  93. package/dist/types/AxisAngle.d.ts.map +1 -1
  94. package/dist/types/FieldOfView.d.ts +5 -0
  95. package/dist/types/FieldOfView.d.ts.map +1 -1
  96. package/dist/utility/BigNumber.d.ts +36 -0
  97. package/dist/utility/BigNumber.d.ts.map +1 -1
  98. package/dist/utility/BigNumber.js +42 -0
  99. package/dist/utility/BigNumber.js.map +1 -1
  100. package/dist/utility/MagnitudeError.d.ts +5 -0
  101. package/dist/utility/MagnitudeError.d.ts.map +1 -1
  102. package/dist/utility/MagnitudeError.js +5 -0
  103. package/dist/utility/MagnitudeError.js.map +1 -1
  104. package/dist/utility/MatrixSizeError.d.ts +5 -0
  105. package/dist/utility/MatrixSizeError.d.ts.map +1 -1
  106. package/dist/utility/MatrixSizeError.js +5 -0
  107. package/dist/utility/MatrixSizeError.js.map +1 -1
  108. package/dist/utility/PartialMatrixError.d.ts +5 -0
  109. package/dist/utility/PartialMatrixError.d.ts.map +1 -1
  110. package/dist/utility/PartialMatrixError.js +5 -0
  111. package/dist/utility/PartialMatrixError.js.map +1 -1
  112. package/dist/utility/SingularMatrixError.d.ts +8 -0
  113. package/dist/utility/SingularMatrixError.d.ts.map +1 -1
  114. package/dist/utility/SingularMatrixError.js +8 -0
  115. package/dist/utility/SingularMatrixError.js.map +1 -1
  116. package/dist/utility/epsilon.d.ts +1 -0
  117. package/dist/utility/epsilon.d.ts.map +1 -1
  118. package/dist/utility/epsilon.js +1 -0
  119. package/dist/utility/epsilon.js.map +1 -1
  120. package/package.json +1 -1
  121. package/src/algorithms/combinations.ts +1 -1
  122. package/src/algorithms/degreesToRadians.ts +1 -1
  123. package/src/algorithms/factorial.ts +1 -1
  124. package/src/algorithms/fibonacci.ts +1 -1
  125. package/src/algorithms/hypergeometricPmf.ts +1 -1
  126. package/src/algorithms/isPrime.ts +1 -1
  127. package/src/algorithms/permutations.ts +1 -1
  128. package/src/algorithms/primeFactorization.ts +1 -1
  129. package/src/algorithms/radiansToDegrees.ts +1 -1
  130. package/src/algorithms/summation.ts +1 -1
  131. package/src/linalg/DualQuaternion.ts +115 -109
  132. package/src/linalg/Matrix2.ts +83 -70
  133. package/src/linalg/Matrix3.ts +107 -94
  134. package/src/linalg/Matrix4.ts +171 -155
  135. package/src/linalg/Quaternion.ts +96 -92
  136. package/src/linalg/SlowMatrix.ts +13 -13
  137. package/src/linalg/SlowSquareMatrix.ts +11 -11
  138. package/src/linalg/Vector2.ts +130 -116
  139. package/src/linalg/Vector3.ts +152 -135
  140. package/src/linalg/Vector4.ts +121 -104
  141. package/src/utility/BigNumber.ts +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"Quaternion.js","sourceRoot":"","sources":["../../src/linalg/Quaternion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Quaternion.js","sourceRoot":"","sources":["../../src/linalg/Quaternion.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,88 @@
1
1
  import type { default as Matrix, MatrixLike } from "./Matrix.js";
2
+ /**
3
+ * A variable-size matrix.
4
+ * @see [Matrix](https://en.wikipedia.org/wiki/Matrix_(mathematics))
5
+ */
2
6
  export default class SlowMatrix extends Float32Array implements Matrix {
7
+ /**
8
+ * Create a variable-size matrix from the given columns.
9
+ * @param cols - The columns in the matrix.
10
+ */
3
11
  constructor(...cols: number[][]);
12
+ /** The number of rows in this matrix. */
4
13
  readonly height: number;
14
+ /** The number of columns in this matrix. */
5
15
  readonly width: number;
16
+ /**
17
+ * Get the Frobenius norm of this matrix.
18
+ * @see [Matrix norm](https://en.wikipedia.org/wiki/Matrix_norm)
19
+ */
6
20
  get frob(): number;
21
+ /**
22
+ * Add two matrices of the same size.
23
+ * @param matrix - The other matrix.
24
+ * @returns The sum of the matrices.
25
+ * @see [Matrix addition](https://en.wikipedia.org/wiki/Matrix_addition)
26
+ */
7
27
  add(matrix: MatrixLike): SlowMatrix;
28
+ /**
29
+ * Create a copy of this matrix.
30
+ * @returns A copy of this matrix.
31
+ */
8
32
  clone(): SlowMatrix;
33
+ /**
34
+ * Copy the values of another matrix into this one.
35
+ * @param matrix - The matrix to copy.
36
+ * @returns This matrix.
37
+ */
9
38
  copy(matrix: MatrixLike): this;
39
+ /**
40
+ * Determine whether or not this matrix is roughly equivalent to another.
41
+ * @param matrix - The other matrix.
42
+ * @returns Whether or not the matrices are equivalent.
43
+ */
10
44
  equals(matrix: MatrixLike): boolean;
45
+ /**
46
+ * Determine whether this matrix is exactly equivalent to another.
47
+ * @param matrix - The other matrix.
48
+ * @returns Whether the matrices are equivalent.
49
+ */
11
50
  exactEquals(matrix: MatrixLike): boolean;
51
+ /**
52
+ * Multiply this matrix by another.
53
+ * @param matrix - The other matrix.
54
+ * @returns The product of the matrices.
55
+ * @see [Matrix multiplication](https://en.wikipedia.org/wiki/Matrix_multiplication)
56
+ */
12
57
  multiply(matrix: MatrixLike): SlowMatrix;
58
+ /**
59
+ * Multiply this matrix by a scalar value.
60
+ * @param scalar - The scalar value.
61
+ * @returns The product of the matrix and the scalar value.
62
+ * @see [Matrix multiplication](https://en.wikipedia.org/wiki/Matrix_multiplication)
63
+ */
13
64
  multiplyScalar(scalar: number): SlowMatrix;
65
+ /**
66
+ * Add this matrix to another after multiplying the other by a scalar.
67
+ * @param matrix - The other matrix.
68
+ * @param scalar - The scalar.
69
+ * @returns The sum.
70
+ * @see [Matrix addition](https://en.wikipedia.org/wiki/Matrix_addition)
71
+ * @see [Matrix multiplication](https://en.wikipedia.org/wiki/Matrix_multiplication)
72
+ */
14
73
  multiplyScalarAndAdd(matrix: MatrixLike, scalar: number): SlowMatrix;
74
+ /**
75
+ * Subtract another matrix from this one.
76
+ * @param matrix - The other matrix.
77
+ * @returns The difference between the matrices.
78
+ * @see [Matrix addition](https://en.wikipedia.org/wiki/Matrix_addition)
79
+ */
15
80
  subtract(matrix: MatrixLike): SlowMatrix;
81
+ /**
82
+ * Transpose this matrix.
83
+ * @returns The transpose of this matrix.
84
+ * @see [Transpose](https://en.wikipedia.org/wiki/Transpose)
85
+ */
16
86
  transpose(): SlowMatrix;
17
87
  }
18
88
  //# sourceMappingURL=SlowMatrix.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlowMatrix.d.ts","sourceRoot":"","sources":["../../src/linalg/SlowMatrix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AASjE,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,YAAa,YAAW,MAAM;gBAKlD,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE;IAsBtC,SAAgB,MAAM,SAAC;IAGvB,SAAgB,KAAK,SAAC;IAMtB,IAAW,IAAI,WAEd;IAQM,GAAG,CAAC,MAAM,EAAE,UAAU;IA0BtB,KAAK;IAoBL,IAAI,CAAC,MAAM,EAAE,UAAU;IAyBvB,MAAM,CAAC,MAAM,EAAE,UAAU;IA0BzB,WAAW,CAAC,MAAM,EAAE,UAAU;IAsB9B,QAAQ,CAAC,MAAM,EAAE,UAAU;IAoC3B,cAAc,CAAC,MAAM,EAAE,MAAM;IAqB7B,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM;IAevD,QAAQ,CAAC,MAAM,EAAE,UAAU;IA2B3B,SAAS;CAchB"}
1
+ {"version":3,"file":"SlowMatrix.d.ts","sourceRoot":"","sources":["../../src/linalg/SlowMatrix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKjE;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,YAAa,YAAW,MAAM;IACrE;;;OAGG;gBACgB,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE;IAqBtC,yCAAyC;IACzC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B,4CAA4C;IAC5C,SAAgB,KAAK,EAAE,MAAM,CAAC;IAE9B;;;OAGG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;;;;OAKG;IACI,GAAG,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU;IAsB1C;;;OAGG;IACI,KAAK,IAAI,UAAU;IAe1B;;;;OAIG;IACI,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAoBrC;;;;OAIG;IACI,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAqB1C;;;;OAIG;IACI,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAgB/C;;;;;OAKG;IACI,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU;IA8B/C;;;;;OAKG;IACI,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IAajD;;;;;;;OAOG;IACI,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU;IAS3E;;;;;OAKG;IACI,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU;IAsB/C;;;;OAIG;IACI,SAAS,IAAI,UAAU;CAc9B"}
@@ -1,7 +1,15 @@
1
1
  import MatrixSizeError from "../utility/MatrixSizeError.js";
2
2
  import PartialMatrixError from "../utility/PartialMatrixError.js";
3
3
  import epsilon from "../utility/epsilon.js";
4
+ /**
5
+ * A variable-size matrix.
6
+ * @see [Matrix](https://en.wikipedia.org/wiki/Matrix_(mathematics))
7
+ */
4
8
  export default class SlowMatrix extends Float32Array {
9
+ /**
10
+ * Create a variable-size matrix from the given columns.
11
+ * @param cols - The columns in the matrix.
12
+ */
5
13
  constructor(...cols) {
6
14
  super(cols.flat());
7
15
  this.width = cols.length;
@@ -13,17 +21,30 @@ export default class SlowMatrix extends Float32Array {
13
21
  if (this.width < 1 || this.height < 1) {
14
22
  throw new MatrixSizeError();
15
23
  }
24
+ // Ensure that every column is the same height.
16
25
  for (let i = 0; i < this.width; i++) {
17
26
  if ((cols[i]?.length ?? 0) !== this.height) {
18
27
  throw new PartialMatrixError();
19
28
  }
20
29
  }
21
30
  }
31
+ /** The number of rows in this matrix. */
22
32
  height;
33
+ /** The number of columns in this matrix. */
23
34
  width;
35
+ /**
36
+ * Get the Frobenius norm of this matrix.
37
+ * @see [Matrix norm](https://en.wikipedia.org/wiki/Matrix_norm)
38
+ */
24
39
  get frob() {
25
40
  return Math.hypot(...this);
26
41
  }
42
+ /**
43
+ * Add two matrices of the same size.
44
+ * @param matrix - The other matrix.
45
+ * @returns The sum of the matrices.
46
+ * @see [Matrix addition](https://en.wikipedia.org/wiki/Matrix_addition)
47
+ */
27
48
  add(matrix) {
28
49
  const matrixWidth = "width" in matrix ? matrix.width : 1;
29
50
  const matrixHeight = "height" in matrix ? matrix.height : 1;
@@ -43,6 +64,10 @@ export default class SlowMatrix extends Float32Array {
43
64
  }
44
65
  return new SlowMatrix(...cols);
45
66
  }
67
+ /**
68
+ * Create a copy of this matrix.
69
+ * @returns A copy of this matrix.
70
+ */
46
71
  clone() {
47
72
  const cols = [];
48
73
  for (let x = 0; x < this.width; x++) {
@@ -56,6 +81,11 @@ export default class SlowMatrix extends Float32Array {
56
81
  }
57
82
  return new SlowMatrix(...cols);
58
83
  }
84
+ /**
85
+ * Copy the values of another matrix into this one.
86
+ * @param matrix - The matrix to copy.
87
+ * @returns This matrix.
88
+ */
59
89
  copy(matrix) {
60
90
  const matrixWidth = "width" in matrix ? matrix.width : 1;
61
91
  const matrixHeight = "height" in matrix ? matrix.height : 1;
@@ -73,6 +103,11 @@ export default class SlowMatrix extends Float32Array {
73
103
  }
74
104
  return this;
75
105
  }
106
+ /**
107
+ * Determine whether or not this matrix is roughly equivalent to another.
108
+ * @param matrix - The other matrix.
109
+ * @returns Whether or not the matrices are equivalent.
110
+ */
76
111
  equals(matrix) {
77
112
  const matrixWidth = "width" in matrix ? matrix.width : 1;
78
113
  const matrixHeight = "height" in matrix ? matrix.height : 1;
@@ -91,6 +126,11 @@ export default class SlowMatrix extends Float32Array {
91
126
  }
92
127
  return true;
93
128
  }
129
+ /**
130
+ * Determine whether this matrix is exactly equivalent to another.
131
+ * @param matrix - The other matrix.
132
+ * @returns Whether the matrices are equivalent.
133
+ */
94
134
  exactEquals(matrix) {
95
135
  const matrixWidth = "width" in matrix ? matrix.width : 1;
96
136
  const matrixHeight = "height" in matrix ? matrix.height : 1;
@@ -104,6 +144,12 @@ export default class SlowMatrix extends Float32Array {
104
144
  }
105
145
  return true;
106
146
  }
147
+ /**
148
+ * Multiply this matrix by another.
149
+ * @param matrix - The other matrix.
150
+ * @returns The product of the matrices.
151
+ * @see [Matrix multiplication](https://en.wikipedia.org/wiki/Matrix_multiplication)
152
+ */
107
153
  multiply(matrix) {
108
154
  const matrixWidth = "width" in matrix ? matrix.width : 1;
109
155
  const matrixHeight = "height" in matrix ? matrix.height : 1;
@@ -130,6 +176,12 @@ export default class SlowMatrix extends Float32Array {
130
176
  }
131
177
  return new SlowMatrix(...out);
132
178
  }
179
+ /**
180
+ * Multiply this matrix by a scalar value.
181
+ * @param scalar - The scalar value.
182
+ * @returns The product of the matrix and the scalar value.
183
+ * @see [Matrix multiplication](https://en.wikipedia.org/wiki/Matrix_multiplication)
184
+ */
133
185
  multiplyScalar(scalar) {
134
186
  const out = this.clone();
135
187
  for (let i = 0; i < out.length; i++) {
@@ -141,12 +193,26 @@ export default class SlowMatrix extends Float32Array {
141
193
  }
142
194
  return out;
143
195
  }
196
+ /**
197
+ * Add this matrix to another after multiplying the other by a scalar.
198
+ * @param matrix - The other matrix.
199
+ * @param scalar - The scalar.
200
+ * @returns The sum.
201
+ * @see [Matrix addition](https://en.wikipedia.org/wiki/Matrix_addition)
202
+ * @see [Matrix multiplication](https://en.wikipedia.org/wiki/Matrix_multiplication)
203
+ */
144
204
  multiplyScalarAndAdd(matrix, scalar) {
145
205
  if (!("multiplyScalar" in matrix)) {
146
206
  throw new Error();
147
207
  }
148
208
  return this.add(matrix.multiplyScalar(scalar));
149
209
  }
210
+ /**
211
+ * Subtract another matrix from this one.
212
+ * @param matrix - The other matrix.
213
+ * @returns The difference between the matrices.
214
+ * @see [Matrix addition](https://en.wikipedia.org/wiki/Matrix_addition)
215
+ */
150
216
  subtract(matrix) {
151
217
  const matrixWidth = "width" in matrix ? matrix.width : 1;
152
218
  const matrixHeight = "height" in matrix ? matrix.height : 1;
@@ -166,6 +232,11 @@ export default class SlowMatrix extends Float32Array {
166
232
  }
167
233
  return new SlowMatrix(...cols);
168
234
  }
235
+ /**
236
+ * Transpose this matrix.
237
+ * @returns The transpose of this matrix.
238
+ * @see [Transpose](https://en.wikipedia.org/wiki/Transpose)
239
+ */
169
240
  transpose() {
170
241
  const cols = [];
171
242
  for (let x = 0; x < this.width; x++) {
@@ -1 +1 @@
1
- {"version":3,"file":"SlowMatrix.js","sourceRoot":"","sources":["../../src/linalg/SlowMatrix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SlowMatrix.js","sourceRoot":"","sources":["../../src/linalg/SlowMatrix.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,70 @@
1
1
  import SlowMatrix from "./SlowMatrix.js";
2
2
  import type SquareMatrix from "./SquareMatrix.js";
3
+ /**
4
+ * A variable-size matrix with the same number of rows and columns.
5
+ * @see [Square matrix](https://en.wikipedia.org/wiki/Square_matrix)
6
+ */
3
7
  export default class SlowSquareMatrix extends SlowMatrix implements SquareMatrix {
8
+ /**
9
+ * Create a variable-size matrix with the same number of rows and columns from the given columns.
10
+ * @param cols - The columns in the matrix.
11
+ * @see [Square matrix](https://en.wikipedia.org/wiki/Square_matrix)
12
+ */
4
13
  constructor(...cols: number[][]);
14
+ /**
15
+ * Get the determinant of this matrix.
16
+ * @see [Determinant](https://en.wikipedia.org/wiki/Determinant)
17
+ */
5
18
  get determinant(): number;
19
+ /**
20
+ * Calculate the adjugate of this matrix.
21
+ * @returns The adjugate of this matrix.
22
+ * @see [Adjugate matrix](https://en.wikipedia.org/wiki/Adjugate_matrix)
23
+ */
6
24
  adjoint(): SlowSquareMatrix;
25
+ /**
26
+ * Create a copy of this matrix.
27
+ * @returns A copy of this matrix.
28
+ */
7
29
  clone(): SlowSquareMatrix;
30
+ /**
31
+ * Calculate the cofactor of this matrix.
32
+ * @returns The cofactor.
33
+ * @see [Minor](https://en.wikipedia.org/wiki/Minor_(linear_algebra))
34
+ */
8
35
  cofactor(): SlowSquareMatrix;
36
+ /**
37
+ * Reset this matrix to identity.
38
+ * @returns This matrix.
39
+ * @see [Identity matrix](https://en.wikipedia.org/wiki/Identity_matrix)
40
+ */
9
41
  identity(): this;
42
+ /**
43
+ * Invert this matrix.
44
+ * @returns The inverted matrix.
45
+ * @see [Invertible matrix](https://en.wikipedia.org/wiki/Invertible_matrix)
46
+ */
10
47
  invert(): SlowSquareMatrix;
48
+ /**
49
+ * Calculate the minor of this matrix that results from removing the given row and column.
50
+ * @param row - The row to remove.
51
+ * @param col - The column to remove.
52
+ * @returns The minor.
53
+ * @see [Minor](https://en.wikipedia.org/wiki/Minor_(linear_algebra))
54
+ */
11
55
  minor(row: number, col: number): number;
56
+ /**
57
+ * Create a submatrix by removing the given row and column from this matrix.
58
+ * @param row - The row to remove.
59
+ * @param col - The column to remove.
60
+ * @returns The submatrix.
61
+ */
12
62
  submatrix(row: number, col: number): SlowSquareMatrix;
63
+ /**
64
+ * Transpose this matrix.
65
+ * @returns The transpose of this matrix.
66
+ * @see [Transpose](https://en.wikipedia.org/wiki/Transpose)
67
+ */
13
68
  transpose(): SlowSquareMatrix;
14
69
  }
15
70
  //# sourceMappingURL=SlowSquareMatrix.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlowSquareMatrix.d.ts","sourceRoot":"","sources":["../../src/linalg/SlowSquareMatrix.ts"],"names":[],"mappings":"AAEA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAMlD,MAAM,CAAC,OAAO,OAAO,gBACpB,SAAQ,UACR,YAAW,YAAY;gBAOJ,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE;IAgBtC,IAAW,WAAW,WAmBrB;IAOM,OAAO;IAQE,KAAK;IAoBd,QAAQ;IAkBR,QAAQ;IAeR,MAAM;IAuEN,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAU9B,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IA8BzB,SAAS;CAezB"}
1
+ {"version":3,"file":"SlowSquareMatrix.d.ts","sourceRoot":"","sources":["../../src/linalg/SlowSquareMatrix.ts"],"names":[],"mappings":"AAEA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAElD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,gBACpB,SAAQ,UACR,YAAW,YAAY;IAEvB;;;;OAIG;gBACgB,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE;IAYtC;;;OAGG;IACH,IAAW,WAAW,IAAI,MAAM,CAmB/B;IAED;;;;OAIG;IACI,OAAO,IAAI,gBAAgB;IAIlC;;;OAGG;IACa,KAAK,IAAI,gBAAgB;IAezC;;;;OAIG;IACI,QAAQ,IAAI,gBAAgB;IAanC;;;;OAIG;IACI,QAAQ,IAAI,IAAI;IAUvB;;;;OAIG;IACI,MAAM,IAAI,gBAAgB;IAgEjC;;;;;;OAMG;IACI,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAI9C;;;;;OAKG;IACI,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB;IAyB5D;;;;OAIG;IACa,SAAS,IAAI,gBAAgB;CAe7C"}
@@ -1,9 +1,19 @@
1
1
  import MatrixSizeError from "../utility/MatrixSizeError.js";
2
2
  import SingularMatrixError from "../utility/SingularMatrixError.js";
3
3
  import SlowMatrix from "./SlowMatrix.js";
4
+ /**
5
+ * A variable-size matrix with the same number of rows and columns.
6
+ * @see [Square matrix](https://en.wikipedia.org/wiki/Square_matrix)
7
+ */
4
8
  export default class SlowSquareMatrix extends SlowMatrix {
9
+ /**
10
+ * Create a variable-size matrix with the same number of rows and columns from the given columns.
11
+ * @param cols - The columns in the matrix.
12
+ * @see [Square matrix](https://en.wikipedia.org/wiki/Square_matrix)
13
+ */
5
14
  constructor(...cols) {
6
15
  super(...cols);
16
+ // Ensure that every column is the same height and that the height is equal to the width.
7
17
  for (let i = 0; i < this.width; i++) {
8
18
  const col = cols[i];
9
19
  if (typeof col === "undefined" || col.length !== this.height) {
@@ -11,6 +21,10 @@ export default class SlowSquareMatrix extends SlowMatrix {
11
21
  }
12
22
  }
13
23
  }
24
+ /**
25
+ * Get the determinant of this matrix.
26
+ * @see [Determinant](https://en.wikipedia.org/wiki/Determinant)
27
+ */
14
28
  get determinant() {
15
29
  if (this.length < 1) {
16
30
  throw new MatrixSizeError();
@@ -28,9 +42,18 @@ export default class SlowSquareMatrix extends SlowMatrix {
28
42
  }
29
43
  return out;
30
44
  }
45
+ /**
46
+ * Calculate the adjugate of this matrix.
47
+ * @returns The adjugate of this matrix.
48
+ * @see [Adjugate matrix](https://en.wikipedia.org/wiki/Adjugate_matrix)
49
+ */
31
50
  adjoint() {
32
51
  return this.cofactor().transpose();
33
52
  }
53
+ /**
54
+ * Create a copy of this matrix.
55
+ * @returns A copy of this matrix.
56
+ */
34
57
  clone() {
35
58
  const cols = [];
36
59
  for (let x = 0; x < this.width; x++) {
@@ -44,15 +67,27 @@ export default class SlowSquareMatrix extends SlowMatrix {
44
67
  }
45
68
  return new SlowSquareMatrix(...cols);
46
69
  }
70
+ /**
71
+ * Calculate the cofactor of this matrix.
72
+ * @returns The cofactor.
73
+ * @see [Minor](https://en.wikipedia.org/wiki/Minor_(linear_algebra))
74
+ */
47
75
  cofactor() {
48
76
  const out = [];
49
77
  for (let i = 0; i < this.width; i++) {
78
+ // Column `i`.
50
79
  for (let j = 0; j < this.height; j++) {
80
+ // Row `j`.
51
81
  (out[j] ??= [])[i] = ((i + j) % 2 ? -1 : 1) * this.minor(i, j);
52
82
  }
53
83
  }
54
84
  return new SlowSquareMatrix(...out);
55
85
  }
86
+ /**
87
+ * Reset this matrix to identity.
88
+ * @returns This matrix.
89
+ * @see [Identity matrix](https://en.wikipedia.org/wiki/Identity_matrix)
90
+ */
56
91
  identity() {
57
92
  for (let i = 0; i < this.width; i++) {
58
93
  for (let j = 0; j < this.height; j++) {
@@ -61,6 +96,11 @@ export default class SlowSquareMatrix extends SlowMatrix {
61
96
  }
62
97
  return this;
63
98
  }
99
+ /**
100
+ * Invert this matrix.
101
+ * @returns The inverted matrix.
102
+ * @see [Invertible matrix](https://en.wikipedia.org/wiki/Invertible_matrix)
103
+ */
64
104
  invert() {
65
105
  const dim = this.width;
66
106
  const clone = this.clone();
@@ -116,9 +156,22 @@ export default class SlowSquareMatrix extends SlowMatrix {
116
156
  }
117
157
  return identity;
118
158
  }
159
+ /**
160
+ * Calculate the minor of this matrix that results from removing the given row and column.
161
+ * @param row - The row to remove.
162
+ * @param col - The column to remove.
163
+ * @returns The minor.
164
+ * @see [Minor](https://en.wikipedia.org/wiki/Minor_(linear_algebra))
165
+ */
119
166
  minor(row, col) {
120
167
  return this.submatrix(row, col).determinant;
121
168
  }
169
+ /**
170
+ * Create a submatrix by removing the given row and column from this matrix.
171
+ * @param row - The row to remove.
172
+ * @param col - The column to remove.
173
+ * @returns The submatrix.
174
+ */
122
175
  submatrix(row, col) {
123
176
  const cols = [];
124
177
  for (let i = 0; i < this.width; i++) {
@@ -138,6 +191,11 @@ export default class SlowSquareMatrix extends SlowMatrix {
138
191
  }
139
192
  return new SlowSquareMatrix(...cols);
140
193
  }
194
+ /**
195
+ * Transpose this matrix.
196
+ * @returns The transpose of this matrix.
197
+ * @see [Transpose](https://en.wikipedia.org/wiki/Transpose)
198
+ */
141
199
  transpose() {
142
200
  const cols = [];
143
201
  for (let x = 0; x < this.width; x++) {
@@ -1 +1 @@
1
- {"version":3,"file":"SlowSquareMatrix.js","sourceRoot":"","sources":["../../src/linalg/SlowSquareMatrix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SlowSquareMatrix.js","sourceRoot":"","sources":["../../src/linalg/SlowSquareMatrix.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,31 @@
1
1
  import type { default as Matrix, MatrixLike } from "./Matrix.js";
2
+ /**
3
+ * A matrix with the same number of rows and columns.
4
+ * @see [Square matrix](https://en.wikipedia.org/wiki/Square_matrix)
5
+ */
2
6
  export default interface SquareMatrix extends Matrix {
7
+ /**
8
+ * Get the determinant of this matrix.
9
+ * @see [Determinant](https://en.wikipedia.org/wiki/Determinant)
10
+ */
3
11
  get determinant(): number;
12
+ /**
13
+ * Calculate the adjugate of this matrix.
14
+ * @returns The adjugate of this matrix.
15
+ * @see [Adjugate matrix](https://en.wikipedia.org/wiki/Adjugate_matrix)
16
+ */
4
17
  adjoint(): MatrixLike;
18
+ /**
19
+ * Reset this matrix to identity.
20
+ * @returns This matrix.
21
+ * @see [Identity matrix](https://en.wikipedia.org/wiki/Identity_matrix)
22
+ */
5
23
  identity(): this;
24
+ /**
25
+ * Invert this matrix.
26
+ * @returns The inverted matrix.
27
+ * @see [Invertible matrix](https://en.wikipedia.org/wiki/Invertible_matrix)
28
+ */
6
29
  invert(): MatrixLike;
7
30
  }
8
31
  //# sourceMappingURL=SquareMatrix.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SquareMatrix.d.ts","sourceRoot":"","sources":["../../src/linalg/SquareMatrix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAMjE,MAAM,CAAC,OAAO,WAAW,YAAa,SAAQ,MAAM;IAKnD,IAAI,WAAW,IAAI,MAAM,CAAC;IAO1B,OAAO,IAAI,UAAU,CAAC;IAOtB,QAAQ,IAAI,IAAI,CAAC;IAOjB,MAAM,IAAI,UAAU,CAAC;CACrB"}
1
+ {"version":3,"file":"SquareMatrix.d.ts","sourceRoot":"","sources":["../../src/linalg/SquareMatrix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEjE;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,YAAa,SAAQ,MAAM;IACnD;;;OAGG;IACH,IAAI,WAAW,IAAI,MAAM,CAAC;IAE1B;;;;OAIG;IACH,OAAO,IAAI,UAAU,CAAC;IAEtB;;;;OAIG;IACH,QAAQ,IAAI,IAAI,CAAC;IAEjB;;;;OAIG;IACH,MAAM,IAAI,UAAU,CAAC;CACrB"}