#pragma once #include #include using namespace std; /** Solve linear system of equations with multiple right hand sides using LU factorization * @param[inout] A NxN Matrix (1D access), gets modified to contain the LU decomposition of A * @param[inout] B N x n_rhs Matrix of right-hand-sides (1D access), gets modified to contain the solution vectors x * @param[in] n_rhs number of right-hand-sides b * */ void factorization_solve(vector &A, vector &b, const int32_t &n_rhs); /** Print a matrix to console * @param[in] A MxN Matrix (1D access) * @param[in] M rows * @param[in] N columns * */ void print_matrix(vector &A, size_t M, size_t N);