11 template<
class M,
class V>
22 inline friend void dgemv(CBLAS_TRANSPOSE_t t,
28 gsl_blas_dgemv(t, a, m.gsl(), x.gsl(), b, yinout.gsl());
40 inline friend V
amxby(CBLAS_TRANSPOSE_t t,
47 gsl_blas_dgemv(t, a, m.gsl(), x.gsl(), b, out.
gsl());
59 inline friend V
amx(CBLAS_TRANSPOSE_t t,
double a,
const M &m,
62 gsl_blas_dgemv(t, a, m.gsl(), x.gsl(), 0, out.gsl());
73 inline friend V
dot(
const M &m,
const V &v,
74 CBLAS_TRANSPOSE_t type = CblasNoTrans) {
75 return amx(type, 1, m, v);
89 inline friend void dgemm(CBLAS_TRANSPOSE_t t1,
96 gsl_blas_dgemm(t1, t2, a, m1.gsl(), m2.gsl(), b, minout.gsl());
110 inline friend M
dgemm(CBLAS_TRANSPOSE_t t1,
111 CBLAS_TRANSPOSE_t t2,
118 gsl_blas_dgemm(t1, t2, a, m1.gsl(), m2.gsl(), b, out.gsl());
131 inline friend M
dgemm(CBLAS_TRANSPOSE_t t1,
132 CBLAS_TRANSPOSE_t t2,
136 M out(m1.rows(), m2.columns());
137 gsl_blas_dgemm(t1, t2, a, m1.gsl(), m2.gsl(), 0, out.gsl());
149 inline friend M
dot(
const M &m1,
151 CBLAS_TRANSPOSE_t t1 = CblasNoTrans,
152 CBLAS_TRANSPOSE_t t2 = CblasNoTrans) {
153 return dgemm(t1, t2, 1, m1, m2);
friend M dgemm(CBLAS_TRANSPOSE_t t1, CBLAS_TRANSPOSE_t t2, double a, const M &m1, const M &m2, double b, const M &m3)
dgemm
const gsl_vector * gsl() const
gsl ermöglicht direkten Zugriff auf gsl-Funktionen
friend M dgemm(CBLAS_TRANSPOSE_t t1, CBLAS_TRANSPOSE_t t2, double a, const M &m1, const M &m2)
dgemm
friend void dgemm(CBLAS_TRANSPOSE_t t1, CBLAS_TRANSPOSE_t t2, double a, const M &m1, const M &m2, double b, M &minout)
dgemm
friend void dgemv(CBLAS_TRANSPOSE_t t, double a, const M &m, const V &x, double b, V &yinout)
dgemv y = a*m + b*y
The IMBlas class Schnittstelle zur BLAS mit Funktionen für Matrix-Vektor- und Matrix-Matrix-Multiplik...
friend V amxby(CBLAS_TRANSPOSE_t t, double a, const M &m, const V &x, double b, const V &y)
dgemv
The Vector class Klasse für gsl-Vektoren zussamengesetzt aus Komponenten.
friend V dot(const M &m, const V &v, CBLAS_TRANSPOSE_t type=CblasNoTrans)
dot Matrix- Vektor Multiplikation
friend M dot(const M &m1, const M &m2, CBLAS_TRANSPOSE_t t1=CblasNoTrans, CBLAS_TRANSPOSE_t t2=CblasNoTrans)
dot Matrix-Matrix Multiplikation
friend V amx(CBLAS_TRANSPOSE_t t, double a, const M &m, const V &x)
dgemv