dot method
Dot product of two matrices
matrixBThe matrix to perform the dot product with- Returns The new matrix
Implementation
Matrix dot(Matrix matrixB) {
if (getDimensions()[1] != matrixB.getDimensions()[0]) {
throw Exception(
"Matrix dimensions must be in the form : MxN × NxP, ${getDimensions()[0]}x${getDimensions()[1]} × ${matrixB.getDimensions()[0]}×${matrixB.getDimensions()[1]}",
);
}
Matrix newMatrix = Matrix(getDimensions()[0], matrixB.getDimensions()[1]);
for (int i = 0; i < _matrix.length; i++) {
for (int j = 0; j < matrixB._matrix[0].length; j++) {
for (int k = 0; k < matrixB._matrix.length; k++) {
newMatrix.setAt(
i,
j,
value: newMatrix.getAt(i, j) + getAt(i, k) * matrixB.getAt(k, j),
);
}
}
}
return newMatrix;
}