// // Created by Brady Bodily on 3/29/20. // #include #ifndef HW10_PARSEMATRIXFORMPI_H #define HW10_PARSEMATRIXFORMPI_H namespace matrixTools { template std::vector> UnflattenMatrix(std::vector originalVector, int rowSize, int columnSize) { std::vector> matrix(columnSize, std::vector(rowSize, 0)); for (int i = 0; i < columnSize; i++) { for (int j = 0; j < rowSize; j++) { matrix[i][j] = originalVector[i + j]; } } return matrix; } template std::vector FlattenMatrix(std::vector> matrix) { std::vector rVector(matrix.size() * matrix[0].size(), 0); for (int i = 0; i < matrix.size(); i++) { for (int j = 0; j < matrix[0].size(); j++) { rVector[i + j] = matrix[i][j]; } } return rVector; } } #endif //HW10_PARSEMATRIXFORMPI_H