2016-11-12 21:53:11 +01:00
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
|
|
|
/* #define ENABLE_LOG */
|
|
|
|
|
|
|
|
#ifdef ENABLE_LOG
|
|
|
|
# define LOG(x) x
|
|
|
|
#else
|
|
|
|
# define LOG(x) (void) 0
|
|
|
|
#endif
|
|
|
|
|
|
|
|
typedef struct borders {
|
|
|
|
double north;
|
|
|
|
double east;
|
|
|
|
double south;
|
|
|
|
double west;
|
|
|
|
} borders;
|
|
|
|
|
2016-11-13 11:06:05 +01:00
|
|
|
|
2016-11-13 13:11:24 +01:00
|
|
|
/*
|
|
|
|
* Create a matrix stored in a single array.
|
|
|
|
*/
|
2016-11-13 11:06:05 +01:00
|
|
|
double *create_sa_matrix(int rows, int cols);
|
2016-11-13 13:11:24 +01:00
|
|
|
|
|
|
|
/*
|
|
|
|
* Destroy a single array matrix.
|
|
|
|
*/
|
2016-11-13 11:06:05 +01:00
|
|
|
void destroy_sa_matrix(double *x);
|
2016-11-13 13:11:24 +01:00
|
|
|
|
|
|
|
/*
|
|
|
|
* Get the index for the single array matrix
|
|
|
|
* that correspond to the given row and column.
|
|
|
|
*/
|
2016-11-13 11:06:05 +01:00
|
|
|
int sa_index(int cols, int r, int c);
|
|
|
|
|
2016-11-13 13:11:24 +01:00
|
|
|
/*
|
|
|
|
* Print a single array matrix.
|
|
|
|
*/
|
|
|
|
void print_sa_matrix(double *x, int rows, int cols);
|
|
|
|
|
2016-11-12 21:53:11 +01:00
|
|
|
double **create_matrix(int rows, int cols);
|
2016-11-13 11:06:05 +01:00
|
|
|
void destroy_matrix(double **x, int rows);
|
2016-11-12 21:53:11 +01:00
|
|
|
void print_matrix(double **x, int rows, int cols);
|