#include "MatrixType.h"
Public Types | |
enum | matrix_type { Unknown = 0, Full, Diagonal, Permuted_Diagonal, Upper, Lower, Permuted_Upper, Permuted_Lower, Banded, Hermitian, Banded_Hermitian, Tridiagonal, Tridiagonal_Hermitian, Rectangular } |
Private Member Functions | |
void | type (int new_typ) |
Private Attributes | |
double | bandden |
bool | dense |
bool | full |
octave_idx_type | lower_band |
octave_idx_type | nperm |
octave_idx_type * | perm |
double | sp_bandden |
matrix_type | typ |
octave_idx_type | upper_band |
Definition at line 38 of file MatrixType.h.
Enumerator | |
---|---|
Unknown | |
Full | |
Diagonal | |
Permuted_Diagonal | |
Upper | |
Lower | |
Permuted_Upper | |
Permuted_Lower | |
Banded | |
Hermitian | |
Banded_Hermitian | |
Tridiagonal | |
Tridiagonal_Hermitian | |
Rectangular |
Definition at line 43 of file MatrixType.h.
MatrixType::MatrixType | ( | void | ) |
Definition at line 64 of file MatrixType.cc.
MatrixType::MatrixType | ( | const MatrixType & | a | ) |
MatrixType::MatrixType | ( | const Matrix & | a | ) |
Definition at line 200 of file MatrixType.cc.
References a, matrix_real_probe(), and typ.
MatrixType::MatrixType | ( | const ComplexMatrix & | a | ) |
Definition at line 208 of file MatrixType.cc.
References a, matrix_complex_probe(), and typ.
MatrixType::MatrixType | ( | const FloatMatrix & | a | ) |
Definition at line 216 of file MatrixType.cc.
References a, matrix_real_probe(), and typ.
MatrixType::MatrixType | ( | const FloatComplexMatrix & | a | ) |
Definition at line 224 of file MatrixType.cc.
References a, matrix_complex_probe(), and typ.
MatrixType::MatrixType | ( | const MSparse< T > & | a | ) |
Definition at line 234 of file MatrixType.cc.
References a, bandden, Banded, Banded_Hermitian, octave::math::conj(), d, dense, Array< T >::diag(), Diagonal, found, Full, octave_sparse_params::get_bandden(), octave_sparse_params::get_key(), Hermitian, i, imag(), k, Lower, lower_band, nm, Array< T >::nnz(), norm(), nperm, OCTAVE_LOCAL_BUFFER, perm, Permuted_Diagonal, Permuted_Lower, Permuted_Upper, real(), Rectangular, sp_bandden, tmp, Tridiagonal, Tridiagonal_Hermitian, typ, Upper, upper_band, and warn_calculating_sparse_type().
MatrixType::MatrixType | ( | const matrix_type | t, |
bool | _full = false |
||
) |
Definition at line 557 of file MatrixType.cc.
References Diagonal, Full, Lower, Permuted_Diagonal, Rectangular, t, Tridiagonal, Tridiagonal_Hermitian, typ, Unknown, Upper, and warn_invalid().
MatrixType::MatrixType | ( | const matrix_type | t, |
const octave_idx_type | np, | ||
const octave_idx_type * | p, | ||
bool | _full = false |
||
) |
Definition at line 573 of file MatrixType.cc.
References i, nperm, p, perm, Permuted_Lower, Permuted_Upper, t, typ, and warn_invalid().
MatrixType::MatrixType | ( | const matrix_type | t, |
const octave_idx_type | ku, | ||
const octave_idx_type | kl, | ||
bool | _full = false |
||
) |
Definition at line 593 of file MatrixType.cc.
References Banded, Banded_Hermitian, lower_band, t, typ, upper_band, and warn_invalid().
MatrixType::~MatrixType | ( | void | ) |
Definition at line 610 of file MatrixType.cc.
|
inline |
Definition at line 102 of file MatrixType.h.
void MatrixType::info | ( | void | ) | const |
Definition at line 840 of file MatrixType.cc.
References bandden, Banded, Banded_Hermitian, Diagonal, Full, octave_sparse_params::get_key(), Hermitian, Lower, lower_band, Permuted_Diagonal, Permuted_Lower, Permuted_Upper, Rectangular, Tridiagonal, Tridiagonal_Hermitian, typ, Unknown, Upper, and upper_band.
Referenced by SparseMatrix::bsolve(), SparseComplexMatrix::bsolve(), SparseMatrix::dinverse(), SparseComplexMatrix::dinverse(), SparseMatrix::dsolve(), SparseComplexMatrix::dsolve(), SparseMatrix::fsolve(), SparseComplexMatrix::fsolve(), SparseMatrix::ltsolve(), SparseComplexMatrix::ltsolve(), SparseMatrix::tinverse(), SparseComplexMatrix::tinverse(), SparseMatrix::trisolve(), SparseComplexMatrix::trisolve(), SparseMatrix::utsolve(), and SparseComplexMatrix::utsolve().
|
inline |
Definition at line 161 of file MatrixType.h.
|
inline |
Definition at line 135 of file MatrixType.h.
|
inline |
Definition at line 108 of file MatrixType.h.
Referenced by SparseMatrix::bsolve(), SparseComplexMatrix::bsolve(), SparseMatrix::trisolve(), and SparseComplexMatrix::trisolve().
|
inline |
Definition at line 114 of file MatrixType.h.
|
inline |
Definition at line 148 of file MatrixType.h.
References SparseComplexMatrix::ishermitian().
|
inline |
Definition at line 153 of file MatrixType.h.
|
inline |
Definition at line 128 of file MatrixType.h.
|
inline |
Definition at line 151 of file MatrixType.h.
|
inline |
Definition at line 138 of file MatrixType.h.
|
inline |
Definition at line 155 of file MatrixType.h.
Referenced by do_sqrtm().
|
inline |
Definition at line 121 of file MatrixType.h.
|
inline |
Definition at line 131 of file MatrixType.h.
|
inline |
Definition at line 110 of file MatrixType.h.
|
inline |
Definition at line 141 of file MatrixType.h.
Referenced by SparseMatrix::inverse(), SparseComplexMatrix::inverse(), Matrix::inverse(), FloatMatrix::inverse(), ComplexMatrix::inverse(), and FloatComplexMatrix::inverse().
|
inline |
Definition at line 124 of file MatrixType.h.
|
inline |
Definition at line 117 of file MatrixType.h.
|
inline |
Definition at line 173 of file MatrixType.h.
|
inline |
Definition at line 180 of file MatrixType.h.
|
inline |
Definition at line 163 of file MatrixType.h.
|
inline |
Definition at line 176 of file MatrixType.h.
Referenced by ComplexMatrix::fsolve(), and FloatComplexMatrix::fsolve().
|
inline |
Definition at line 169 of file MatrixType.h.
|
inline |
Definition at line 182 of file MatrixType.h.
void MatrixType::mark_as_permuted | ( | const octave_idx_type | np, |
const octave_idx_type * | p | ||
) |
Definition at line 924 of file MatrixType.cc.
References current_liboctave_error_handler, Diagonal, i, Lower, nperm, p, perm, Permuted_Diagonal, Permuted_Lower, Permuted_Upper, typ, and Upper.
|
inline |
Definition at line 165 of file MatrixType.h.
|
inline |
Definition at line 178 of file MatrixType.h.
Referenced by SparseMatrix::bsolve(), SparseComplexMatrix::bsolve(), Matrix::finverse(), FloatMatrix::finverse(), ComplexMatrix::finverse(), FloatComplexMatrix::finverse(), Matrix::fsolve(), FloatMatrix::fsolve(), ComplexMatrix::fsolve(), FloatComplexMatrix::fsolve(), SparseMatrix::fsolve(), SparseComplexMatrix::fsolve(), SparseMatrix::ltsolve(), SparseComplexMatrix::ltsolve(), Matrix::rcond(), FloatMatrix::rcond(), ComplexMatrix::rcond(), FloatComplexMatrix::rcond(), SparseMatrix::trisolve(), SparseComplexMatrix::trisolve(), SparseMatrix::utsolve(), and SparseComplexMatrix::utsolve().
void MatrixType::mark_as_symmetric | ( | void | ) |
Definition at line 895 of file MatrixType.cc.
References Banded, Banded_Hermitian, current_liboctave_error_handler, Full, Hermitian, Tridiagonal, Tridiagonal_Hermitian, typ, and Unknown.
|
inline |
Definition at line 171 of file MatrixType.h.
void MatrixType::mark_as_unpermuted | ( | void | ) |
Definition at line 944 of file MatrixType.cc.
References Diagonal, Lower, nperm, perm, Permuted_Diagonal, Permuted_Lower, Permuted_Upper, typ, and Upper.
void MatrixType::mark_as_unsymmetric | ( | void | ) |
Definition at line 911 of file MatrixType.cc.
References Banded, Banded_Hermitian, Full, Hermitian, Tridiagonal, Tridiagonal_Hermitian, typ, and Unknown.
Referenced by SparseMatrix::bsolve(), SparseComplexMatrix::bsolve(), Matrix::determinant(), FloatMatrix::determinant(), ComplexMatrix::determinant(), FloatComplexMatrix::determinant(), Matrix::fsolve(), FloatMatrix::fsolve(), ComplexMatrix::fsolve(), FloatComplexMatrix::fsolve(), SparseMatrix::fsolve(), SparseComplexMatrix::fsolve(), SparseMatrix::inverse(), SparseComplexMatrix::inverse(), Matrix::inverse(), FloatMatrix::inverse(), ComplexMatrix::inverse(), FloatComplexMatrix::inverse(), oct_binop_mul_cdm_scm(), oct_binop_mul_cdm_sm(), oct_binop_mul_dm_scm(), oct_binop_mul_dm_sm(), oct_binop_mul_scm_cdm(), oct_binop_mul_scm_dm(), oct_binop_mul_sm_cdm(), oct_binop_mul_sm_dm(), Matrix::rcond(), FloatMatrix::rcond(), ComplexMatrix::rcond(), FloatComplexMatrix::rcond(), SparseMatrix::trisolve(), and SparseComplexMatrix::trisolve().
|
inline |
Definition at line 167 of file MatrixType.h.
|
inline |
Definition at line 106 of file MatrixType.h.
Referenced by SparseMatrix::bsolve(), and SparseComplexMatrix::bsolve().
|
inline |
Definition at line 104 of file MatrixType.h.
Referenced by SparseMatrix::bsolve(), and SparseComplexMatrix::bsolve().
MatrixType & MatrixType::operator= | ( | const MatrixType & | a | ) |
Definition at line 619 of file MatrixType.cc.
References a, bandden, dense, full, i, lower_band, nperm, perm, sp_bandden, typ, and upper_band.
MatrixType MatrixType::transpose | ( | void | ) | const |
Definition at line 961 of file MatrixType.cc.
References Banded, Lower, lower_band, Permuted_Lower, Permuted_Upper, retval, typ, Upper, and upper_band.
Referenced by SparseMatrix::inverse(), SparseComplexMatrix::inverse(), oct_unop_hermitian(), oct_unop_transpose(), and xdiv().
|
inline |
Definition at line 159 of file MatrixType.h.
Referenced by SparseMatrix::ltsolve(), SparseComplexMatrix::ltsolve(), SparseMatrix::tinverse(), SparseComplexMatrix::tinverse(), SparseMatrix::utsolve(), and SparseComplexMatrix::utsolve().
int MatrixType::type | ( | bool | quiet = true | ) |
Definition at line 650 of file MatrixType.cc.
References full, octave_sparse_params::get_bandden(), octave_sparse_params::get_key(), sp_bandden, typ, Unknown, and warn_cached().
Referenced by SparseMatrix::bsolve(), SparseComplexMatrix::bsolve(), Matrix::determinant(), FloatMatrix::determinant(), ComplexMatrix::determinant(), FloatComplexMatrix::determinant(), SparseMatrix::dinverse(), SparseComplexMatrix::dinverse(), do_sqrtm(), SparseMatrix::dsolve(), SparseComplexMatrix::dsolve(), Matrix::fsolve(), FloatMatrix::fsolve(), ComplexMatrix::fsolve(), FloatComplexMatrix::fsolve(), SparseMatrix::fsolve(), SparseComplexMatrix::fsolve(), SparseMatrix::inverse(), SparseComplexMatrix::inverse(), Matrix::inverse(), FloatMatrix::inverse(), ComplexMatrix::inverse(), FloatComplexMatrix::inverse(), Matrix::ltsolve(), FloatMatrix::ltsolve(), SparseMatrix::ltsolve(), SparseComplexMatrix::ltsolve(), ComplexMatrix::ltsolve(), FloatComplexMatrix::ltsolve(), Matrix::rcond(), FloatMatrix::rcond(), ComplexMatrix::rcond(), FloatComplexMatrix::rcond(), Matrix::solve(), FloatMatrix::solve(), ComplexMatrix::solve(), FloatComplexMatrix::solve(), SparseMatrix::solve(), SparseComplexMatrix::solve(), SparseMatrix::tinverse(), Matrix::tinverse(), SparseComplexMatrix::tinverse(), FloatMatrix::tinverse(), ComplexMatrix::tinverse(), FloatComplexMatrix::tinverse(), SparseMatrix::trisolve(), SparseComplexMatrix::trisolve(), SparseMatrix::utsolve(), Matrix::utsolve(), FloatMatrix::utsolve(), SparseComplexMatrix::utsolve(), ComplexMatrix::utsolve(), and FloatComplexMatrix::utsolve().
int MatrixType::type | ( | const Matrix & | a | ) |
Definition at line 736 of file MatrixType.cc.
References a, full, octave_sparse_params::get_key(), i, nperm, perm, typ, Unknown, and warn_cached().
int MatrixType::type | ( | const ComplexMatrix & | a | ) |
Definition at line 762 of file MatrixType.cc.
References a, full, octave_sparse_params::get_key(), i, nperm, perm, typ, Unknown, and warn_cached().
int MatrixType::type | ( | const FloatMatrix & | a | ) |
Definition at line 788 of file MatrixType.cc.
References a, full, octave_sparse_params::get_key(), i, nperm, perm, typ, Unknown, and warn_cached().
int MatrixType::type | ( | const FloatComplexMatrix & | a | ) |
Definition at line 814 of file MatrixType.cc.
References a, full, octave_sparse_params::get_key(), i, nperm, perm, typ, Unknown, and warn_cached().
int MatrixType::type | ( | const SparseMatrix & | a | ) |
Definition at line 672 of file MatrixType.cc.
References a, bandden, dense, full, octave_sparse_params::get_bandden(), octave_sparse_params::get_key(), i, lower_band, nperm, perm, sp_bandden, typ, Unknown, upper_band, and warn_cached().
int MatrixType::type | ( | const SparseComplexMatrix & | a | ) |
Definition at line 704 of file MatrixType.cc.
References a, bandden, dense, full, octave_sparse_params::get_bandden(), octave_sparse_params::get_key(), i, lower_band, nperm, perm, sp_bandden, typ, Unknown, upper_band, and warn_cached().
|
inlineprivate |
Definition at line 195 of file MatrixType.h.
|
private |
Definition at line 199 of file MatrixType.h.
Referenced by info(), MatrixType(), operator=(), and type().
|
private |
Definition at line 202 of file MatrixType.h.
Referenced by MatrixType(), operator=(), and type().
|
private |
Definition at line 203 of file MatrixType.h.
Referenced by operator=(), and type().
|
private |
Definition at line 201 of file MatrixType.h.
Referenced by info(), MatrixType(), operator=(), transpose(), and type().
|
private |
Definition at line 204 of file MatrixType.h.
Referenced by mark_as_permuted(), mark_as_unpermuted(), MatrixType(), operator=(), type(), and ~MatrixType().
|
private |
Definition at line 205 of file MatrixType.h.
Referenced by mark_as_permuted(), mark_as_unpermuted(), MatrixType(), operator=(), type(), and ~MatrixType().
|
private |
Definition at line 198 of file MatrixType.h.
Referenced by MatrixType(), operator=(), and type().
|
private |
Definition at line 197 of file MatrixType.h.
Referenced by info(), mark_as_permuted(), mark_as_symmetric(), mark_as_unpermuted(), mark_as_unsymmetric(), MatrixType(), operator=(), transpose(), and type().
|
private |
Definition at line 200 of file MatrixType.h.
Referenced by info(), MatrixType(), operator=(), transpose(), and type().