|
|
|
@ -3,7 +3,7 @@
|
|
|
|
|
matrix = {}
|
|
|
|
|
|
|
|
|
|
function matrix.T(a: table)
|
|
|
|
|
local m: integer, n: integer, x: table = #a, #a[1], {};
|
|
|
|
|
local m: integer, n: integer, x: table = #a, @integer(#a[1]), {};
|
|
|
|
|
for i = 1, n do
|
|
|
|
|
local xi: number[] = table.numarray(n, 0.0)
|
|
|
|
|
x[i] = xi
|
|
|
|
@ -14,7 +14,7 @@ end
|
|
|
|
|
|
|
|
|
|
function matrix.mul(a: table, b: table)
|
|
|
|
|
assert(@integer(#a[1]) == #b);
|
|
|
|
|
local m: integer, n: integer, p: integer, x: table = #a, #a[1], #b[1], {};
|
|
|
|
|
local m: integer, n: integer, p: integer, x: table = #a, @integer(#a[1]), @integer(#b[1]), {};
|
|
|
|
|
local c: table = matrix.T(b); -- transpose for efficiency
|
|
|
|
|
for i = 1, m do
|
|
|
|
|
local xi: number[] = table.numarray(p, 0.0)
|
|
|
|
|