Navigation

Operators and Keywords

Function List:

C++ API

Matrix Class Reference

#include <dMatrix.h>

Inherits MArray2< double >.

Collaboration diagram for Matrix:

List of all members.


Public Types

typedef ColumnVector column_vector_type
typedef RowVector row_vector_type
typedef void(* solve_singularity_handler )(double rcon)
typedef double(* dmapper )(double)
typedef Complex(* cmapper )(const Complex &)
typedef bool(* bmapper )(double)

Public Member Functions

 Matrix (void)
 Matrix (octave_idx_type r, octave_idx_type c)
 Matrix (octave_idx_type r, octave_idx_type c, double val)
 Matrix (const dim_vector &dv)
 Matrix (const dim_vector &dv, double val)
 Matrix (const Matrix &a)
template<class U >
 Matrix (const MArray2< U > &a)
template<class U >
 Matrix (const Array2< U > &a)
 Matrix (const RowVector &rv)
 Matrix (const ColumnVector &cv)
 Matrix (const DiagMatrix &a)
 Matrix (const PermMatrix &a)
 Matrix (const boolMatrix &a)
 Matrix (const charMatrix &a)
Matrixoperator= (const Matrix &a)
bool operator== (const Matrix &a) const
bool operator!= (const Matrix &a) const
bool is_symmetric (void) const
Matrixinsert (const Matrix &a, octave_idx_type r, octave_idx_type c)
Matrixinsert (const RowVector &a, octave_idx_type r, octave_idx_type c)
Matrixinsert (const ColumnVector &a, octave_idx_type r, octave_idx_type c)
Matrixinsert (const DiagMatrix &a, octave_idx_type r, octave_idx_type c)
Matrixfill (double val)
Matrixfill (double val, octave_idx_type r1, octave_idx_type c1, octave_idx_type r2, octave_idx_type c2)
Matrix append (const Matrix &a) const
Matrix append (const RowVector &a) const
Matrix append (const ColumnVector &a) const
Matrix append (const DiagMatrix &a) const
Matrix stack (const Matrix &a) const
Matrix stack (const RowVector &a) const
Matrix stack (const ColumnVector &a) const
Matrix stack (const DiagMatrix &a) const
Matrix transpose (void) const
Matrix extract (octave_idx_type r1, octave_idx_type c1, octave_idx_type r2, octave_idx_type c2) const
Matrix extract_n (octave_idx_type r1, octave_idx_type c1, octave_idx_type nr, octave_idx_type nc) const
RowVector row (octave_idx_type i) const
ColumnVector column (octave_idx_type i) const
Matrix inverse (void) const
Matrix inverse (octave_idx_type &info) const
Matrix inverse (octave_idx_type &info, double &rcon, int force=0, int calc_cond=1) const
Matrix inverse (MatrixType &mattype) const
Matrix inverse (MatrixType &mattype, octave_idx_type &info) const
Matrix inverse (MatrixType &mattype, octave_idx_type &info, double &rcon, int force=0, int calc_cond=1) const
Matrix pseudo_inverse (double tol=0.0) const
ComplexMatrix fourier (void) const
ComplexMatrix ifourier (void) const
ComplexMatrix fourier2d (void) const
ComplexMatrix ifourier2d (void) const
DET determinant (void) const
DET determinant (octave_idx_type &info) const
DET determinant (octave_idx_type &info, double &rcon, int calc_cond=1) const
DET determinant (MatrixType &mattype, octave_idx_type &info, double &rcon, int calc_cond=1) const
double rcond (void) const
double rcond (MatrixType &mattype) const
Matrix solve (MatrixType &typ, const Matrix &b) const
Matrix solve (MatrixType &typ, const Matrix &b, octave_idx_type &info) const
Matrix solve (MatrixType &typ, const Matrix &b, octave_idx_type &info, double &rcon) const
Matrix solve (MatrixType &typ, const Matrix &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, bool singular_fallback=true, blas_trans_type transt=blas_no_trans) const
ComplexMatrix solve (MatrixType &typ, const ComplexMatrix &b) const
ComplexMatrix solve (MatrixType &typ, const ComplexMatrix &b, octave_idx_type &info) const
ComplexMatrix solve (MatrixType &typ, const ComplexMatrix &b, octave_idx_type &info, double &rcon) const
ComplexMatrix solve (MatrixType &typ, const ComplexMatrix &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, bool singular_fallback=true, blas_trans_type transt=blas_no_trans) const
ColumnVector solve (MatrixType &typ, const ColumnVector &b) const
ColumnVector solve (MatrixType &typ, const ColumnVector &b, octave_idx_type &info) const
ColumnVector solve (MatrixType &typ, const ColumnVector &b, octave_idx_type &info, double &rcon) const
ColumnVector solve (MatrixType &typ, const ColumnVector &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, blas_trans_type transt=blas_no_trans) const
ComplexColumnVector solve (MatrixType &typ, const ComplexColumnVector &b) const
ComplexColumnVector solve (MatrixType &typ, const ComplexColumnVector &b, octave_idx_type &info) const
ComplexColumnVector solve (MatrixType &typ, const ComplexColumnVector &b, octave_idx_type &info, double &rcon) const
ComplexColumnVector solve (MatrixType &typ, const ComplexColumnVector &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, blas_trans_type transt=blas_no_trans) const
Matrix solve (const Matrix &b) const
Matrix solve (const Matrix &b, octave_idx_type &info) const
Matrix solve (const Matrix &b, octave_idx_type &info, double &rcon) const
Matrix solve (const Matrix &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, blas_trans_type transt=blas_no_trans) const
ComplexMatrix solve (const ComplexMatrix &b) const
ComplexMatrix solve (const ComplexMatrix &b, octave_idx_type &info) const
ComplexMatrix solve (const ComplexMatrix &b, octave_idx_type &info, double &rcon) const
ComplexMatrix solve (const ComplexMatrix &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, blas_trans_type transt=blas_no_trans) const
ColumnVector solve (const ColumnVector &b) const
ColumnVector solve (const ColumnVector &b, octave_idx_type &info) const
ColumnVector solve (const ColumnVector &b, octave_idx_type &info, double &rcon) const
ColumnVector solve (const ColumnVector &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, blas_trans_type transt=blas_no_trans) const
ComplexColumnVector solve (const ComplexColumnVector &b) const
ComplexColumnVector solve (const ComplexColumnVector &b, octave_idx_type &info) const
ComplexColumnVector solve (const ComplexColumnVector &b, octave_idx_type &info, double &rcon) const
ComplexColumnVector solve (const ComplexColumnVector &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, blas_trans_type transt=blas_no_trans) const
Matrix lssolve (const Matrix &b) const
Matrix lssolve (const Matrix &b, octave_idx_type &info) const
Matrix lssolve (const Matrix &b, octave_idx_type &info, octave_idx_type &rank) const
Matrix lssolve (const Matrix &b, octave_idx_type &info, octave_idx_type &rank, double &rcon) const
ComplexMatrix lssolve (const ComplexMatrix &b) const
ComplexMatrix lssolve (const ComplexMatrix &b, octave_idx_type &info) const
ComplexMatrix lssolve (const ComplexMatrix &b, octave_idx_type &info, octave_idx_type &rank) const
ComplexMatrix lssolve (const ComplexMatrix &b, octave_idx_type &info, octave_idx_type &rank, double &rcon) const
ColumnVector lssolve (const ColumnVector &b) const
ColumnVector lssolve (const ColumnVector &b, octave_idx_type &info) const
ColumnVector lssolve (const ColumnVector &b, octave_idx_type &info, octave_idx_type &rank) const
ColumnVector lssolve (const ColumnVector &b, octave_idx_type &info, octave_idx_type &rank, double &rcon) const
ComplexColumnVector lssolve (const ComplexColumnVector &b) const
ComplexColumnVector lssolve (const ComplexColumnVector &b, octave_idx_type &info) const
ComplexColumnVector lssolve (const ComplexColumnVector &b, octave_idx_type &info, octave_idx_type &rank) const
ComplexColumnVector lssolve (const ComplexColumnVector &b, octave_idx_type &info, octave_idx_type &rank, double &rcon) const
Matrixoperator+= (const DiagMatrix &a)
Matrixoperator-= (const DiagMatrix &a)
boolMatrix operator! (void) const
Matrix map (dmapper fcn) const
ComplexMatrix map (cmapper fcn) const
boolMatrix map (bmapper fcn) const
bool any_element_is_negative (bool=false) const
bool any_element_is_nan (void) const
bool any_element_is_inf_or_nan (void) const
bool any_element_not_one_or_zero (void) const
bool all_elements_are_int_or_inf_or_nan (void) const
bool all_integers (double &max_val, double &min_val) const
bool too_large_for_float (void) const
boolMatrix all (int dim=-1) const
boolMatrix any (int dim=-1) const
Matrix cumprod (int dim=-1) const
Matrix cumsum (int dim=-1) const
Matrix prod (int dim=-1) const
Matrix sum (int dim=-1) const
Matrix sumsq (int dim=-1) const
Matrix abs (void) const
Matrix diag (octave_idx_type k=0) const
ColumnVector row_min (void) const
ColumnVector row_max (void) const
ColumnVector row_min (Array< octave_idx_type > &index) const
ColumnVector row_max (Array< octave_idx_type > &index) const
RowVector column_min (void) const
RowVector column_max (void) const
RowVector column_min (Array< octave_idx_type > &index) const
RowVector column_max (Array< octave_idx_type > &index) const

