IT++ Logo Newcom Logo

mat.h File Reference

Matrix Class Definitions. More...

#include <itpp/config.h>
#include <string>
#include <complex>
#include <itpp/itconfig.h>
#include <itpp/base/itassert.h>
#include <itpp/base/factory.h>
#include <itpp/base/vec.h>

Go to the source code of this file.

Namespaces

namespace  itpp

Classes

class  itpp::Mat< Num_T >
 Templated Matrix Class. More...

Typedefs

typedef Mat< double > mat
 Default Matrix Type.
typedef Mat< std::complex<
double > > 
cmat
 Default Complex Matrix Type.
typedef Mat< int > imat
 Integer matrix.
typedef Mat< short int > smat
 short int matrix
typedef Mat< bin > bmat
 bin matrix

Functions

template<class Num_T>
const Mat< Num_T > concat_horizontal (const Mat< Num_T > &m1, const Mat< Num_T > &m2)
 Concatenate the matrices m1 and m2 horizontally.
template<class Num_T>
const Mat< Num_T > concat_vertical (const Mat< Num_T > &m1, const Mat< Num_T > &m2)
 Concatenate the matrices m1 and m2 vertically.
template<class Num_T>
const Mat< Num_T > operator+ (const Mat< Num_T > &m1, const Mat< Num_T > &m2)
 Addition of two matrices.
template<class Num_T>
const Mat< Num_T > operator+ (const Mat< Num_T > &m, Num_T t)
 Addition of matrix and scalar.
template<class Num_T>
const Mat< Num_T > operator+ (Num_T t, const Mat< Num_T > &m)
 Addition of scalar and matrix.
template<class Num_T>
const Mat< Num_T > operator- (const Mat< Num_T > &m1, const Mat< Num_T > &m2)
 Subtraction of m2 from m1.
template<class Num_T>
const Mat< Num_T > operator- (const Mat< Num_T > &m, Num_T t)
 Subraction of scalar from matrix.
template<class Num_T>
const Mat< Num_T > operator- (Num_T t, const Mat< Num_T > &m)
 Subtract matrix from scalar.
template<class Num_T>
const Mat< Num_T > operator- (const Mat< Num_T > &m)
 Subraction of matrix.
template<class Num_T>
const Mat< Num_T > operator * (const Mat< Num_T > &m1, const Mat< Num_T > &m2)
 Multiplication of two matrices.
template<class Num_T>
const Vec< Num_T > operator * (const Mat< Num_T > &m, const Vec< Num_T > &v)
 Multiplication of matrix m and vector v (column vector).
template<class Num_T>
const Mat< Num_T > operator * (const Vec< Num_T > &v, const Mat< Num_T > &m)
 Multiplication of transposed vector v and matrix m.
template<class Num_T>
const Mat< Num_T > operator * (const Mat< Num_T > &m, Num_T t)
 Multiplication of matrix and scalar.
template<class Num_T>
const Mat< Num_T > operator * (Num_T t, const Mat< Num_T > &m)
 Multiplication of scalar and matrix.
template<class Num_T>
const Mat< Num_T > elem_mult (const Mat< Num_T > &m1, const Mat< Num_T > &m2)
 Elementwise multiplication of two matrices.
template<class Num_T>
const Mat< Num_T > operator/ (const Mat< Num_T > &m, Num_T t)
 Division of matrix with scalar.
template<class Num_T>
const Mat< Num_T > elem_div (const Mat< Num_T > &m1, const Mat< Num_T > &m2)
 Elementwise division of matrix m1 with matrix m2.
template<>
const vec operator * (const mat &m, const vec &v)
template<>
const cvec operator * (const cmat &m, const cvec &v)
template<class Num_T>
std::ostream & operator<< (std::ostream &os, const Mat< Num_T > &m)
template<class Num_T>
std::istream & operator>> (std::istream &is, Mat< Num_T > &m)


Detailed Description

Matrix Class Definitions.

