libFirm
gaussseidel.h
1 #ifndef FIRM_ADT_GAUSSSEIDEL_H
2 #define FIRM_ADT_GAUSSSEIDEL_H
3 
4 #include <stdio.h>
5 
6 #include "../begin.h"
7 
8 typedef struct gs_matrix_t gs_matrix_t;
9 
15 FIRM_API gs_matrix_t *gs_new_matrix(unsigned n_init_rows, unsigned n_init_cols);
16 
20 FIRM_API void gs_delete_matrix(gs_matrix_t *m);
21 
25 FIRM_API void gs_matrix_set(gs_matrix_t *m, unsigned row, unsigned col,
26  double val);
27 
31 FIRM_API double gs_matrix_get(const gs_matrix_t *m, unsigned row, unsigned col);
32 
38 FIRM_API double gs_matrix_gauss_seidel(const gs_matrix_t *m, double *x);
39 
40 FIRM_API unsigned gs_matrix_get_n_entries(const gs_matrix_t *m);
41 
45 FIRM_API void gs_matrix_dump(const gs_matrix_t *m, FILE *out);
46 
47 #include "../end.h"
48 
49 #endif