26 #ifndef __PDF_MATRIX_TEMPLATE_H__ 27 #define __PDF_MATRIX_TEMPLATE_H__ 68 size_t size(
void)
const;
93 template<
class TT>
friend std::ostream & operator<< (std::ostream & os, const vector_template<TT> & v);
130 size_t rows(
void)
const;
131 size_t columns(
void)
const;
153 template<
class TT>
friend std::ostream & operator<< (std::ostream & os, const matrix_template<TT> & v);
374 for (
size_t i=0; i<v1.
size(); i++) res += v1(i)*v2(i);
386 template<
class T>
inline std::ostream & operator<< (std::ostream & os, const vector_template<T> & v)
389 for (
size_t i=0; i<v.size(); i++)
602 for (
size_t i=0; i<v1.
nrows; i++)
604 for (
size_t j=0; j<v2.
ncols; j++)
607 for (
size_t k=0; k<v1.
ncols; k++) res_scal += v1.v[i*v1.
ncols+k]*v2.v[k*v2.
ncols+j];
608 res[i*v2.
ncols+j] = res_scal;
625 std::valarray<T> res(v1.
nrows);
627 for (
size_t i=0; i<v1.
nrows; i++)
630 for (
size_t k=0; k<v1.
ncols; k++) res_scal += v1.v[i*v1.
ncols+k]*v2.v[k];
647 std::valarray<T> res(v2.
ncols);
649 for (
size_t j=0; j<v2.
ncols; j++)
652 for (
size_t k=0; k<v2.
nrows; k++) res_scal += v1.v[k]*v2.v[k*v2.
ncols+j];
666 template<
class T>
inline std::ostream & operator<< (std::ostream & os, const matrix_template<T> & v)
669 for (
size_t i=0; i<v.rows(); i++)
673 for (
size_t j=0; j<v.columns(); j++)
688 #endif // ndef __PDF_MATRIX_TEMPLATE_H__ size_t nrows
number of rows
Definition: matrix_template.h:158
T operator()(size_t i, size_t j) const
Definition: matrix_template.h:475
T operator[](size_t i) const
Definition: matrix_template.h:230
Definition: matrix_template.h:36
size_t columns(void) const
Definition: matrix_template.h:463
size_t ncols
number of columns
Definition: matrix_template.h:160
size_t size(void) const
Definition: matrix_template.h:218
size_t rows(void) const
Definition: matrix_template.h:453
T operator()(size_t i) const
Definition: matrix_template.h:250
Definition: matrix_template.h:56
matrix_template(void)
Definition: matrix_template.h:408
vector_template(void)
Definition: matrix_template.h:176
Definition: anomalous.cc:33