Author:
Tony Ottosson and Tobias Ringstrom
Date
2007-01-02 12:08:49 +0100 (Tue, 02 Jan 2007)
Revision
813

-------------------------------------------------------------------------

IT++ - C++ library of mathematical, signal processing, speech processing, and communications classes and functions

Copyright (C) 1995-2007 (see AUTHORS file for a list of contributors)

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

-------------------------------------------------------------------------

Definition in file mat.h.


Typedef Documentation

typedef Mat<double> itpp::mat
 

Default Matrix Type.

Definition at line 450 of file mat.h.

typedef Mat<std::complex<double> > itpp::cmat
 

Default Complex Matrix Type.

Definition at line 456 of file mat.h.

typedef Mat<int> itpp::imat
 

Integer matrix.

Definition at line 462 of file mat.h.

typedef Mat<short int> itpp::smat
 

short int matrix

Definition at line 468 of file mat.h.

typedef Mat<bin> itpp::bmat
 

bin matrix

Definition at line 476 of file mat.h.


Function Documentation

template<class Num_T>
const Mat< Num_T > itpp::concat_horizontal const Mat< Num_T > &  m1,
const Mat< Num_T > &  m2
 

Concatenate the matrices m1 and m2 horizontally.

Definition at line 994 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::concat_vertical const Mat< Num_T > &  m1,
const Mat< Num_T > &  m2
 

Concatenate the matrices m1 and m2 vertically.

Definition at line 1012 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator+ const Mat< Num_T > &  m1,
const Mat< Num_T > &  m2
[inline]
 

Addition of two matrices.

Definition at line 1097 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator+ const Mat< Num_T > &  m,
Num_T  t
[inline]
 

Addition of matrix and scalar.

Definition at line 1118 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator+ Num_T  t,
const Mat< Num_T > &  m
[inline]
 

Addition of scalar and matrix.

Definition at line 1129 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator- const Mat< Num_T > &  m1,
const Mat< Num_T > &  m2
[inline]
 

Subtraction of m2 from m1.

Definition at line 1167 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator- const Mat< Num_T > &  m,
Num_T  t
[inline]
 

Subraction of scalar from matrix.

Definition at line 1195 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator- Num_T  t,
const Mat< Num_T > &  m
[inline]
 

Subtract matrix from scalar.

Definition at line 1212 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator- const Mat< Num_T > &  m  )  [inline]
 

Subraction of matrix.

Definition at line 1229 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator * const Mat< Num_T > &  m1,
const Mat< Num_T > &  m2
 

Multiplication of two matrices.

Definition at line 1292 of file mat.h.

template<class Num_T>
const Vec< Num_T > itpp::operator * const Mat< Num_T > &  m,
const Vec< Num_T > &  v
 

Multiplication of matrix m and vector v (column vector).

Definition at line 1322 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator * const Vec< Num_T > &  v,
const Mat< Num_T > &  m
[inline]
 

Multiplication of transposed vector v and matrix m.

Definition at line 1341 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator * const Mat< Num_T > &  m,
Num_T  t
[inline]
 

Multiplication of matrix and scalar.

Definition at line 1354 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator * Num_T  t,
const Mat< Num_T > &  m
[inline]
 

Multiplication of scalar and matrix.

Definition at line 1365 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::elem_mult const Mat< Num_T > &  m1,
const Mat< Num_T > &  m2
[inline]
 

Elementwise multiplication of two matrices.

Definition at line 1376 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::operator/ const Mat< Num_T > &  m,
Num_T  t
[inline]
 

Division of matrix with scalar.

Definition at line 1396 of file mat.h.

template<class Num_T>
const Mat< Num_T > itpp::elem_div const Mat< Num_T > &  m1,
const Mat< Num_T > &  m2
[inline]
 

Elementwise division of matrix m1 with matrix m2.

Definition at line 1417 of file mat.h.

SourceForge Logo

Generated on Fri Jan 11 08:51:39 2008 for IT++ by Doxygen 1.3.9.1