Matrix * create_matrix(int rows, int columns)
Returns a pointer to a Matrix with rows rows and columns columns. Note that the new matrix is empty...
bool compare_matrices(Matrix *a, Matrix *b)
Use this function to compare to matrices. The criteria used to compare the matrices are the dimension...
Matrix * get_minor(Matrix *a, int line, int column)
Returns the minorant of a matrix by a specific row and column.
int multiply_matrices(Matrix *a, Matrix *b, Matrix **result)
Multiplies the matrices a and b and stores their results in the matrix result. Note that the function...
Matrix * matrix_pow(Matrix *a, int power)
raise the matrix a to the power power.
double ** value
Definition: matrix.h:26
int columns
Definition: matrix.h:21
int add_matrices(Matrix *a, Matrix *b, Matrix **result)
Use this function to add 2 matrices. Note that the result will be stored in a third matrix...
double get_determinant(Matrix *a)
Returns the determinant of a matrix.
int get_transpose(Matrix *a, Matrix **transpose)
Stores the transpose of the matrix a in the matrix transpose.
void multiply_matrix_with_scalar(Matrix *a, double scalar)
Multiplies a matrix a with an scalar. Note that the new value of the matrix will be the result of thi...
void read_matrix(Matrix *a)
Utility function used to read a matrix from the standard input.
void copy_matrix(Matrix *a, Matrix **destination)
Copies the contents of the matrix a to the matrix destinaation.
int print_matrix(Matrix *a)
utility function used to print a matrix to the standar output.
void destroy_matrix(Matrix *a)
struct Matrix * inverse
Definition: matrix.h:27
int compute_inverse(Matrix *a)
Computes the inverse of the matrix a. Note that the inverse of matrix a will be stored in the inverse...
int lines
Definition: matrix.h:20
double trace
Definition: matrix.h:24
double determinant
Definition: matrix.h:23