From 902faa66e3da52a1a4cf7b1dc7da6e6bf0d47d34 Mon Sep 17 00:00:00 2001 From: Determinant Date: Fri, 15 May 2015 03:13:31 +0800 Subject: add cumatrix --- matrix/init.lua | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 matrix/init.lua (limited to 'matrix/init.lua') 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 -- cgit v1.2.3-70-g09d2