GNU Octave  9.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
MatrixType Class Reference

#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
}
 

Public Member Functions

 MatrixType ()
 
 MatrixType (const ComplexMatrix &a)
 
 MatrixType (const FloatComplexMatrix &a)
 
 MatrixType (const FloatMatrix &a)
 
 MatrixType (const Matrix &a)
 
 MatrixType (const matrix_type t, bool _full=false)
 
 MatrixType (const matrix_type t, const octave_idx_type ku, const octave_idx_type kl, bool _full=false)
 
 MatrixType (const matrix_type t, const octave_idx_type np, const octave_idx_type *p, bool _full=false)
 
 MatrixType (const MatrixType &a)
 
template<typename T >
 MatrixType (const MSparse< T > &a)
 
 ~MatrixType ()
 
double band_density () const
 
void info () const
 
void invalidate_type ()
 
bool is_dense () const
 
bool is_known () const
 
bool is_rectangular () const
 
bool is_tridiagonal () const
 
bool is_unknown () const
 
bool isbanded () const
 
bool isdiag () const
 
bool ishermitian () const
 
bool istril () const
 
bool istriu () const
 
void mark_as_banded (const octave_idx_type ku, const octave_idx_type kl)
 
void mark_as_dense ()
 
void mark_as_diagonal ()
 
void mark_as_full ()
 
void mark_as_lower_triangular ()
 
void mark_as_not_dense ()
 
void mark_as_permuted (const octave_idx_type np, const octave_idx_type *p)
 
void mark_as_permuted_diagonal ()
 
void mark_as_rectangular ()
 
void mark_as_symmetric ()
 
void mark_as_tridiagonal ()
 
void mark_as_unpermuted ()
 
void mark_as_unsymmetric ()
 
void mark_as_upper_triangular ()
 
int nlower () const
 
int nupper () const
 
MatrixTypeoperator= (const MatrixType &a)
 
MatrixType transpose () const
 
octave_idx_typetriangular_perm () const
 
int type (bool quiet=true)
 
int type (const ComplexMatrix &a)
 
int type (const FloatComplexMatrix &a)
 
int type (const FloatMatrix &a)
 
int type (const Matrix &a)
 
int type (const SparseComplexMatrix &a)
 
int type (const SparseMatrix &a)
 

Detailed Description

Definition at line 35 of file MatrixType.h.

Member Enumeration Documentation

◆ matrix_type

Enumerator
Unknown 
Full 
Diagonal 
Permuted_Diagonal 
Upper 
Lower 
Permuted_Upper 
Permuted_Lower 
Banded 
Hermitian 
Banded_Hermitian 
Tridiagonal 
Tridiagonal_Hermitian 
Rectangular 

Definition at line 39 of file MatrixType.h.

Constructor & Destructor Documentation

◆ MatrixType() [1/10]

MatrixType::MatrixType ( )

Definition at line 66 of file MatrixType.cc.

◆ MatrixType() [2/10]

MatrixType::MatrixType ( const MatrixType a)

Definition at line 72 of file MatrixType.cc.

◆ MatrixType() [3/10]

MatrixType::MatrixType ( const Matrix a)

Definition at line 203 of file MatrixType.cc.

References matrix_real_probe().

◆ MatrixType() [4/10]

MatrixType::MatrixType ( const ComplexMatrix a)

Definition at line 211 of file MatrixType.cc.

References matrix_complex_probe().

◆ MatrixType() [5/10]

MatrixType::MatrixType ( const FloatMatrix a)

Definition at line 219 of file MatrixType.cc.

References matrix_real_probe().

◆ MatrixType() [6/10]

MatrixType::MatrixType ( const FloatComplexMatrix a)

Definition at line 227 of file MatrixType.cc.

References matrix_complex_probe().

◆ MatrixType() [7/10]

template<typename T >
MatrixType::MatrixType ( const MSparse< T > &  a)

◆ MatrixType() [8/10]

MatrixType::MatrixType ( const matrix_type  t,
bool  _full = false 
)

◆ MatrixType() [9/10]

MatrixType::MatrixType ( const matrix_type  t,
const octave_idx_type  np,
const octave_idx_type p,
bool  _full = false 
)

Definition at line 579 of file MatrixType.cc.

References Permuted_Lower, and Permuted_Upper.

◆ MatrixType() [10/10]

MatrixType::MatrixType ( const matrix_type  t,
const octave_idx_type  ku,
const octave_idx_type  kl,
bool  _full = false 
)

Definition at line 599 of file MatrixType.cc.

References Banded, and Banded_Hermitian.

◆ ~MatrixType()

MatrixType::~MatrixType ( )

Definition at line 616 of file MatrixType.cc.

Member Function Documentation

◆ band_density()

double MatrixType::band_density ( ) const
inline

Definition at line 99 of file MatrixType.h.

◆ info()

◆ invalidate_type()

void MatrixType::invalidate_type ( )
inline

Definition at line 138 of file MatrixType.h.

