summaryrefslogtreecommitdiff
path: root/lib/Numeric/GSL/gsl-aux.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Numeric/GSL/gsl-aux.h')
-rw-r--r--lib/Numeric/GSL/gsl-aux.h62
1 files changed, 62 insertions, 0 deletions
diff --git a/lib/Numeric/GSL/gsl-aux.h b/lib/Numeric/GSL/gsl-aux.h
new file mode 100644
index 0000000..3ccac25
--- /dev/null
+++ b/lib/Numeric/GSL/gsl-aux.h
@@ -0,0 +1,62 @@
1#include <gsl/gsl_complex.h>
2
3#define RVEC(A) int A##n, double*A##p
4#define RMAT(A) int A##r, int A##c, double* A##p
5#define KRVEC(A) int A##n, const double*A##p
6#define KRMAT(A) int A##r, int A##c, const double* A##p
7
8#define CVEC(A) int A##n, gsl_complex*A##p
9#define CMAT(A) int A##r, int A##c, gsl_complex* A##p
10#define KCVEC(A) int A##n, const gsl_complex*A##p
11#define KCMAT(A) int A##r, int A##c, const gsl_complex* A##p
12
13void no_abort_on_error();
14
15int toScalarR(int code, KRVEC(x), RVEC(r));
16/* norm2, absdif, maximum, posmax, etc. */
17
18int mapR(int code, KRVEC(x), RVEC(r));
19int mapC(int code, KCVEC(x), CVEC(r));
20/* sin cos tan etc. */
21
22int mapValR(int code, double*, KRVEC(x), RVEC(r));
23int mapValC(int code, gsl_complex*, KCVEC(x), CVEC(r));
24
25int zipR(int code, KRVEC(a), KRVEC(b), RVEC(r));
26int zipC(int code, KCVEC(a), KCVEC(b), CVEC(r));
27
28
29int luSolveR(KRMAT(a),KRMAT(b),RMAT(r));
30int luSolveC(KCMAT(a),KCMAT(b),CMAT(r));
31int luRaux(KRMAT(a),RVEC(b));
32int luCaux(KCMAT(a),CVEC(b));
33
34int svd(KRMAT(x),RMAT(u), RVEC(s),RMAT(v));
35
36int eigensystemR(KRMAT(x),RVEC(l),RMAT(v));
37int eigensystemC(KCMAT(x),RVEC(l),CMAT(v));
38
39int QR(KRMAT(x),RMAT(q),RMAT(r));
40
41int cholR(KRMAT(x),RMAT(l));
42
43int cholC(KCMAT(x),CMAT(l));
44
45int fft(int code, KCVEC(a), CVEC(b));
46
47int integrate_qng(double f(double, void*), double a, double b, double prec,
48 double *result, double*error);
49
50int integrate_qags(double f(double,void*), double a, double b, double prec, int w,
51 double *result, double* error);
52
53int polySolve(KRVEC(a), CVEC(z));
54
55int minimize(double f(int, double*), double tolsize, int maxit,
56 KRVEC(xi), KRVEC(sz), RMAT(sol));
57
58int minimizeWithDeriv(double f(int, double*), void df(int, double*, double*),
59 double initstep, double minimpar, double tolgrad, int maxit,
60 KRVEC(xi), RMAT(sol));
61
62int deriv(int code, double f(double, void*), double x, double h, double * result, double * abserr);