|
RcdMathLib_doc
Open Source Library for Linear and Non-linear Algebra
|
Go to the documentation of this file.
96 puts(
"[solve_householder]: The equation is not solvable !!!");
119 puts(
"[solve_givens]: The equation is not solvable !!!");
149 "[solve_lu_decomp]: Only quadratic linear equation systems are supported !!!");
int8_t moore_penrose_get_pinv(uint8_t m, uint8_t n, matrix_t A[m][n], matrix_t pinv_A[n][m])
Calculate the Moore–Penrose inverse of a rectangular matrix.
void matrix_mul_vec(uint8_t m, uint8_t n, matrix_t matrix[m][n], matrix_t vec[n], matrix_t dst_arr[m])
Compute the multiplication of a matrix with a column vector.
int8_t qr_householder_decomp(uint8_t m, uint8_t n, matrix_t A[][n], uint8_t q_col_num, matrix_t Q[][q_col_num], bool reduced)
Computes the QR decomposition of the matrix A by using the Householder algorithm.
Householder algorithm for the QR-decomposition.
Computes the LU decomposition of the matrix.
void qr_common_backward_subst(uint8_t m, uint8_t n, matrix_t U[][n], matrix_t b[m], matrix_t x_sol[m])
Implements the backward substitution algorithm.
int8_t solve(uint8_t m, uint8_t n, matrix_t A[][n], matrix_t b[m], matrix_t x_sol[n], enum ALGORITHM algo)
Solve an (m n) linear system Ax = b by using the Moore–Penrose, Householder, or the Givens algorithm...
void matrix_trans_mul_vec(uint8_t m, uint8_t n, matrix_t A[m][n], uint8_t b_size, matrix_t b_vec[m], matrix_t c_vec[n])
Compute the multiplication of transposed matrix with column vector.
Enables to solve systems of linear equations Ax = b for x.
Moore–Penrose algorithm to compute the pseudo-inverse of a matrix.
int8_t solve_lu_decomp(uint8_t m, uint8_t n, matrix_t A[][n], matrix_t b[m], matrix_t x_sol[n])
Solve an (m n) linear system Ax = b, using the Gaussian Elimination with pivoting algorithm.
void matrix_get_inv_low_triang(uint8_t m, uint8_t n, matrix_t L[][n], matrix_t inv_L[][m])
Computes the inverse a lower triangular matrix.
uint8_t lu_decomp(uint8_t n, matrix_t A[][n], matrix_t L[][n], matrix_t P[][n])
Computes the LU decomposition of the matrix.
ALGORITHM
Possible algorithms to compute the pseudo-inverse matrix.
Common definitions and implementations for the QR-decomposition. Provide necessary methods to constru...
Gaussian elimination with pivoting algorithm.
int8_t solve_givens(uint8_t m, uint8_t n, matrix_t A[][n], matrix_t b[m], matrix_t x_sol[n])
Solve an (m n) linear system Ax = b, using the Givens algorithm.
int8_t qr_givens_decomp(uint8_t m, uint8_t n, matrix_t A[][n], uint8_t q_col_num, matrix_t Q[][q_col_num], bool reduced)
Computes the QR decomposition of the matrix A by using the Givens algorithm.
#define matrix_t
Define the data type of the matrix elements.
int8_t solve_householder(uint8_t m, uint8_t n, matrix_t A[][n], matrix_t b[m], matrix_t x_sol[n])
Solve an (m n) linear system Ax = b, using the Householder algorithm.
Givens algorithm for the QR-decomposition. Provide necessary methods to construct Q- and R- matrices ...
void matrix_mul(uint8_t a_line_num, uint8_t a_col_num, matrix_t a_matrix[a_line_num][a_col_num], uint8_t b_line_num, uint8_t b_col_num, matrix_t b_matrix[b_line_num][b_col_num], matrix_t dest_matrix[a_line_num][b_col_num])
Compute the multiplication of two matrices.