aboutsummaryrefslogtreecommitdiff
path: root/matrix/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'matrix/init.lua')
-rw-r--r--matrix/init.lua38
1 files changed, 38 insertions, 0 deletions
diff --git a/matrix/init.lua b/matrix/init.lua
new file mode 100644
index 0000000..59b8384
--- /dev/null
+++ b/matrix/init.lua
@@ -0,0 +1,38 @@
+function nerv.FloatCuMatrix:__tostring__()
+ local ncol = self:ncol()
+ local nrow = self:nrow()
+ local strt = {}
+
+ if nrow == 1 then
+ for col = 0, ncol - 1 do
+ table.insert(strt, string.format("%f ", self[col]))
+ end
+ table.insert(strt, "\n")
+ else
+ for row = 0, nrow - 1 do
+ local rp = self[row]
+ for col = 0, ncol - 1 do
+ table.insert(strt, string.format("%f ", rp[col]))
+ end
+ table.insert(strt, "\n")
+ end
+ end
+ table.insert(strt, string.format("[Float Matrix %d x %d]", nrow, ncol))
+ return table.concat(strt)
+end
+
+function nerv.FloatMatrix:__tostring__()
+ local ncol = self:ncol()
+ local nrow = self:nrow()
+ local i = 0
+ local strt = {}
+ for row = 0, nrow - 1 do
+ for col = 0, ncol - 1 do
+ table.insert(strt, string.format("%f ", self:get_elem(i)))
+ i = i + 1
+ end
+ table.insert(strt, "\n")
+ end
+ table.insert(strt, string.format("[Float Matrix %d x %d]", nrow, ncol))
+ return table.concat(strt)
+end