1 #ifndef FIRM_ADT_GAUSSSEIDEL_H 2 #define FIRM_ADT_GAUSSSEIDEL_H 8 typedef struct gs_matrix_t gs_matrix_t;
15 FIRM_API gs_matrix_t *gs_new_matrix(
unsigned n_init_rows,
unsigned n_init_cols);
20 FIRM_API
void gs_delete_matrix(gs_matrix_t *m);
25 FIRM_API
void gs_matrix_set(gs_matrix_t *m,
unsigned row,
unsigned col,
31 FIRM_API
double gs_matrix_get(
const gs_matrix_t *m,
unsigned row,
unsigned col);
38 FIRM_API
double gs_matrix_gauss_seidel(
const gs_matrix_t *m,
double *x);
40 FIRM_API
unsigned gs_matrix_get_n_entries(
const gs_matrix_t *m);
45 FIRM_API
void gs_matrix_dump(
const gs_matrix_t *m, FILE *out);