#ifndef _GNU_SOURCE
#define _GNU_SOURCE
#endif
+#ifndef _XOPEN_SOURCE
+#define _XOPEN_SOURCE 1000
+#endif
+
+#include <sys/types.h>
+#include <sys/stat.h>
#include <math.h>
#include <float.h>
#include <errno.h>
#include <string.h>
#include <unistd.h>
+#include <stdint.h>
#include <gsl/gsl_vector.h>
#include <gsl/gsl_matrix.h>
#include <gsl/gsl_blas.h>
#include <gsl/gsl_linalg.h>
+#include <gsl/gsl_interp.h>
#define D3 3
double hypotD2plus(const double p[D3], const double q[D3], double add);
double magnD(const double pq[D3]);
+double magnD2(const double pq[D3]);
void xprod(double r[D3], const double a[D3], const double b[D3]);
double dotprod(const double a[D3], const double b[D3]);
+void xprod_norm(double r[D3], const double a[D3], const double b[D3],
+ double one, double absepsilon);
+void normalise(double v[D3], double one, double absepsilon);
void flushoutput(void);
void diee(const char *what);
+void fail(const char *emsg);
void libdie(const char *lib, int l, const char *str);
#define XA(w) ((w) ? (void)0 : libdie("X", __LINE__, #w))