# boost::numeric::ublas::identity_matrix< T, ALLOC > Class Template Reference

An identity matrix with values of type `T`. More...

Inherits matrix_container< identity_matrix< T, ALLOC > >.

List of all members.

## Classes

class | const_iterator1
class | const_iterator2

## Public Types

typedef ALLOC::size_type | size_type
typedef ALLOC::difference_type | difference_type
typedef T | value_type
typedef const T & | const_reference
typedef T & | reference
typedef const matrix_reference < const self_type > | const_closure_type
typedef matrix_reference < self_type > | closure_type
typedef sparse_tag | storage_category
typedef unknown_orientation_tag | orientation_category
typedef reverse_iterator_base1 < const_iterator1 > | const_reverse_iterator1
typedef reverse_iterator_base2 < const_iterator2 > | const_reverse_iterator2
typedef const_iterator1 | iterator1
typedef const_iterator2 | iterator2

## Public Member Functions

BOOST_UBLAS_INLINE | identity_matrix (size_type size)
BOOST_UBLAS_INLINE | identity_matrix (size_type size1, size_type size2)
BOOST_UBLAS_INLINE | identity_matrix (const identity_matrix &m)
BOOST_UBLAS_INLINE size_type | size1 () const
BOOST_UBLAS_INLINE size_type | size2 () const
BOOST_UBLAS_INLINE void | resize (size_type size, bool preserve=true)
BOOST_UBLAS_INLINE void | resize (size_type size1, size_type size2, bool=true)
BOOST_UBLAS_INLINE const_reference | operator() (size_type i, size_type j) const
BOOST_UBLAS_INLINE identity_matrix & | operator= (const identity_matrix &m)
BOOST_UBLAS_INLINE identity_matrix & | assign_temporary (identity_matrix &m)
BOOST_UBLAS_INLINE void | swap (identity_matrix &m)
BOOST_UBLAS_INLINE const_iterator1 | find1 (int rank, size_type i, size_type j) const
BOOST_UBLAS_INLINE const_iterator2 | find2 (int rank, size_type i, size_type j) const
BOOST_UBLAS_INLINE const_iterator1 | begin1 () const
BOOST_UBLAS_INLINE const_iterator1 | end1 () const
BOOST_UBLAS_INLINE const_iterator2 | begin2 () const
BOOST_UBLAS_INLINE const_iterator2 | end2 () const
BOOST_UBLAS_INLINE const_reverse_iterator1 | rbegin1 () const
BOOST_UBLAS_INLINE const_reverse_iterator1 | rend1 () const
BOOST_UBLAS_INLINE const_reverse_iterator2 | rbegin2 () const
BOOST_UBLAS_INLINE const_reverse_iterator2 | rend2 () const
template<class Archive >
void | serialize (Archive &ar, const unsigned int)

## Friends

BOOST_UBLAS_INLINE friend void | swap (identity_matrix &m1, identity_matrix &m2)

## Detailed Description

### template<class T, class ALLOC>
class boost::numeric::ublas::identity_matrix< T, ALLOC >

Elements or cordinates are equal to 1 (one) and all others to 0 (zero). Changing values does not affect the matrix, however assigning it to a normal matrix will make the matrix equal to an identity matrix. All accesses are constant du to the trivial values.

Template Parameters:

  | T | the type of object stored in the matrix (like double, float, complex, etc...)
  | ALLOC | an allocator for storing the zeros and one elements. By default, a standar allocator is used.