Static Public Member Functions

static double resize_fill_value (void)

Friends

class ComplexMatrix
OCTAVE_API Matrix real (const ComplexMatrix &a)
OCTAVE_API Matrix imag (const ComplexMatrix &a)
OCTAVE_API std::ostreamoperator<< (std::ostream &os, const Matrix &a)
OCTAVE_API std::istream & operator>> (std::istream &is, Matrix &a)

Member Typedef Documentation


Constructor & Destructor Documentation

Matrix::Matrix ( void   )  [inline]

Matrix::Matrix ( octave_idx_type  r,
octave_idx_type  c 
) [inline]

Matrix::Matrix ( octave_idx_type  r,
octave_idx_type  c,
double  val 
) [inline]

Matrix::Matrix ( const dim_vector dv  )  [inline]

Matrix::Matrix ( const dim_vector dv,
double  val 
) [inline]

Matrix::Matrix ( const Matrix a  )  [inline]

template<class U >
Matrix::Matrix ( const MArray2< U > &  a  )  [inline]

template<class U >
Matrix::Matrix ( const Array2< U > &  a  )  [inline]

Matrix::Matrix ( const RowVector rv  )  [explicit]

Matrix::Matrix ( const ColumnVector cv  )  [explicit]

Matrix::Matrix ( const DiagMatrix a  )  [explicit]

