UNPKG

enhancedmath

Version:

This package contains some enhanced mathematical operations

26 lines (25 loc) 713 B
import { getDimensions } from '../Helpers/index'; /** * Calculates the matrix product of 2 matrices * @param A Matrix a * @param B Matrix b */ const matrix_product = (A, B) => { const dimsA = getDimensions(A); const dimsB = getDimensions(B); if (dimsA.cols !== dimsB.rows) { return undefined; } const result = new Array(dimsA.rows); for (let i = 0; i < dimsA.rows; i++) { result[i] = new Array(dimsB.cols); for (let j = 0; j < dimsB.cols; j++) { result[i][j] = 0; for (let k = 0; k < dimsA.cols; k++) { result[i][j] += A[i][k] * B[k][j]; } } } return result; }; export default matrix_product;