diff options
Diffstat (limited to 'lib/Numeric')
-rw-r--r-- | lib/Numeric/Container.hs | 2 | ||||
-rw-r--r-- | lib/Numeric/LinearAlgebra/LAPACK/lapack-aux.h | 4 | ||||
-rw-r--r-- | lib/Numeric/Matrix.hs | 2 |
3 files changed, 6 insertions, 2 deletions
diff --git a/lib/Numeric/Container.hs b/lib/Numeric/Container.hs index 8cf3e07..83bf44e 100644 --- a/lib/Numeric/Container.hs +++ b/lib/Numeric/Container.hs | |||
@@ -62,7 +62,7 @@ type instance IndexOf Matrix = (Int,Int) | |||
62 | ------------------------------------------------------------------- | 62 | ------------------------------------------------------------------- |
63 | 63 | ||
64 | -- | Basic element-by-element functions for numeric containers | 64 | -- | Basic element-by-element functions for numeric containers |
65 | class (Complexable c, Element e) => Container c e where | 65 | class (Complexable c, Fractional e, Element e) => Container c e where |
66 | -- | create a structure with a single element | 66 | -- | create a structure with a single element |
67 | scalar :: e -> c e | 67 | scalar :: e -> c e |
68 | -- | complex conjugate | 68 | -- | complex conjugate |
diff --git a/lib/Numeric/LinearAlgebra/LAPACK/lapack-aux.h b/lib/Numeric/LinearAlgebra/LAPACK/lapack-aux.h index 12dcde4..0543f7a 100644 --- a/lib/Numeric/LinearAlgebra/LAPACK/lapack-aux.h +++ b/lib/Numeric/LinearAlgebra/LAPACK/lapack-aux.h | |||
@@ -64,18 +64,22 @@ typedef short ftnlen; | |||
64 | 64 | ||
65 | /********************************************************/ | 65 | /********************************************************/ |
66 | 66 | ||
67 | int multiplyF(int ta, int tb, KFMAT(a),KFMAT(b),FMAT(r)); | ||
67 | int multiplyR(int ta, int tb, KDMAT(a),KDMAT(b),DMAT(r)); | 68 | int multiplyR(int ta, int tb, KDMAT(a),KDMAT(b),DMAT(r)); |
68 | int multiplyC(int ta, int tb, KCMAT(a),KCMAT(b),CMAT(r)); | 69 | int multiplyC(int ta, int tb, KCMAT(a),KCMAT(b),CMAT(r)); |
70 | int multiplyQ(int ta, int tb, KQMAT(a),KQMAT(b),QMAT(r)); | ||
69 | 71 | ||
70 | int transF(KFMAT(x),FMAT(t)); | 72 | int transF(KFMAT(x),FMAT(t)); |
71 | int transR(KDMAT(x),DMAT(t)); | 73 | int transR(KDMAT(x),DMAT(t)); |
72 | int transQ(KQMAT(x),QMAT(t)); | 74 | int transQ(KQMAT(x),QMAT(t)); |
73 | int transC(KCMAT(x),CMAT(t)); | 75 | int transC(KCMAT(x),CMAT(t)); |
76 | int transP(KPMAT(x),PMAT(t)); | ||
74 | 77 | ||
75 | int constantF(float * pval, FVEC(r)); | 78 | int constantF(float * pval, FVEC(r)); |
76 | int constantR(double * pval, DVEC(r)); | 79 | int constantR(double * pval, DVEC(r)); |
77 | int constantQ(complex* pval, QVEC(r)); | 80 | int constantQ(complex* pval, QVEC(r)); |
78 | int constantC(doublecomplex* pval, CVEC(r)); | 81 | int constantC(doublecomplex* pval, CVEC(r)); |
82 | int constantP(void* pval, PVEC(r)); | ||
79 | 83 | ||
80 | int float2double(FVEC(x),DVEC(y)); | 84 | int float2double(FVEC(x),DVEC(y)); |
81 | int double2float(DVEC(x),FVEC(y)); | 85 | int double2float(DVEC(x),FVEC(y)); |
diff --git a/lib/Numeric/Matrix.hs b/lib/Numeric/Matrix.hs index f78e0c2..d5c6f44 100644 --- a/lib/Numeric/Matrix.hs +++ b/lib/Numeric/Matrix.hs | |||
@@ -63,7 +63,7 @@ instance (Container Vector a, Fractional (Vector a), Num (Matrix a)) => Fraction | |||
63 | 63 | ||
64 | --------------------------------------------------------- | 64 | --------------------------------------------------------- |
65 | 65 | ||
66 | instance (Container Vector a, Floating (Vector a), Fractional (Matrix a)) => Floating (Matrix a) where | 66 | instance (Floating a, Container Vector a, Floating (Vector a), Fractional (Matrix a)) => Floating (Matrix a) where |
67 | sin = liftMatrix sin | 67 | sin = liftMatrix sin |
68 | cos = liftMatrix cos | 68 | cos = liftMatrix cos |
69 | tan = liftMatrix tan | 69 | tan = liftMatrix tan |