Matrix::Matrix ( const PermMatrix a  )  [explicit]

Matrix::Matrix ( const boolMatrix a  )  [explicit]

Matrix::Matrix ( const charMatrix a  )  [explicit]


Member Function Documentation

Matrix Matrix::abs ( void   )  const

boolMatrix Matrix::all ( int  dim = -1  )  const

bool Matrix::all_elements_are_int_or_inf_or_nan ( void   )  const

bool Matrix::all_integers ( double max_val,
double min_val 
) const

boolMatrix Matrix::any ( int  dim = -1  )  const

bool Matrix::any_element_is_inf_or_nan ( void   )  const

bool Matrix::any_element_is_nan ( void   )  const

bool Matrix::any_element_is_negative ( bool  neg_zero = false  )  const

bool Matrix::any_element_not_one_or_zero ( void   )  const

Matrix Matrix::append ( const DiagMatrix a  )  const

Matrix Matrix::append ( const ColumnVector a  )  const

Matrix Matrix::append ( const RowVector a  )  const

Matrix Matrix::append ( const Matrix a  )  const

ColumnVector Matrix::column ( octave_idx_type  i  )  const

Reimplemented from Array< T >.

RowVector Matrix::column_max ( Array< octave_idx_type > &  index  )  const

RowVector Matrix::column_max ( void   )  const

RowVector Matrix::column_min ( Array< octave_idx_type > &  index  )  const

RowVector Matrix::column_min ( void   )  const

Matrix Matrix::cumprod ( int  dim = -1  )  const

Matrix Matrix::cumsum ( int  dim = -1  )  const

DET Matrix::determinant ( MatrixType mattype,
octave_idx_type info,
double rcon,
int  calc_cond = 1 
) const

DET Matrix::determinant ( octave_idx_type info,
double rcon,
int  calc_cond = 1 
) const

DET Matrix::determinant ( octave_idx_type info  )  const

DET Matrix::determinant ( void   )  const

Matrix Matrix::diag ( octave_idx_type  k = 0  )  const

Reimplemented from MArray2< double >.

Matrix Matrix::extract ( octave_idx_type  r1,
octave_idx_type  c1,
octave_idx_type  r2,
octave_idx_type  c2 
) const

Matrix Matrix::extract_n ( octave_idx_type  r1,
octave_idx_type  c1,
octave_idx_type  nr,
octave_idx_type  nc 
) const

Matrix & Matrix::fill ( double  val,
octave_idx_type  r1,
octave_idx_type  c1,
octave_idx_type  r2,
octave_idx_type  c2 
)

Matrix & Matrix::fill ( double  val  ) 

F77_RET_T Complex *F77_RET_T Complex Complex *F77_RET_T Complex Complex *ComplexMatrix Matrix::fourier ( void   )  const

ComplexMatrix Matrix::fourier2d ( void   )  const

