summaryrefslogtreecommitdiff
path: root/lib/Data/Packed/Internal/aux.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Data/Packed/Internal/aux.h')
-rw-r--r--lib/Data/Packed/Internal/aux.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/Data/Packed/Internal/aux.h b/lib/Data/Packed/Internal/aux.h
new file mode 100644
index 0000000..f45b55a
--- /dev/null
+++ b/lib/Data/Packed/Internal/aux.h
@@ -0,0 +1,21 @@
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
13
14int transR(KRMAT(x),RMAT(t));
15int transC(KCMAT(x),CMAT(t));
16
17int constantR(double *val , RVEC(r));
18int constantC(gsl_complex *val, CVEC(r));
19
20int multiplyR(int ta, KRMAT(a), int tb, KRMAT(b),RMAT(r));
21int multiplyC(int ta, KCMAT(a), int tb, KCMAT(b),CMAT(r));