40 #ifndef __H__LIB_ALGEBRA__MATRIX_OPERATOR_FUNCTIONS__
41 #define __H__LIB_ALGEBRA__MATRIX_OPERATOR_FUNCTIONS__
66 template <
typename X,
typename Y,
typename M>
75 size_t numRows = matOut.num_rows();
76 size_t numCols = matOut.num_cols();
78 matOut.resize_and_clear(numRows, numCols);
80 for(
size_t i = 0; i < numRows; ++i)
85 template <
typename X,
typename Y,
typename M>
86 void MatAdd(
MatrixOperator<M, X, Y>& res,
number alpha1,
MatrixOperator<M, X, Y>& A1,
number alpha2,
MatrixOperator<M, X, Y>& A2)
96 MatAdd(matRes, alpha1, matA1, alpha2, matA2);
99 template <
typename X,
typename Y,
typename M>
110 template <
typename X,
typename Y,
typename M>
120 matAT.set_as_transpose_of(matA);
Definition: matrix_operator.h:49
M matrix_type
Definition: matrix_operator.h:58
virtual M & get_matrix()
Definition: matrix_operator.h:74
void MatIdentity(matrix_t &mOut)
Fills the matrix with the identity matrix.
Definition: math_matrix_functions_common_impl.hpp:865
void MatAdd(matrix_t &mOut, const matrix_t &m1, const matrix_t &m2)
adds two matrices and stores the result in a third one
Definition: math_matrix_functions_common_impl.hpp:52
void MatScale(matrix_t &mOut, typename matrix_t::value_type s, const matrix_t &m)
scales a matrix_t
Definition: math_matrix_functions_common_impl.hpp:317
double number
Definition: types.h:124
void MatTranspose(MatrixOperator< M, X, Y > &AT, MatrixOperator< M, X, Y > &A)
Definition: matrix_operator_functions.h:111
#define PROFILE_FUNC_GROUP(groups)
Definition: profiler.h:258