public mat turn() { mat result = new mat(rowCount,lineCount); reLine(); while (it.line!= null) { while (it.row!= null) { result.set(it.row.rowId, it.line.lineId,it.row.value); it.nextRow(); } it.nextLine(); } return result; }
static public mat operator *(mat tar,mat obj) { mat result = new mat(tar.lineCount,obj.rowCount); tar.reLine(); obj.reLine(); while (tar.it.line!=null) { for (int i = 0; i < obj.rowCount; i++) { double sum = 0; while (tar.it.row != null) { sum += tar.it.row.value * obj.get(tar.it.row.rowId, i); tar.it.nextRow(); } result.set(tar.it.line.lineId, i,sum); tar.it.reRow(); } tar.it.nextLine(); } return result; }