ComplexMatrix Matrix::ifourier ( void   )  const

ComplexMatrix Matrix::ifourier2d ( void   )  const

Matrix & Matrix::insert ( const DiagMatrix a,
octave_idx_type  r,
octave_idx_type  c 
)

Matrix & Matrix::insert ( const ColumnVector a,
octave_idx_type  r,
octave_idx_type  c 
)

Matrix & Matrix::insert ( const RowVector a,
octave_idx_type  r,
octave_idx_type  c 
)

Matrix & Matrix::insert ( const Matrix a,
octave_idx_type  r,
octave_idx_type  c 
)

Matrix Matrix::inverse ( MatrixType mattype,
octave_idx_type info,
double rcon,
int  force = 0,
int  calc_cond = 1 
) const

Matrix Matrix::inverse ( MatrixType mattype,
octave_idx_type info 
) const

Matrix Matrix::inverse ( MatrixType mattype  )  const

Matrix Matrix::inverse ( octave_idx_type info,
double rcon,
int  force = 0,
int  calc_cond = 1 
) const

Matrix Matrix::inverse ( octave_idx_type info  )  const

Matrix Matrix::inverse ( void   )  const

bool Matrix::is_symmetric ( void   )  const

ComplexColumnVector Matrix::lssolve ( const ComplexColumnVector b,
octave_idx_type info,
octave_idx_type rank,
double rcon 
) const

ComplexColumnVector Matrix::lssolve ( const ComplexColumnVector b,
octave_idx_type info,
octave_idx_type rank 
) const

ComplexColumnVector Matrix::lssolve ( const ComplexColumnVector b,
octave_idx_type info 
) const

ComplexColumnVector Matrix::lssolve ( const ComplexColumnVector b  )  const

ColumnVector Matrix::lssolve ( const ColumnVector b,
octave_idx_type info,
octave_idx_type rank,
double rcon 
) const

ColumnVector Matrix::lssolve ( const ColumnVector b,
octave_idx_type info,
octave_idx_type rank 
) const

ColumnVector Matrix::lssolve ( const ColumnVector b,
octave_idx_type info 
) const

ColumnVector Matrix::lssolve ( const ColumnVector b  )  const

ComplexMatrix Matrix::lssolve ( const ComplexMatrix b,
octave_idx_type info,
octave_idx_type rank,
double rcon 
) const

ComplexMatrix Matrix::lssolve ( const ComplexMatrix b,
octave_idx_type info,
octave_idx_type rank 
) const

ComplexMatrix Matrix::lssolve ( const ComplexMatrix b,
octave_idx_type info 
) const

ComplexMatrix Matrix::lssolve ( const ComplexMatrix b  )  const

Matrix Matrix::lssolve ( const Matrix b,
octave_idx_type info,
octave_idx_type rank,
double rcon 
) const

Matrix Matrix::lssolve ( const Matrix b,
octave_idx_type info,
octave_idx_type rank 
) const

Matrix Matrix::lssolve ( const Matrix b,
octave_idx_type info 
) const

Matrix Matrix::lssolve ( const Matrix b  )  const

boolMatrix Matrix::map ( bmapper  fcn  )  const

ComplexMatrix Matrix::map ( cmapper  fcn  )  const

Matrix Matrix::map ( dmapper  fcn  )  const

boolMatrix Matrix::operator! ( void   )  const

bool Matrix::operator!= ( const Matrix a  )  const

Matrix & Matrix::operator+= ( const DiagMatrix a  ) 

Matrix & Matrix::operator-= ( const DiagMatrix a  ) 

Matrix& Matrix::operator= ( const Matrix a  )  [inline]

bool Matrix::operator== ( const Matrix a  )  const

Matrix Matrix::prod ( int  dim = -1  )  const

Matrix Matrix::pseudo_inverse ( double  tol = 0.0  )  const

double Matrix::rcond ( MatrixType mattype  )  const

double Matrix::rcond ( void   )  const

static double Matrix::resize_fill_value ( void   )  [inline, static]

Reimplemented from Array< T >.

RowVector Matrix::row ( octave_idx_type  i  )  const

ColumnVector Matrix::row_max ( Array< octave_idx_type > &  index  )  const

ColumnVector Matrix::row_max ( void   )  const

ColumnVector Matrix::row_min ( Array< octave_idx_type > &  index  )  const

ColumnVector Matrix::row_min ( void   )  const

ComplexColumnVector Matrix::solve ( const ComplexColumnVector b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
blas_trans_type  transt = blas_no_trans 
) const

