1 #ifndef _theplu_yat_utility_matrix_mutable_ 2 #define _theplu_yat_utility_matrix_mutable_ 29 #include "Exception.h" 30 #include "MatrixBase.h" 31 #include "MatrixExpression.h" 32 #include "StrideIterator.h" 34 #include "VectorExpression.h" 35 #include "VectorView.h" 36 #include "yat_assert.h" 38 #include <gsl/gsl_matrix.h> 100 void all(
const double value);
209 void swap_rows(
const size_t i,
const size_t j);
223 using MatrixBase::operator();
403 friend class detail::Mover;
404 virtual void visit(detail::Mover& mover);
const_iterator begin(void) const
MatrixMutable & operator=(MatrixExpression< T > &&rhs)
Definition: MatrixMutable.h:293
void swap_rows(const size_t i, const size_t j)
Swap rows i and j.
Definition: MatrixBase.h:54
double & reference
Definition: MatrixMutable.h:66
MatrixMutable & operator-=(const MatrixExpression< T > &rhs)
Subtraction and assign operator.
Definition: MatrixMutable.h:356
const_row_iterator begin_row(size_t i) const
MatrixMutable & operator=(const MatrixMutable &other)
The assignment operator.
row_iterator begin_row(size_t i)
MatrixMutable & operator+=(const MatrixExpression< T > &rhs)
Addition and assign operator.
Definition: MatrixMutable.h:323
Container2DIterator< MatrixMutable, double, double & > iterator
Definition: MatrixMutable.h:71
The Department of Theoretical Physics namespace as we define it.
const_row_iterator end_row(size_t i) const
This is the yat interface to gsl_vector_view.
Definition: VectorView.h:79
gsl_matrix * blas_result_
Definition: MatrixMutable.h:385
const_column_iterator begin_column(size_t i) const
void copy_assign(const MatrixBase &other)
Behaves like operator=(const MatrixBase&)
void swap_columns(const size_t i, const size_t j)
Swap columns i and j.
void swap_rowcol(const size_t i, const size_t j)
Swap row i and column j.
MatrixMutable & operator=(const MatrixExpression< T > &rhs)
Definition: MatrixMutable.h:262
Iterator for a Container2D.
Definition: Container2DIterator.h:62
column_iterator end_column(size_t i)
void mul(const MatrixBase &b)
row_iterator end_row(size_t i)
void div(const MatrixBase &b)
column_iterator begin_column(size_t i)
void move(gsl_matrix *&m)
Definition: MatrixExpression.h:121
virtual ~MatrixMutable(void)
The destructor.
An expression that can be converted to a Matrix.
Definition: MatrixExpression.h:46
const_iterator end(void) const
const MatrixMutable & operator+=(const MatrixBase &b)
Add and assign operator.
const MatrixMutable & operator-=(const MatrixBase &)
Subtract and assign operator.
VectorView row_view(size_t)
void all(const double value)
virtual const gsl_matrix * gsl_matrix_p(void) const =0
StrideIterator< double * > row_iterator
Definition: MatrixMutable.h:81
const MatrixMutable & operator*=(double d)
Multiply and assignment operator.
StrideIterator< double * > column_iterator
Definition: MatrixMutable.h:76
double & operator()(size_t row, size_t column)
Element access operator.
Definition: MatrixMutable.h:58
const_column_iterator end_column(size_t i) const
virtual gsl_matrix * gsl_matrix_p(void)=0
Adaptor using a stride on underlying iterator.
Definition: StrideIterator.h:50
virtual void move_assign(MatrixMutable &&other)
VectorView column_view(size_t i)