Referenced by octave_base_sparse< T >::assign(), and Fmatrix_type().

◆ is_dense()

bool MatrixType::is_dense ( ) const
inline

Definition at line 105 of file MatrixType.h.

◆ is_known()

bool MatrixType::is_known ( ) const
inline

Definition at line 130 of file MatrixType.h.

◆ is_rectangular()

bool MatrixType::is_rectangular ( ) const
inline

Definition at line 128 of file MatrixType.h.

◆ is_tridiagonal()

bool MatrixType::is_tridiagonal ( ) const
inline

Definition at line 119 of file MatrixType.h.

◆ is_unknown()

bool MatrixType::is_unknown ( ) const
inline

Definition at line 132 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ isbanded()

bool MatrixType::isbanded ( ) const
inline

Definition at line 116 of file MatrixType.h.

◆ isdiag()

bool MatrixType::isdiag ( ) const
inline

Definition at line 107 of file MatrixType.h.

◆ ishermitian()

bool MatrixType::ishermitian ( ) const
inline

Definition at line 122 of file MatrixType.h.

Referenced by SparseComplexMatrix::inverse(), and SparseMatrix::inverse().

◆ istril()

bool MatrixType::istril ( ) const
inline

Definition at line 113 of file MatrixType.h.

◆ istriu()

bool MatrixType::istriu ( ) const
inline

Definition at line 110 of file MatrixType.h.

◆ mark_as_banded()

void MatrixType::mark_as_banded ( const octave_idx_type  ku,
const octave_idx_type  kl 
)
inline

Definition at line 150 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ mark_as_dense()

void MatrixType::mark_as_dense ( )
inline

Definition at line 157 of file MatrixType.h.

◆ mark_as_diagonal()

void MatrixType::mark_as_diagonal ( )
inline

Definition at line 140 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ mark_as_full()

void MatrixType::mark_as_full ( )
inline

Definition at line 153 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ mark_as_lower_triangular()

void MatrixType::mark_as_lower_triangular ( )
inline

Definition at line 146 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ mark_as_not_dense()

void MatrixType::mark_as_not_dense ( )
inline

Definition at line 159 of file MatrixType.h.

◆ mark_as_permuted()

void MatrixType::mark_as_permuted ( const octave_idx_type  np,
const octave_idx_type p 
)

◆ mark_as_permuted_diagonal()

void MatrixType::mark_as_permuted_diagonal ( )
inline

Definition at line 142 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ mark_as_rectangular()

void MatrixType::mark_as_rectangular ( )
inline

Definition at line 155 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ mark_as_symmetric()

void MatrixType::mark_as_symmetric ( )

◆ mark_as_tridiagonal()

void MatrixType::mark_as_tridiagonal ( )
inline

Definition at line 148 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ mark_as_unpermuted()

void MatrixType::mark_as_unpermuted ( )

Definition at line 955 of file MatrixType.cc.

References Diagonal, Lower, Permuted_Diagonal, Permuted_Lower, Permuted_Upper, and Upper.

◆ mark_as_unsymmetric()

void MatrixType::mark_as_unsymmetric ( )

◆ mark_as_upper_triangular()

void MatrixType::mark_as_upper_triangular ( )
inline

Definition at line 144 of file MatrixType.h.

Referenced by Fmatrix_type().

◆ nlower()

int MatrixType::nlower ( ) const
inline

Definition at line 103 of file MatrixType.h.

◆ nupper()

int MatrixType::nupper ( ) const
inline

Definition at line 101 of file MatrixType.h.

◆ operator=()

MatrixType & MatrixType::operator= ( const MatrixType a)

Definition at line 625 of file MatrixType.cc.

◆ transpose()

MatrixType MatrixType::transpose ( ) const

Definition at line 973 of file MatrixType.cc.

References Banded, Lower, Permuted_Lower, Permuted_Upper, and Upper.

Referenced by SparseComplexMatrix::inverse(), SparseMatrix::inverse(), and xdiv().

◆ triangular_perm()

octave_idx_type* MatrixType::triangular_perm ( ) const
inline

Definition at line 136 of file MatrixType.h.

◆ type() [1/7]

◆ type() [2/7]

int MatrixType::type ( const ComplexMatrix a)

Definition at line 768 of file MatrixType.cc.

References Unknown.

◆ type() [3/7]

int MatrixType::type ( const FloatComplexMatrix a)

Definition at line 820 of file MatrixType.cc.

References Unknown.

◆ type() [4/7]

int MatrixType::type ( const FloatMatrix a)

Definition at line 794 of file MatrixType.cc.

References Unknown.

◆ type() [5/7]

int MatrixType::type ( const Matrix a)

Definition at line 742 of file MatrixType.cc.

References Unknown.

◆ type() [6/7]

int MatrixType::type ( const SparseComplexMatrix a)

Definition at line 710 of file MatrixType.cc.

References Unknown.

◆ type() [7/7]

int MatrixType::type ( const SparseMatrix a)

Definition at line 678 of file MatrixType.cc.

References Unknown.


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