ComplexColumnVector Matrix::solve ( const ComplexColumnVector b,
octave_idx_type info,
double rcon 
) const

ComplexColumnVector Matrix::solve ( const ComplexColumnVector b,
octave_idx_type info 
) const

ComplexColumnVector Matrix::solve ( const ComplexColumnVector b  )  const

ColumnVector Matrix::solve ( const ColumnVector b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
blas_trans_type  transt = blas_no_trans 
) const

ColumnVector Matrix::solve ( const ColumnVector b,
octave_idx_type info,
double rcon 
) const

ColumnVector Matrix::solve ( const ColumnVector b,
octave_idx_type info 
) const

ColumnVector Matrix::solve ( const ColumnVector b  )  const

ComplexMatrix Matrix::solve ( const ComplexMatrix b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
blas_trans_type  transt = blas_no_trans 
) const

ComplexMatrix Matrix::solve ( const ComplexMatrix b,
octave_idx_type info,
double rcon 
) const

ComplexMatrix Matrix::solve ( const ComplexMatrix b,
octave_idx_type info 
) const

ComplexMatrix Matrix::solve ( const ComplexMatrix b  )  const

Matrix Matrix::solve ( const Matrix b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
blas_trans_type  transt = blas_no_trans 
) const

Matrix Matrix::solve ( const Matrix b,
octave_idx_type info,
double rcon 
) const

Matrix Matrix::solve ( const Matrix b,
octave_idx_type info 
) const

Matrix Matrix::solve ( const Matrix b  )  const

ComplexColumnVector Matrix::solve ( MatrixType typ,
const ComplexColumnVector b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
blas_trans_type  transt = blas_no_trans 
) const

ComplexColumnVector Matrix::solve ( MatrixType typ,
const ComplexColumnVector b,
octave_idx_type info,
double rcon 
) const

ComplexColumnVector Matrix::solve ( MatrixType typ,
const ComplexColumnVector b,
octave_idx_type info 
) const

ComplexColumnVector Matrix::solve ( MatrixType typ,
const ComplexColumnVector b 
) const

ColumnVector Matrix::solve ( MatrixType typ,
const ColumnVector b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
blas_trans_type  transt = blas_no_trans 
) const

ColumnVector Matrix::solve ( MatrixType typ,
const ColumnVector b,
octave_idx_type info,
double rcon 
) const

ColumnVector Matrix::solve ( MatrixType typ,
const ColumnVector b,
octave_idx_type info 
) const

ColumnVector Matrix::solve ( MatrixType typ,
const ColumnVector b 
) const

ComplexMatrix Matrix::solve ( MatrixType typ,
const ComplexMatrix b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
bool  singular_fallback = true,
blas_trans_type  transt = blas_no_trans 
) const

ComplexMatrix Matrix::solve ( MatrixType typ,
const ComplexMatrix b,
octave_idx_type info,
double rcon 
) const

ComplexMatrix Matrix::solve ( MatrixType typ,
const ComplexMatrix b,
octave_idx_type info 
) const

ComplexMatrix Matrix::solve ( MatrixType typ,
const ComplexMatrix b 
) const

Matrix Matrix::solve ( MatrixType typ,
const Matrix b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
bool  singular_fallback = true,
blas_trans_type  transt = blas_no_trans 
) const

Matrix Matrix::solve ( MatrixType typ,
const Matrix b,
octave_idx_type info,
double rcon 
) const

Matrix Matrix::solve ( MatrixType typ,
const Matrix b,
octave_idx_type info 
) const

Matrix Matrix::solve ( MatrixType typ,
const Matrix b 
) const

Matrix Matrix::stack ( const DiagMatrix a  )  const

Matrix Matrix::stack ( const ColumnVector a  )  const

Matrix Matrix::stack ( const RowVector a  )  const

Matrix Matrix::stack ( const Matrix a  )  const

Matrix Matrix::sum ( int  dim = -1  )  const

Matrix Matrix::sumsq ( int  dim = -1  )  const

bool Matrix::too_large_for_float ( void   )  const

Matrix Matrix::transpose ( void   )  const [inline]

Reimplemented from MArray2< double >.


Friends And Related Function Documentation

friend class ComplexMatrix [friend]

OCTAVE_API Matrix imag ( const ComplexMatrix a  )  [friend]

OCTAVE_API std::ostream& operator<< ( std::ostream os,
const Matrix a 
) [friend]

OCTAVE_API std::istream& operator>> ( std::istream &  is,
Matrix a 
) [friend]

OCTAVE_API Matrix real ( const ComplexMatrix a  )  [friend]


The documentation for this class was generated from the following files: