SLIP
1.4
|
Numerical matrix class. This container statisfies the BidirectionnalContainer concepts of the STL. It is also an 2d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the double bracket element access. It extends the interface of Array2d adding arithmetical: +=, -=, *=, /=,+,-,/,*... and mathematical operators: min, max, abs, sqrt, cos, acos, sin, asin, tan, atan, exp, log, cosh, sinh, tanh, log10, sum, apply... More...
#include <GenericMultiComponent2d.hpp>
Public Member Functions | |
void | resize (const size_type d1, const size_type d2, const T &val=T()) |
Resizes a Matrix. More... | |
std::string | name () const |
Returns the name of the class. More... | |
size_type | dim1 () const |
Returns the number of rows (first dimension size) in the Matrix. More... | |
size_type | rows () const |
Returns the number of rows (first dimension size) in the Matrix. More... | |
size_type | dim2 () const |
Returns the number of columns (second dimension size) in the Matrix. More... | |
size_type | columns () const |
Returns the number of columns (second dimension size) in the Matrix. More... | |
size_type | cols () const |
Returns the number of columns (second dimension size) in the Matrix. More... | |
size_type | size () const |
Returns the number of elements in the Matrix. More... | |
size_type | max_size () const |
Returns the maximal size (number of elements) in the Matrix. More... | |
bool | empty () const |
Returns true if the Matrix is empty. (Thus size() == 0) More... | |
void | swap (self &M) |
Swaps data with another Matrix. More... | |
template<typename T > | |
Matrix (const typename Matrix< T >::size_type d1, const typename Matrix< T >::size_type d2) | |
template<typename T > | |
Matrix (const typename Matrix< T >::size_type d1, const typename Matrix< T >::size_type d2, const T &val) | |
template<typename T > | |
Matrix (const typename Matrix< T >::size_type d1, const typename Matrix< T >::size_type d2, const T *val) | |
Constructors & Destructors | |
Matrix () | |
Constructs a Matrix. More... | |
Matrix (const size_type d1, const size_type d2) | |
Constructs a Matrix. More... | |
Matrix (const size_type d1, const size_type d2, const T &val) | |
Constructs a Matrix initialized by the scalar value val. More... | |
Matrix (const size_type d1, const size_type d2, const T *val) | |
Constructs a Matrix initialized by an array val. More... | |
template<typename InputIterator > | |
Matrix (const size_type d1, const size_type d2, InputIterator first, InputIterator last) | |
Contructs a Matrix from a range. More... | |
Matrix (const self &rhs) | |
Constructs a copy of the Matrix rhs. More... | |
~Matrix () | |
Destructor of the Matrix. More... | |
iterators | |
iterator | begin () |
Returns a read/write iterator that points to the first element in the Matrix. Iteration is done in ordinary element order. More... | |
iterator | end () |
Returns a read/write iterator that points one past the last element in the Matrix. Iteration is done in ordinary element order. More... | |
const_iterator | begin () const |
Returns a read-only (constant) iterator that points to the first element in the Matrix. Iteration is done in ordinary element order. More... | |
const_iterator | end () const |
Returns a read-only (constant) iterator that points one past the last element in the Matrix. Iteration is done in ordinary element order. More... | |
reverse_iterator | rbegin () |
Returns a read/write reverse iterator that points to the last element in the Matrix. Iteration is done in reverse element order. More... | |
reverse_iterator | rend () |
Returns a read/write reverse iterator that points to one before the first element in the Matrix. Iteration is done in reverse element order. More... | |
const_reverse_iterator | rbegin () const |
Returns a read-only (constant) reverse iterator that points to the last element in the Matrix. Iteration is done in reverse element order. More... | |
const_reverse_iterator | rend () const |
Returns a read-only (constant) reverse iterator that points to one before the first element in the Matrix. Iteration is done in reverse element order. More... | |
row_iterator | row_begin (const size_type row) |
Returns a read/write iterator that points to the first element of the row row in the Matrix. Iteration is done in ordinary element order. More... | |
row_iterator | row_end (const size_type row) |
Returns a read/write iterator that points one past the end element of the row row in the Matrix. Iteration is done in ordinary element order. More... | |
const_row_iterator | row_begin (const size_type row) const |
Returns a read-only iterator that points to the first element of the row row in the Matrix. Iteration is done in ordinary element order. More... | |
const_row_iterator | row_end (const size_type row) const |
Returns a read-only iterator that points one past the end element of the row row in the Matrix. Iteration is done in ordinary element order. More... | |
col_iterator | col_begin (const size_type col) |
Returns a read/write iterator that points to the first element of the column column in the Matrix. Iteration is done modulo the number of columns. More... | |
col_iterator | col_end (const size_type col) |
Returns a read/write iterator that points one past the end element of the column column in the Matrix. Iteration is done modulo the number of columns. More... | |
const_col_iterator | col_begin (const size_type col) const |
Returns a read-only iterator that points to the first element of the column column in the Matrix. Iteration is done modulo the number of columns. More... | |
const_col_iterator | col_end (const size_type col) const |
Returns a read-only iterator that points one past the end element of the column column in the Matrix. Iteration is done modulo the number of columns. More... | |
row_range_iterator | row_begin (const size_type row, const slip::Range< int > &range) |
Returns a read/write iterator that points to the first element of the Range range of the row row in the Matrix. Iteration is done in ordinary element order according to the Range. More... | |
row_range_iterator | row_end (const size_type row, const slip::Range< int > &range) |
Returns a read/write iterator that points one past the end element of the Range range of the row row in the Matrix. Iteration is done in ordinary element order according to the Range. More... | |
const_row_range_iterator | row_begin (const size_type row, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the first element of the Range range of the row row in the Matrix. Iteration is done in ordinary element order according to the Range. More... | |
const_row_range_iterator | row_end (const size_type row, const slip::Range< int > &range) const |
Returns a read_only iterator that points one past the last element of the Range range of the row row in the Matrix. Iteration is done in ordinary element order according to the Range. More... | |
col_range_iterator | col_begin (const size_type col, const slip::Range< int > &range) |
Returns a read-write iterator that points to the first element of the Range range of the col col in the Matrix. Iteration is done in ordinary element order according to the Range. More... | |
col_range_iterator | col_end (const size_type col, const slip::Range< int > &range) |
Returns a read-write iterator that points to the past the end element of the Range range of the col col in the Matrix. Iteration is done in ordinary element order according to the Range. More... | |
const_col_range_iterator | col_begin (const size_type col, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the first element of the Range range of the col col in the Matrix. Iteration is done in ordinary element order according to the Range. More... | |
const_col_range_iterator | col_end (const size_type col, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the past the end element of the Range range of the col col in the Matrix. Iteration is done in ordinary element order according to the Range. More... | |
reverse_row_iterator | row_rbegin (const size_type row) |
Returns a read/write reverse iterator that points to the last element of the row row in the Matrix. Iteration is done in the reverse element order. More... | |
reverse_row_iterator | row_rend (const size_type row) |
Returns a read/write reverse iterator that points one past the first element of the row row in the Matrix. Iteration is done in the reverse element order. More... | |
const_reverse_row_iterator | row_rbegin (const size_type row) const |
Returns a read-only reverse iterator that points to the last element of the row row in the Matrix. Iteration is done in the reverse element order. More... | |
const_reverse_row_iterator | row_rend (const size_type row) const |
Returns a read-only reverse iterator that points one past the first element of the row row in the Matrix. Iteration is done in the reverse element order. More... | |
reverse_col_iterator | col_rbegin (const size_type col) |
Returns a read/write reverse iterator that points to the last element of the column column in the Matrix. Iteration is done modulo the number of columns and in the reverse element order. More... | |
reverse_col_iterator | col_rend (const size_type col) |
Returns a read/write reverse iterator that points one past the first element of the column column in the Matrix. Iteration is done modulo the number of columns and in the reverse element order. More... | |
const_reverse_col_iterator | col_rbegin (const size_type col) const |
Returns a read-only reverse iterator that points to the last element of the column column in the Matrix. Iteration is done modulo the number of columns and in the reverse element order. More... | |
const_reverse_col_iterator | col_rend (const size_type col) const |
Returns a read-only reverse iterator that points one past the first element of the column column in the Matrix. Iteration is done modulo the number of columns and in the reverse element order. More... | |
reverse_row_range_iterator | row_rbegin (const size_type row, const slip::Range< int > &range) |
Returns a read-write iterator that points to the last element of the Range range of the row row in the Matrix. Iteration is done in the reverse element order according to the Range. More... | |
reverse_row_range_iterator | row_rend (const size_type row, const slip::Range< int > &range) |
Returns a read-write iterator that points one before the first element of the Range range of the row row in the Matrix. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_row_range_iterator | row_rbegin (const size_type row, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the last element of the Range range of the row row in the Matrix. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_row_range_iterator | row_rend (const size_type row, const slip::Range< int > &range) const |
Returns a read-only iterator that points one before the first element of the Range range of the row row in the Matrix. Iteration is done in the reverse element order according to the Range. More... | |
reverse_col_range_iterator | col_rbegin (const size_type col, const slip::Range< int > &range) |
Returns a read-write iterator that points to the last element of the Range range of the col col in the Matrix. Iteration is done in the reverse element order according to the Range. More... | |
reverse_col_range_iterator | col_rend (const size_type col, const slip::Range< int > &range) |
Returns a read-write iterator that points to one before the first element of the Range range of the col col in the Matrix. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_col_range_iterator | col_rbegin (const size_type col, const slip::Range< int > &range) const |
Returns a read_only iterator that points to the last element of the Range & range of the col col in the Matrix. Iteration is done in the reverse element order according to the Range. More... | |
const_reverse_col_range_iterator | col_rend (const size_type col, const slip::Range< int > &range) const |
Returns a read-only iterator that points to the first element of the Range range of the col col in the Matrix. Iteration is done in the reverse element order according to the Range. More... | |
iterator2d | upper_left () |
Returns a read/write iterator2d that points to the first element of the Matrix. It points to the upper left element of the Matrix. More... | |
iterator2d | bottom_right () |
Returns a read/write iterator2d that points to the past the end element of the Matrix. It points to past the end element of the bottom right element of the Matrix. More... | |
const_iterator2d | upper_left () const |
Returns a read-only iterator2d that points to the first element of the Matrix. It points to the upper left element of the Matrix. More... | |
const_iterator2d | bottom_right () const |
Returns a read-only iterator2d that points to the past the end element of the Matrix. It points to past the end element of the bottom right element of the Matrix. More... | |
iterator2d | upper_left (const Box2d< int > &box) |
Returns a read/write iterator2d that points to the first element of the Matrix. It points to the upper left element of the Box2d associated to the Matrix. More... | |
iterator2d | bottom_right (const Box2d< int > &box) |
Returns a read/write iterator2d that points to the past the end element of the Matrix. It points to past the end element of the bottom right element of the Box2d associated to the Matrix. More... | |
const_iterator2d | upper_left (const Box2d< int > &box) const |
Returns a read only iterator2d that points to the first element of the Matrix. It points to the upper left element of the Box2d associated to the Matrix. More... | |
const_iterator2d | bottom_right (const Box2d< int > &box) const |
Returns a read only iterator2d that points to the past the end element of the Matrix. It points to past the end element of the bottom right element of the Box2d associated to the Matrix. More... | |
iterator2d_range | upper_left (const Range< int > &row_range, const Range< int > &col_range) |
Returns a read/write iterator2d_range that points to the upper left element of the ranges row_range and col_range associated to the Matrix. More... | |
iterator2d_range | bottom_right (const Range< int > &row_range, const Range< int > &col_range) |
Returns a read/write iterator2d_range that points to the past the end bottom right element of the ranges row_range and col_range associated to the Matrix. More... | |
const_iterator2d_range | upper_left (const Range< int > &row_range, const Range< int > &col_range) const |
Returns a read-only iterator2d_range that points to the to the upper left element of the ranges row_range and col_range associated to the Matrix. More... | |
const_iterator2d_range | bottom_right (const Range< int > &row_range, const Range< int > &col_range) const |
Returns a read-only iterator2d_range that points to the past the end bottom right element of the ranges row_range and col_range associated to the Matrix. More... | |
iterator2d_range | upper_left (const Range< int > &range) |
Returns a read/write iterator2d_range that points to the upper left element of the Range range associated to the Matrix. The same range is applied for rows and cols. More... | |
iterator2d_range | bottom_right (const Range< int > &range) |
Returns a read/write iterator2d_range that points to the past the end bottom right element of the Range range associated to the Matrix. The same range is applied for rows and cols. More... | |
const_iterator2d_range | upper_left (const Range< int > &range) const |
Returns a read-only iterator2d_range that points to the to the upper left element of the Range range associated to the Matrix. More... | |
const_iterator2d_range | bottom_right (const Range< int > &range) const |
Returns a read-only const_iterator2d_range that points to the past the end bottom right element of the Range range associated to the Matrix. The same range is applied for rows and cols. More... | |
reverse_iterator2d | rupper_left () |
Returns a read/write reverse iterator2d. It points to the bottom right element of the Matrix. Iteration is done within the Matrix in the reverse order. More... | |
reverse_iterator2d | rbottom_right () |
Returns a read/write reverse iterator2d. It points to past the upper left element of the Matrix. Iteration is done in the reverse order. More... | |
const_reverse_iterator2d | rupper_left () const |
Returns a read only reverse iterator2d that points. It points to the bottom right element of the Matrix. Iteration is done within the Matrix in the reverse order. More... | |
const_reverse_iterator2d | rbottom_right () const |
Returns a read only reverse iterator2d. It points to past the upper left element of the Matrix. Iteration is done in the reverse order. More... | |
reverse_iterator2d | rupper_left (const Box2d< int > &box) |
Returns a read/write reverse iterator2d. It points to the bottom right element of the Box2d associated to the Matrix. Iteration is done in the reverse order. More... | |
reverse_iterator2d | rbottom_right (const Box2d< int > &box) |
Returns a read/write reverse iterator2d. It points to one before the upper left element of the Box2d box associated to the Matrix. More... | |
const_reverse_iterator2d | rupper_left (const Box2d< int > &box) const |
Returns a read only reverse iterator2d. It points to the bottom right element of the Box2d box associated to the Matrix. Iteration is done in the reverse order. More... | |
const_reverse_iterator2d | rbottom_right (const Box2d< int > &box) const |
Returns a read-only reverse iterator2d. It points to one before the element of the bottom right element of the Box2d box associated to the Matrix. More... | |
reverse_iterator2d_range | rupper_left (const Range< int > &row_range, const Range< int > &col_range) |
Returns a read/write reverse_iterator2d_range that points to the past the bottom right element of the ranges row_range and col_range associated to the Matrix. Iteration is done in the reverse order. More... | |
reverse_iterator2d_range | rbottom_right (const Range< int > &row_range, const Range< int > &col_range) |
Returns a read/write reverse_iterator2d_range that points to one before the upper left element of the ranges row_range and col_range associated to the Matrix. Iteration is done in the reverse order. More... | |
const_reverse_iterator2d_range | rupper_left (const Range< int > &row_range, const Range< int > &col_range) const |
Returns a read-only reverse_iterator2d_range that points to the past the bottom right element of the ranges row_range and col_range associated to the Matrix. Iteration is done in the reverse order. More... | |
const_reverse_iterator2d_range | rbottom_right (const Range< int > &row_range, const Range< int > &col_range) const |
Returns a read-only reverse_iterator2d_range that points to one before the upper left element of the ranges row_range and col_range associated to the Matrix.Iteration is done in the reverse order. More... | |
reverse_iterator2d_range | rupper_left (const Range< int > &range) |
Returns a read/write reverse_iterator2d_range that points to the bottom right element of the Range range associated to the Matrix. The same range is applied for rows and cols. Iteration is done in the reverse order. More... | |
reverse_iterator2d_range | rbottom_right (const Range< int > &range) |
Returns a read/write reverse_iterator2d_range that points to one before the upper left element of the Range range associated to the Matrix. The same range is applied for rows and cols. Iteration is done in the reverse order. More... | |
const_reverse_iterator2d_range | rupper_left (const Range< int > &range) const |
Returns a read-only reverse_iterator2d_range that points to the to the bottom right element of the Range range associated to the Matrix. The same range is applied for rows and cols. Iteration is done in the reverse order. More... | |
const_reverse_iterator2d_range | rbottom_right (const Range< int > &range) const |
Returns a read_only reverse_iterator2d_range that points to one before the upper left element of the Range range associated to the Matrix. The same range is applied for rows and cols. Iteration is done in the reverse order. More... | |
Assignment operators and methods | |
Matrix & | operator= (const self &rhs) |
Assign a Matrix. More... | |
self & | operator= (const T &val) |
Affects all the element of the Matrix by val. More... | |
void | fill (const T &value) |
Fills the container range [begin(),begin()+size()) with copies of value. More... | |
void | fill (const T *value) |
Fills the container range [begin(),begin()+size()) with a copy of the value array. More... | |
template<typename InputIterator > | |
void | fill (InputIterator first, InputIterator last) |
Fills the container range [begin(),begin()+size()) with a copy of the range [first,last) More... | |
Element access operators | |
pointer | operator[] (const size_type i) |
Subscript access to the row datas contained in the Matrix. More... | |
const_pointer | operator[] (const size_type i) const |
Subscript access to the row datas contained in the Matrix. More... | |
reference | operator() (const size_type i, const size_type j) |
Subscript access to the data contained in the Matrix. More... | |
const_reference | operator() (const size_type i, const size_type j) const |
Subscript access to the data contained in the Matrix. More... | |
reference | operator() (const Point2d< size_type > &point2d) |
Subscript access to the data contained in the Matrix. More... | |
const_reference | operator() (const Point2d< size_type > &point2d) const |
Subscript access to the data contained in the Matrix. More... | |
self | operator() (const Range< int > &row_range, const Range< int > &col_range) |
Subscript access to the data contained in the Matrix. More... | |
Arithmetic operators | |
self & | operator+= (const T &val) |
Add val to each element of the Matrix. More... | |
self & | operator-= (const T &val) |
self & | operator*= (const T &val) |
self & | operator/= (const T &val) |
self | operator- () const |
self & | operator+= (const self &rhs) |
self & | operator-= (const self &rhs) |
self & | operator*= (const self &rhs) |
self & | operator/= (const self &rhs) |
Mathematical operators | |
T & | min () const |
Returns the min element of the Matrix according to the operator <, if the T is complex, it returns the element with the minimal magnitude. More... | |
T & | max () const |
Returns the max element of the Matrix according to the operator >, , if the T is complex, it returns the element with the maximal magnitude. More... | |
T | sum () const |
Returns the sum of the elements of the Matrix. More... | |
T | trace () const |
Returns the trace of the elements of the Matrix. More... | |
T | det () const |
Returns the determinant of the Matrix. More... | |
norm_type | cond () const |
Returns the condition number ![]() | |
size_type | rank () const |
Returns the rank of the Matrix. More... | |
self | inv () const |
Returns the inverse of the Matrix. More... | |
norm_type | L1_norm () const |
Returns the L1 norm ( ![]() | |
norm_type | L2_norm () const |
Returns the L2 norm ( ![]() | |
norm_type | infinite_norm () const |
Returns the infinite norm ( ![]() | |
norm_type | frobenius_norm () const |
Returns the Frobenius norm of the Matrix ![]() | |
norm_type | spectral_radius () const |
Returns the spectral radius of the Matrix ( ![]() | |
Matrix< T > & | apply (T(*fun)(T)) |
Applys the one-parameter C-function fun to each element of the Matrix. More... | |
Matrix< T > & | apply (T(*fun)(const T &)) |
Applys the one-parameter C-function fun to each element of the Matrix. More... | |
Static Public Attributes | |
static const std::size_t | DIM = 2 |
Friends | |
class | boost::serialization::access |
i/o operators | |
std::ostream & | operator<< (std::ostream &out, const self &a) |
Write the Matrix to the ouput stream. More... | |
Comparison operators | |
bool | operator== (const Matrix< T > &x, const Matrix< T > &y) |
Matrix equality comparison. More... | |
bool | operator!= (const Matrix< T > &x, const Matrix< T > &y) |
Matrix inequality comparison. More... | |
bool | operator< (const Matrix< T > &x, const Matrix< T > &y) |
Less than comparison operator (Matrix ordering relation) More... | |
bool | operator> (const Matrix< T > &x, const Matrix< T > &y) |
More than comparison operator. More... | |
bool | operator<= (const Matrix< T > &x, const Matrix< T > &y) |
Less than equal comparison operator. More... | |
bool | operator>= (const Matrix< T > &x, const Matrix< T > &y) |
More than equal comparison operator. More... | |
Related Functions | |
(Note that these are not member functions.) | |
template<typename T > | |
T & | min (const Matrix< T > &M1) |
Returns the min element of a Matrix, if the T is complex, it returns ** the element with the minimal magnitude. More... | |
template<typename T > | |
T & | max (const Matrix< T > &M1) |
Returns the max element of a Matrix, if the T is complex, it returns the element with the maximal magnitude. More... | |
template<typename T > | |
Matrix< typename slip::lin_alg_traits< T > ::value_type > | abs (const Matrix< T > &V) |
Returns the abs value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | sqrt (const Matrix< T > &V) |
Returns the sqrt value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | cos (const Matrix< T > &V) |
Returns the cos value of each element of the Matrix. More... | |
Matrix< float > | acos (const Matrix< float > &V) |
Returns the acos value of each element of the Matrix. More... | |
Matrix< double > | acos (const Matrix< double > &V) |
Returns the acos value of each element of the Matrix. More... | |
Matrix< long double > | acos (const Matrix< long double > &V) |
Returns the acos value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | sin (const Matrix< T > &V) |
Returns the sin value of each element of the Matrix. More... | |
Matrix< float > | asin (const Matrix< float > &V) |
Returns the asin value of each element of the Matrix. More... | |
Matrix< double > | asin (const Matrix< double > &V) |
Returns the asin value of each element of the Matrix. More... | |
Matrix< long double > | asin (const Matrix< long double > &V) |
Returns the asin value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | tan (const Matrix< T > &V) |
Returns the tan value of each element of the Matrix. More... | |
Matrix< float > | atan (const Matrix< float > &V) |
Returns the atan value of each element of the Matrix. More... | |
Matrix< double > | atan (const Matrix< double > &V) |
Returns the atan value of each element of the Matrix. More... | |
Matrix< long double > | atan (const Matrix< long double > &V) |
Returns the atan value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | exp (const Matrix< T > &V) |
Returns the exp value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | log (const Matrix< T > &V) |
Returns the log value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | cosh (const Matrix< T > &V) |
Returns the cosh value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | sinh (const Matrix< T > &V) |
Returns the sinh value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | tanh (const Matrix< T > &V) |
Returns the tanh value of each element of the Matrix. More... | |
template<typename T > | |
Matrix< T > | log10 (const Matrix< T > &V) |
Returns the log10 value of each element of the Matrix. More... | |
Numerical matrix class. This container statisfies the BidirectionnalContainer concepts of the STL. It is also an 2d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the double bracket element access. It extends the interface of Array2d adding arithmetical: +=, -=, *=, /=,+,-,/,*... and mathematical operators: min, max, abs, sqrt, cos, acos, sin, asin, tan, atan, exp, log, cosh, sinh, tanh, log10, sum, apply...
T. | Type of object in the Matrix |
Definition at line 132 of file GenericMultiComponent2d.hpp.
typedef slip::stride_iterator<pointer> slip::Matrix< Block >::col_iterator |
Definition at line 214 of file Matrix.hpp.
typedef slip::stride_iterator<col_iterator> slip::Matrix< Block >::col_range_iterator |
Definition at line 222 of file Matrix.hpp.
typedef slip::stride_iterator<const_pointer> slip::Matrix< Block >::const_col_iterator |
Definition at line 215 of file Matrix.hpp.
typedef slip::stride_iterator<const_col_iterator> slip::Matrix< Block >::const_col_range_iterator |
Definition at line 223 of file Matrix.hpp.
typedef const_iterator2d slip::Matrix< Block >::const_default_iterator |
Definition at line 246 of file Matrix.hpp.
typedef const_pointer slip::Matrix< Block >::const_iterator |
Definition at line 207 of file Matrix.hpp.
typedef slip::Array2d<T>::const_iterator2d slip::Matrix< Block >::const_iterator2d |
Definition at line 219 of file Matrix.hpp.
typedef slip::Array2d<T>::const_iterator2d_range slip::Matrix< Block >::const_iterator2d_range |
Definition at line 225 of file Matrix.hpp.
typedef value_type const* slip::Matrix< Block >::const_pointer |
Definition at line 199 of file Matrix.hpp.
typedef value_type const& slip::Matrix< Block >::const_reference |
Definition at line 201 of file Matrix.hpp.
typedef std::reverse_iterator<const_col_iterator> slip::Matrix< Block >::const_reverse_col_iterator |
Definition at line 231 of file Matrix.hpp.
typedef std::reverse_iterator<const_col_range_iterator> slip::Matrix< Block >::const_reverse_col_range_iterator |
Definition at line 237 of file Matrix.hpp.
typedef std::reverse_iterator<const_iterator> slip::Matrix< Block >::const_reverse_iterator |
Definition at line 210 of file Matrix.hpp.
typedef std::reverse_iterator<const_iterator2d> slip::Matrix< Block >::const_reverse_iterator2d |
Definition at line 233 of file Matrix.hpp.
typedef std::reverse_iterator<const_iterator2d_range> slip::Matrix< Block >::const_reverse_iterator2d_range |
Definition at line 239 of file Matrix.hpp.
typedef std::reverse_iterator<const_iterator> slip::Matrix< Block >::const_reverse_row_iterator |
Definition at line 229 of file Matrix.hpp.
typedef std::reverse_iterator<const_row_range_iterator> slip::Matrix< Block >::const_reverse_row_range_iterator |
Definition at line 235 of file Matrix.hpp.
typedef const_pointer slip::Matrix< Block >::const_row_iterator |
Definition at line 213 of file Matrix.hpp.
typedef slip::stride_iterator<const_pointer> slip::Matrix< Block >::const_row_range_iterator |
Definition at line 221 of file Matrix.hpp.
typedef const Matrix<T> slip::Matrix< Block >::const_self |
Definition at line 196 of file Matrix.hpp.
typedef iterator2d slip::Matrix< Block >::default_iterator |
Definition at line 245 of file Matrix.hpp.
typedef ptrdiff_t slip::Matrix< Block >::difference_type |
Definition at line 203 of file Matrix.hpp.
typedef pointer slip::Matrix< Block >::iterator |
Definition at line 206 of file Matrix.hpp.
typedef slip::Array2d<T>::iterator2d slip::Matrix< Block >::iterator2d |
Definition at line 218 of file Matrix.hpp.
typedef slip::Array2d<T>::iterator2d_range slip::Matrix< Block >::iterator2d_range |
Definition at line 224 of file Matrix.hpp.
typedef slip::lin_alg_traits<value_type>::value_type slip::Matrix< Block >::norm_type |
Definition at line 241 of file Matrix.hpp.
typedef value_type* slip::Matrix< Block >::pointer |
Definition at line 198 of file Matrix.hpp.
typedef value_type& slip::Matrix< Block >::reference |
Definition at line 200 of file Matrix.hpp.
typedef std::reverse_iterator<col_iterator> slip::Matrix< Block >::reverse_col_iterator |
Definition at line 230 of file Matrix.hpp.
typedef std::reverse_iterator<col_range_iterator> slip::Matrix< Block >::reverse_col_range_iterator |
Definition at line 236 of file Matrix.hpp.
typedef std::reverse_iterator<iterator> slip::Matrix< Block >::reverse_iterator |
Definition at line 209 of file Matrix.hpp.
typedef std::reverse_iterator<iterator2d> slip::Matrix< Block >::reverse_iterator2d |
Definition at line 232 of file Matrix.hpp.
typedef std::reverse_iterator<iterator2d_range> slip::Matrix< Block >::reverse_iterator2d_range |
Definition at line 238 of file Matrix.hpp.
typedef std::reverse_iterator<iterator> slip::Matrix< Block >::reverse_row_iterator |
Definition at line 228 of file Matrix.hpp.
typedef std::reverse_iterator<row_range_iterator> slip::Matrix< Block >::reverse_row_range_iterator |
Definition at line 234 of file Matrix.hpp.
typedef pointer slip::Matrix< Block >::row_iterator |
Definition at line 212 of file Matrix.hpp.
typedef slip::stride_iterator<pointer> slip::Matrix< Block >::row_range_iterator |
Definition at line 220 of file Matrix.hpp.
typedef Matrix<T> slip::Matrix< Block >::self |
Definition at line 195 of file Matrix.hpp.
typedef std::size_t slip::Matrix< Block >::size_type |
Definition at line 204 of file Matrix.hpp.
typedef T slip::Matrix< Block >::value_type |
Definition at line 194 of file Matrix.hpp.
|
inline |
Constructs a Matrix.
Definition at line 2718 of file Matrix.hpp.
slip::Matrix< Block >::Matrix | ( | const size_type | d1, |
const size_type | d2 | ||
) |
Constructs a Matrix.
& **
d1 | first dimension of the Matrix |
d2 | second dimension of the Matrix |
slip::Matrix< Block >::Matrix | ( | const size_type | d1, |
const size_type | d2, | ||
const T & | val | ||
) |
Constructs a Matrix initialized by the scalar value val.
d1 | first dimension of the Matrix |
d2 | second dimension of the Matrix |
val | initialization value of the elements |
slip::Matrix< Block >::Matrix | ( | const size_type | d1, |
const size_type | d2, | ||
const T * | val | ||
) |
Constructs a Matrix initialized by an array val.
d1 | first dimension of the Matrix |
d2 | second dimension of the Matrix |
val | initialization array value of the elements |
|
inline |
Contructs a Matrix from a range.
d1 | first dimension of the Matrix |
d2 | second dimension of the Matrix |
first | An input iterator. |
last | An input iterator. |
Create a Matrix consisting of copies of the elements from [first,last).
Definition at line 299 of file Matrix.hpp.
|
inline |
Constructs a copy of the Matrix rhs.
Definition at line 2747 of file Matrix.hpp.
|
inline |
Destructor of the Matrix.
Definition at line 2753 of file Matrix.hpp.
|
inline |
Definition at line 2724 of file Matrix.hpp.
|
inline |
Definition at line 2731 of file Matrix.hpp.
|
inline |
Definition at line 2739 of file Matrix.hpp.
|
inline |
Applys the one-parameter C-function fun to each element of the Matrix.
fun | The one-parameter C function |
Definition at line 3736 of file Matrix.hpp.
|
inline |
Applys the one-parameter C-function fun to each element of the Matrix.
fun | The one-const-parameter C function |
Definition at line 3744 of file Matrix.hpp.
|
inline |
Returns a read/write iterator that points to the first element in the Matrix. Iteration is done in ordinary element order.
Definition at line 2789 of file Matrix.hpp.
|
inline |
Returns a read-only (constant) iterator that points to the first element in the Matrix. Iteration is done in ordinary element order.
Definition at line 2803 of file Matrix.hpp.
|
inline |
Returns a read/write iterator2d that points to the past the end element of the Matrix. It points to past the end element of the bottom right element of the Matrix.
Definition at line 3151 of file Matrix.hpp.
|
inline |
Returns a read-only iterator2d that points to the past the end element of the Matrix. It points to past the end element of the bottom right element of the Matrix.
Definition at line 3158 of file Matrix.hpp.
|
inline |
Returns a read/write iterator2d that points to the past the end element of the Matrix. It points to past the end element of the bottom right element of the Box2d associated to the Matrix.
box | a Box2d defining the range of indices to iterate within the Matrix. |
Definition at line 3182 of file Matrix.hpp.
|
inline |
Returns a read only iterator2d that points to the past the end element of the Matrix. It points to past the end element of the bottom right element of the Box2d associated to the Matrix.
box | a Box2d defining the range of indices to iterate within the Matrix. |
Definition at line 3189 of file Matrix.hpp.
|
inline |
Returns a read/write iterator2d_range that points to the past the end bottom right element of the ranges row_range and col_range associated to the Matrix.
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 3218 of file Matrix.hpp.
|
inline |
Returns a read-only iterator2d_range that points to the past the end bottom right element of the ranges row_range and col_range associated to the Matrix.
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 3227 of file Matrix.hpp.
|
inline |
Returns a read/write iterator2d_range that points to the past the end bottom right element of the Range range associated to the Matrix. The same range is applied for rows and cols.
range | The range of the rows and the cols. |
Definition at line 3254 of file Matrix.hpp.
|
inline |
Returns a read-only const_iterator2d_range that points to the past the end bottom right element of the Range range associated to the Matrix. The same range is applied for rows and cols.
range | The range of the rows and the cols. |
Definition at line 3262 of file Matrix.hpp.
col_iterator slip::Matrix< Block >::col_begin | ( | const size_type | col | ) |
Returns a read/write iterator that points to the first element of the column column in the Matrix. Iteration is done modulo the number of columns.
col | The index of the column to iterate. |
const_col_iterator slip::Matrix< Block >::col_begin | ( | const size_type | col | ) | const |
Returns a read-only iterator that points to the first element of the column column in the Matrix. Iteration is done modulo the number of columns.
col | The index of the column to iterate. |
col_range_iterator slip::Matrix< Block >::col_begin | ( | const size_type | col, |
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to the first element of the Range range of the col col in the Matrix. Iteration is done in ordinary element order according to the Range.
col | The index of the column to iterate. |
range | Range of the column to iterate |
const_col_range_iterator slip::Matrix< Block >::col_begin | ( | const size_type | col, |
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the first element of the Range range of the col col in the Matrix. Iteration is done in ordinary element order according to the Range.
col | The index of the column to iterate. |
range | Range of the column to iterate. |
col_iterator slip::Matrix< Block >::col_end | ( | const size_type | col | ) |
Returns a read/write iterator that points one past the end element of the column column in the Matrix. Iteration is done modulo the number of columns.
col | The index of the column to iterate. |
const_col_iterator slip::Matrix< Block >::col_end | ( | const size_type | col | ) | const |
Returns a read-only iterator that points one past the end element of the column column in the Matrix. Iteration is done modulo the number of columns.
col | The index of the column |
col_range_iterator slip::Matrix< Block >::col_end | ( | const size_type | col, |
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to the past the end element of the Range range of the col col in the Matrix. Iteration is done in ordinary element order according to the Range.
col | The index of the column to iterate. |
range | Range of the column to iterate. |
const_col_range_iterator slip::Matrix< Block >::col_end | ( | const size_type | col, |
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the past the end element of the Range range of the col col in the Matrix. Iteration is done in ordinary element order according to the Range.
col | The index of the column to iterate. |
range | Range of the column to iterate |
reverse_col_iterator slip::Matrix< Block >::col_rbegin | ( | const size_type | col | ) |
Returns a read/write reverse iterator that points to the last element of the column column in the Matrix. Iteration is done modulo the number of columns and in the reverse element order.
col | The index of the column to iterate. |
const_reverse_col_iterator slip::Matrix< Block >::col_rbegin | ( | const size_type | col | ) | const |
Returns a read-only reverse iterator that points to the last element of the column column in the Matrix. Iteration is done modulo the number of columns and in the reverse element order.
col | The index of the column to iterate. |
reverse_col_range_iterator slip::Matrix< Block >::col_rbegin | ( | const size_type | col, |
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to the last element of the Range range of the col col in the Matrix. Iteration is done in the reverse element order according to the Range.
col | The index of the column to iterate. |
range | Range of the column to iterate. |
const_reverse_col_range_iterator slip::Matrix< Block >::col_rbegin | ( | const size_type | col, |
const slip::Range< int > & | range | ||
) | const |
Returns a read_only iterator that points to the last element of the Range & range of the col col in the Matrix. Iteration is done in the reverse element order according to the Range.
col | The index of the column to iterate. |
range | Range of the column to iterate. |
reverse_col_iterator slip::Matrix< Block >::col_rend | ( | const size_type | col | ) |
Returns a read/write reverse iterator that points one past the first element of the column column in the Matrix. Iteration is done modulo the number of columns and in the reverse element order.
col | The index of the column to iterate. |
const_reverse_col_iterator slip::Matrix< Block >::col_rend | ( | const size_type | col | ) | const |
Returns a read-only reverse iterator that points one past the first element of the column column in the Matrix. Iteration is done modulo the number of columns and in the reverse element order.
col | The index of the column to iterate. |
reverse_col_range_iterator slip::Matrix< Block >::col_rend | ( | const size_type | col, |
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to one before the first element of the Range range of the col col in the Matrix. Iteration is done in the reverse element order according to the Range.
col | The index of the column to iterate. |
range | Range of the column to iterate. |
const_reverse_col_range_iterator slip::Matrix< Block >::col_rend | ( | const size_type | col, |
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the first element of the Range range of the col col in the Matrix. Iteration is done in the reverse element order according to the Range.
col | The index of the column to iterate. |
range | Range of the column to iterate. |
|
inline |
Returns the number of columns (second dimension size) in the Matrix.
Definition at line 3512 of file Matrix.hpp.
|
inline |
Returns the number of columns (second dimension size) in the Matrix.
Definition at line 3508 of file Matrix.hpp.
|
inline |
Returns the condition number of the Matrix where k is the rank of the matrix.
Definition at line 3693 of file Matrix.hpp.
|
inline |
Returns the determinant of the Matrix.
Definition at line 3657 of file Matrix.hpp.
|
inline |
Returns the number of rows (first dimension size) in the Matrix.
Definition at line 3495 of file Matrix.hpp.
|
inline |
Returns the number of columns (second dimension size) in the Matrix.
Definition at line 3504 of file Matrix.hpp.
|
inline |
Returns true if the Matrix is empty. (Thus size() == 0)
Definition at line 3525 of file Matrix.hpp.
|
inline |
Returns a read/write iterator that points one past the last element in the Matrix. Iteration is done in ordinary element order.
Definition at line 2796 of file Matrix.hpp.
|
inline |
Returns a read-only (constant) iterator that points one past the last element in the Matrix. Iteration is done in ordinary element order.
Definition at line 2811 of file Matrix.hpp.
|
inline |
Fills the container range [begin(),begin()+size()) with copies of value.
value | A reference-to-const of arbitrary type. |
Definition at line 1915 of file Matrix.hpp.
|
inline |
Fills the container range [begin(),begin()+size()) with a copy of the value array.
value | A pointer of arbitrary type. |
Definition at line 1926 of file Matrix.hpp.
|
inline |
Fills the container range [begin(),begin()+size()) with a copy of the range [first,last)
first | An input iterator. |
last | An input iterator. |
Definition at line 1940 of file Matrix.hpp.
|
inline |
Returns the Frobenius norm of the Matrix .
Definition at line 2307 of file Matrix.hpp.
|
inline |
Returns the infinite norm ( ) of the elements of the Matrix.
Definition at line 2298 of file Matrix.hpp.
|
inline |
Returns the inverse of the Matrix.
Definition at line 3725 of file Matrix.hpp.
|
inline |
Returns the L1 norm ( ) of the elements of the Matrix.
Definition at line 2274 of file Matrix.hpp.
|
inline |
Returns the L2 norm ( ) of the elements of the Matrix.
Definition at line 2284 of file Matrix.hpp.
|
inline |
Returns the max element of the Matrix according to the operator >, , if the T is complex, it returns the element with the maximal magnitude.
Definition at line 3627 of file Matrix.hpp.
|
inline |
Returns the maximal size (number of elements) in the Matrix.
Definition at line 3520 of file Matrix.hpp.
|
inline |
Returns the min element of the Matrix according to the operator <, if the T is complex, it returns the element with the minimal magnitude.
Definition at line 3619 of file Matrix.hpp.
|
inline |
Returns the name of the class.
Definition at line 3490 of file Matrix.hpp.
reference slip::Matrix< Block >::operator() | ( | const size_type | i, |
const size_type | j | ||
) |
Subscript access to the data contained in the Matrix.
i | The index of the row for which the data should be accessed. |
j | The index of the columns for which the data should be accessed. |
This operator allows for easy, 2d array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined.
const_reference slip::Matrix< Block >::operator() | ( | const size_type | i, |
const size_type | j | ||
) | const |
Subscript access to the data contained in the Matrix.
i | The index of the row for which the data should be accessed. |
j | The index of the columns for which the data should be accessed. |
This operator allows for easy, 2d array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined.
reference slip::Matrix< Block >::operator() | ( | const Point2d< size_type > & | point2d | ) |
Subscript access to the data contained in the Matrix.
point2d | A Point2d which indicate the subscripts of the data to access. |
This operator allows for easy, 2d array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined.
const_reference slip::Matrix< Block >::operator() | ( | const Point2d< size_type > & | point2d | ) | const |
Subscript access to the data contained in the Matrix.
point2d | A Point2d which indicate the subscripts of the data to access. |
This operator allows for easy, 2d array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined.
|
inline |
Subscript access to the data contained in the Matrix.
row_range | The range of the rows. |
col_range | The range of the columns. |
This operator allows for easy, 2d array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined.
Definition at line 3471 of file Matrix.hpp.
|
inline |
Definition at line 3553 of file Matrix.hpp.
|
inline |
Definition at line 3598 of file Matrix.hpp.
|
inline |
Add val to each element of the Matrix.
val | value |
Definition at line 3537 of file Matrix.hpp.
|
inline |
Definition at line 3578 of file Matrix.hpp.
|
inline |
Definition at line 3569 of file Matrix.hpp.
|
inline |
Definition at line 3545 of file Matrix.hpp.
|
inline |
Definition at line 3588 of file Matrix.hpp.
|
inline |
Definition at line 3561 of file Matrix.hpp.
|
inline |
Definition at line 3608 of file Matrix.hpp.
|
inline |
Assign a Matrix.
Assign elements of Matrix in rhs
rhs | Matrix to get the values from. |
Definition at line 2760 of file Matrix.hpp.
|
inline |
Affects all the element of the Matrix by val.
val | affectation value |
Definition at line 2771 of file Matrix.hpp.
pointer slip::Matrix< Block >::operator[] | ( | const size_type | i | ) |
Subscript access to the row datas contained in the Matrix.
i | The index of the row for which data should be accessed. |
This operator allows for easy, 2d array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined.
const_pointer slip::Matrix< Block >::operator[] | ( | const size_type | i | ) | const |
Subscript access to the row datas contained in the Matrix.
i | The index of the row for which data should be accessed. |
This operator allows for easy, 2d array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined.
|
inline |
Returns the rank of the Matrix.
Definition at line 3666 of file Matrix.hpp.
|
inline |
Returns a read/write reverse iterator that points to the last element in the Matrix. Iteration is done in reverse element order.
Definition at line 2820 of file Matrix.hpp.
|
inline |
Returns a read-only (constant) reverse iterator that points to the last element in the Matrix. Iteration is done in reverse element order.
Definition at line 2834 of file Matrix.hpp.
|
inline |
Returns a read/write reverse iterator2d. It points to past the upper left element of the Matrix. Iteration is done in the reverse order.
Definition at line 3272 of file Matrix.hpp.
|
inline |
Returns a read only reverse iterator2d. It points to past the upper left element of the Matrix. Iteration is done in the reverse order.
Definition at line 3280 of file Matrix.hpp.
|
inline |
Returns a read/write reverse iterator2d. It points to one before the upper left element of the Box2d box associated to the Matrix.
box | A Box2d defining the range of indices to iterate within the Matrix. |
Definition at line 3306 of file Matrix.hpp.
|
inline |
Returns a read-only reverse iterator2d. It points to one before the element of the bottom right element of the Box2d box associated to the Matrix.
box | A Box2d defining the range of indices to iterate within the Matrix. |
Definition at line 3314 of file Matrix.hpp.
|
inline |
Returns a read/write reverse_iterator2d_range that points to one before the upper left element of the ranges row_range and col_range associated to the Matrix. Iteration is done in the reverse order.
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 3359 of file Matrix.hpp.
|
inline |
Returns a read-only reverse_iterator2d_range that points to one before the upper left element of the ranges row_range and col_range associated to the Matrix.Iteration is done in the reverse order.
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 3368 of file Matrix.hpp.
|
inline |
Returns a read/write reverse_iterator2d_range that points to one before the upper left element of the Range range associated to the Matrix. The same range is applied for rows and cols. Iteration is done in the reverse order.
range | The range of the rows and the cols. |
Definition at line 3394 of file Matrix.hpp.
|
inline |
Returns a read_only reverse_iterator2d_range that points to one before the upper left element of the Range range associated to the Matrix. The same range is applied for rows and cols. Iteration is done in the reverse order.
range | The range of the rows and the cols. |
Definition at line 3402 of file Matrix.hpp.
|
inline |
Returns a read/write reverse iterator that points to one before the first element in the Matrix. Iteration is done in reverse element order.
Definition at line 2827 of file Matrix.hpp.
|
inline |
Returns a read-only (constant) reverse iterator that points to one before the first element in the Matrix. Iteration is done in reverse element order.
Definition at line 2841 of file Matrix.hpp.
|
inline |
Resizes a Matrix.
d1 | new first dimension |
d2 | new second dimension |
val | new value for all the elements |
Definition at line 2779 of file Matrix.hpp.
row_iterator slip::Matrix< Block >::row_begin | ( | const size_type | row | ) |
Returns a read/write iterator that points to the first element of the row row in the Matrix. Iteration is done in ordinary element order.
row | The index of the row to iterate. |
const_row_iterator slip::Matrix< Block >::row_begin | ( | const size_type | row | ) | const |
Returns a read-only iterator that points to the first element of the row row in the Matrix. Iteration is done in ordinary element order.
row | The index of the row to iterate. |
row_range_iterator slip::Matrix< Block >::row_begin | ( | const size_type | row, |
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points to the first element of the Range range of the row row in the Matrix. Iteration is done in ordinary element order according to the Range.
row | The index of the row to iterate. |
range | Range of the row to iterate. |
const_row_range_iterator slip::Matrix< Block >::row_begin | ( | const size_type | row, |
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the first element of the Range range of the row row in the Matrix. Iteration is done in ordinary element order according to the Range.
row | The index of the row to iterate. |
range | Range of the row to iterate. |
row_iterator slip::Matrix< Block >::row_end | ( | const size_type | row | ) |
Returns a read/write iterator that points one past the end element of the row row in the Matrix. Iteration is done in ordinary element order.
row | The index of the row to iterate. |
const_row_iterator slip::Matrix< Block >::row_end | ( | const size_type | row | ) | const |
Returns a read-only iterator that points one past the end element of the row row in the Matrix. Iteration is done in ordinary element order.
row | The index of the row to iterate. |
row_range_iterator slip::Matrix< Block >::row_end | ( | const size_type | row, |
const slip::Range< int > & | range | ||
) |
Returns a read/write iterator that points one past the end element of the Range range of the row row in the Matrix. Iteration is done in ordinary element order according to the Range.
row | The index of the row to iterate. |
range | Range of the row to iterate. |
const_row_range_iterator slip::Matrix< Block >::row_end | ( | const size_type | row, |
const slip::Range< int > & | range | ||
) | const |
Returns a read_only iterator that points one past the last element of the Range range of the row row in the Matrix. Iteration is done in ordinary element order according to the Range.
row | Row to iterate. |
range | Range of the row to iterate |
reverse_row_iterator slip::Matrix< Block >::row_rbegin | ( | const size_type | row | ) |
Returns a read/write reverse iterator that points to the last element of the row row in the Matrix. Iteration is done in the reverse element order.
row | The index of the row to iterate. |
const_reverse_row_iterator slip::Matrix< Block >::row_rbegin | ( | const size_type | row | ) | const |
Returns a read-only reverse iterator that points to the last element of the row row in the Matrix. Iteration is done in the reverse element order.
row | The index of the row to iterate. |
reverse_row_range_iterator slip::Matrix< Block >::row_rbegin | ( | const size_type | row, |
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points to the last element of the Range range of the row row in the Matrix. Iteration is done in the reverse element order according to the Range.
row | The index of the row to iterate. |
range | Range of the row to iterate. |
const_reverse_row_range_iterator slip::Matrix< Block >::row_rbegin | ( | const size_type | row, |
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points to the last element of the Range range of the row row in the Matrix. Iteration is done in the reverse element order according to the Range.
row | The index of the row to iterate. |
range | Range of the row to iterate |
reverse_row_iterator slip::Matrix< Block >::row_rend | ( | const size_type | row | ) |
Returns a read/write reverse iterator that points one past the first element of the row row in the Matrix. Iteration is done in the reverse element order.
row | The index of the row to iterate. |
const_reverse_row_iterator slip::Matrix< Block >::row_rend | ( | const size_type | row | ) | const |
Returns a read-only reverse iterator that points one past the first element of the row row in the Matrix. Iteration is done in the reverse element order.
row | The index of the row to iterate. |
reverse_row_range_iterator slip::Matrix< Block >::row_rend | ( | const size_type | row, |
const slip::Range< int > & | range | ||
) |
Returns a read-write iterator that points one before the first element of the Range range of the row row in the Matrix. Iteration is done in the reverse element order according to the Range.
row | The index of the row to iterate. |
range | Range of the row to iterate. |
const_reverse_row_range_iterator slip::Matrix< Block >::row_rend | ( | const size_type | row, |
const slip::Range< int > & | range | ||
) | const |
Returns a read-only iterator that points one before the first element of the Range range of the row row in the Matrix. Iteration is done in the reverse element order according to the Range.
row | The index of the row to iterate. |
range | Range of the row to iterate |
|
inline |
Returns the number of rows (first dimension size) in the Matrix.
Definition at line 3499 of file Matrix.hpp.
|
inline |
Returns a read/write reverse iterator2d. It points to the bottom right element of the Matrix. Iteration is done within the Matrix in the reverse order.
Definition at line 3289 of file Matrix.hpp.
|
inline |
Returns a read only reverse iterator2d that points. It points to the bottom right element of the Matrix. Iteration is done within the Matrix in the reverse order.
Definition at line 3297 of file Matrix.hpp.
|
inline |
Returns a read/write reverse iterator2d. It points to the bottom right element of the Box2d associated to the Matrix. Iteration is done in the reverse order.
box | a Box2d defining the range of indices to iterate within the Matrix. |
Definition at line 3323 of file Matrix.hpp.
|
inline |
Returns a read only reverse iterator2d. It points to the bottom right element of the Box2d box associated to the Matrix. Iteration is done in the reverse order.
box | A Box2d defining the range of indices to iterate within the Matrix. |
Definition at line 3331 of file Matrix.hpp.
|
inline |
Returns a read/write reverse_iterator2d_range that points to the past the bottom right element of the ranges row_range and col_range associated to the Matrix. Iteration is done in the reverse order.
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 3340 of file Matrix.hpp.
|
inline |
Returns a read-only reverse_iterator2d_range that points to the past the bottom right element of the ranges row_range and col_range associated to the Matrix. Iteration is done in the reverse order.
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 3349 of file Matrix.hpp.
|
inline |
Returns a read/write reverse_iterator2d_range that points to the bottom right element of the Range range associated to the Matrix. The same range is applied for rows and cols. Iteration is done in the reverse order.
range | The range of the rows and the cols. |
Definition at line 3378 of file Matrix.hpp.
|
inline |
Returns a read-only reverse_iterator2d_range that points to the to the bottom right element of the Range range associated to the Matrix. The same range is applied for rows and cols. Iteration is done in the reverse order.
range | The range of the rows and the cols. |
Definition at line 3386 of file Matrix.hpp.
|
inline |
Returns the number of elements in the Matrix.
Definition at line 3516 of file Matrix.hpp.
|
inline |
Returns the spectral radius of the Matrix ( )
Definition at line 2317 of file Matrix.hpp.
|
inline |
Returns the sum of the elements of the Matrix.
Definition at line 3635 of file Matrix.hpp.
|
inline |
Swaps data with another Matrix.
M | A Matrix of the same element type |
Definition at line 3529 of file Matrix.hpp.
|
inline |
Returns the trace of the elements of the Matrix.
Definition at line 3643 of file Matrix.hpp.
|
inline |
Returns a read/write iterator2d that points to the first element of the Matrix. It points to the upper left element of the Matrix.
Definition at line 3135 of file Matrix.hpp.
|
inline |
Returns a read-only iterator2d that points to the first element of the Matrix. It points to the upper left element of the Matrix.
Definition at line 3142 of file Matrix.hpp.
|
inline |
Returns a read/write iterator2d that points to the first element of the Matrix. It points to the upper left element of the Box2d associated to the Matrix.
box | A Box2d defining the range of indices to iterate within the Matrix. |
Definition at line 3166 of file Matrix.hpp.
|
inline |
Returns a read only iterator2d that points to the first element of the Matrix. It points to the upper left element of the Box2d associated to the Matrix.
box | a Box2d defining the range of indices to iterate within the Matrix. |
Definition at line 3174 of file Matrix.hpp.
|
inline |
Returns a read/write iterator2d_range that points to the upper left element of the ranges row_range and col_range associated to the Matrix.
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 3199 of file Matrix.hpp.
|
inline |
Returns a read-only iterator2d_range that points to the to the upper left element of the ranges row_range and col_range associated to the Matrix.
row_range | The range of the rows. |
col_range | The range of the columns. |
Definition at line 3208 of file Matrix.hpp.
|
inline |
Returns a read/write iterator2d_range that points to the upper left element of the Range range associated to the Matrix. The same range is applied for rows and cols.
range | The range of the rows and the cols. |
Definition at line 3237 of file Matrix.hpp.
|
inline |
Returns a read-only iterator2d_range that points to the to the upper left element of the Range range associated to the Matrix.
range | The range of the rows and the cols. |
Definition at line 3245 of file Matrix.hpp.
|
related |
Returns the abs value of each element of the Matrix.
V | The Matrix |
Definition at line 3892 of file Matrix.hpp.
Returns the acos value of each element of the Matrix.
V | The Matrix |
Definition at line 3920 of file Matrix.hpp.
Returns the acos value of each element of the Matrix.
V | The Matrix |
Definition at line 3928 of file Matrix.hpp.
Returns the acos value of each element of the Matrix.
V | The Matrix |
Definition at line 3936 of file Matrix.hpp.
Returns the asin value of each element of the Matrix.
V | The Matrix |
Definition at line 3954 of file Matrix.hpp.
Returns the asin value of each element of the Matrix.
V | The Matrix |
Definition at line 3962 of file Matrix.hpp.
Returns the asin value of each element of the Matrix.
V | The Matrix |
Definition at line 3970 of file Matrix.hpp.
Returns the atan value of each element of the Matrix.
V | The Matrix |
Definition at line 3988 of file Matrix.hpp.
Returns the atan value of each element of the Matrix.
V | The Matrix |
Definition at line 3996 of file Matrix.hpp.
Returns the atan value of each element of the Matrix.
V | The Matrix |
Definition at line 4004 of file Matrix.hpp.
|
friend |
Definition at line 2362 of file Matrix.hpp.
Returns the cos value of each element of the Matrix.
V | The Matrix |
Definition at line 3911 of file Matrix.hpp.
Returns the cosh value of each element of the Matrix.
V | The Matrix |
Definition at line 4031 of file Matrix.hpp.
Returns the exp value of each element of the Matrix.
V | The Matrix |
Definition at line 4013 of file Matrix.hpp.
Returns the log value of each element of the Matrix.
V | The Matrix |
Definition at line 4022 of file Matrix.hpp.
Returns the log10 value of each element of the Matrix.
V | The Matrix |
Definition at line 4058 of file Matrix.hpp.
|
related |
Returns the max element of a Matrix, if the T is complex, it returns the element with the maximal magnitude.
M1 | the Matrix |
Definition at line 3885 of file Matrix.hpp.
|
related |
Returns the min element of a Matrix, if the T is complex, it returns ** the element with the minimal magnitude.
M1 | the Matrix |
Definition at line 3878 of file Matrix.hpp.
Matrix inequality comparison.
x | A Matrix |
y | A Matrix of the same type of x |
Definition at line 4077 of file Matrix.hpp.
Less than comparison operator (Matrix ordering relation)
x | A Matrix |
y | A Matrix of the same type of x |
Definition at line 4089 of file Matrix.hpp.
|
friend |
Write the Matrix to the ouput stream.
out | output std::ostream |
a | Matrix to write to the output stream |
Definition at line 3409 of file Matrix.hpp.
Less than equal comparison operator.
x | A Matrix |
y | A Matrix of the same type of x |
Definition at line 4106 of file Matrix.hpp.
Matrix equality comparison.
x | A Matrix |
y | A Matrix of the same type of x |
Definition at line 4068 of file Matrix.hpp.
More than comparison operator.
x | A Matrix |
y | A Matrix of the same type of x |
Definition at line 4098 of file Matrix.hpp.
More than equal comparison operator.
x | A Matrix |
y | A Matrix of the same type of x |
Definition at line 4114 of file Matrix.hpp.
Returns the sin value of each element of the Matrix.
V | The Matrix |
Definition at line 3945 of file Matrix.hpp.
Returns the sinh value of each element of the Matrix.
V | The Matrix |
Definition at line 4040 of file Matrix.hpp.
Returns the sqrt value of each element of the Matrix.
V | The Matrix |
Definition at line 3902 of file Matrix.hpp.
Returns the tan value of each element of the Matrix.
V | The Matrix |
Definition at line 3979 of file Matrix.hpp.
Returns the tanh value of each element of the Matrix.
V | The Matrix |
Definition at line 4049 of file Matrix.hpp.
|
static |
Definition at line 248 of file Matrix.hpp.