GNU Octave  4.2.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Private Member Functions | Friends | List of all members
Matrix Class Reference

#include "dMatrix.h"

Inheritance diagram for Matrix:
Inheritance graph
[legend]
Collaboration diagram for Matrix:
Collaboration graph
[legend]

Public Types

typedef ColumnVector column_vector_type
 
typedef bool(* compare_fcn_type )(typename ref_param< double >::type, typename ref_param< double >::type)
 
typedef ComplexDiagMatrix complex_diag_matrix_type
 
typedef Complex complex_elt_type
 
typedef ComplexMatrix complex_matrix_type
 
typedef ref_param< double >::type crefT
 
typedef double element_type
 
typedef ColumnVector real_column_vector_type
 
typedef DiagMatrix real_diag_matrix_type
 
typedef double real_elt_type
 
typedef Matrix real_matrix_type
 
typedef RowVector real_row_vector_type
 
typedef RowVector row_vector_type
 
typedef octave_idx_type size_type
 Used for operator(), and returned by numel() and size() (beware: signed integer) More...
 
typedef void(* solve_singularity_handler )(double rcon)
 
typedef double value_type
 

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<typename U >
 Matrix (const MArray< U > &a)
 
template<typename U >
 Matrix (const Array< U > &a)
 
 Matrix (const RowVector &rv)
 
 Matrix (const ColumnVector &cv)
 
 Matrix (const DiagMatrix &a)
 
 Matrix (const MDiagArray2< double > &a)
 
 Matrix (const DiagArray2< double > &a)
 
 Matrix (const PermMatrix &a)
 
 Matrix (const boolMatrix &a)
 
 Matrix (const charMatrix &a)
 
Matrix abs (void) const
 
boolMatrix all (int dim=-1) const
 
bool all_elements_are_int_or_inf_or_nan (void) const
 
bool all_elements_are_zero (void) const
 
bool all_integers (double &max_val, double &min_val) const
 
bool all_integers (void) const
 
boolMatrix any (int dim=-1) const
 
bool any_element_is_inf_or_nan (void) const
 
bool any_element_is_nan (void) const
 
bool any_element_is_negative (bool=false) const
 
bool any_element_is_positive (bool=false) const
 
bool any_element_not_one_or_zero (void) const
 
Matrix append (const Matrix &a) const
 
Matrix append (const RowVector &a) const
 
Matrix append (const ColumnVector &a) const
 
Matrix append (const DiagMatrix &a) const
 
Array< doubleas_column (void) const
 Return the array as a column vector. More...
 
Array< doubleas_matrix (void) const
 Return the array as a matrix. More...
 
Array< doubleas_row (void) const
 Return the array as a row vector. More...
 
size_t byte_size (void) const
 
NDArraychangesign (void)
 
doublecheckelem (octave_idx_type n)
 
doublecheckelem (octave_idx_type i, octave_idx_type j)
 
doublecheckelem (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 
doublecheckelem (const Array< octave_idx_type > &ra_idx)
 
crefT checkelem (octave_idx_type n) const
 
crefT checkelem (octave_idx_type i, octave_idx_type j) const
 
crefT checkelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 
crefT checkelem (const Array< octave_idx_type > &ra_idx) const
 
void clear (void)
 
void clear (const dim_vector &dv)
 
void clear (octave_idx_type r, octave_idx_type c)
 
ColumnVector column (octave_idx_type i) const
 
RowVector column_max (void) const
 
RowVector column_max (Array< octave_idx_type > &index) const
 
RowVector column_min (void) const
 
RowVector column_min (Array< octave_idx_type > &index) const
 
octave_idx_type compute_index (octave_idx_type i, octave_idx_type j) const
 
octave_idx_type compute_index (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 
octave_idx_type compute_index (const Array< octave_idx_type > &ra_idx) const
 
octave_idx_type compute_index_unchecked (const Array< octave_idx_type > &ra_idx) const
 
NDArray concat (const NDArray &rb, const Array< octave_idx_type > &ra_idx)
 
ComplexNDArray concat (const ComplexNDArray &rb, const Array< octave_idx_type > &ra_idx)
 
charNDArray concat (const charNDArray &rb, const Array< octave_idx_type > &ra_idx)
 
NDArray cummax (int dim=-1) const
 
NDArray cummax (Array< octave_idx_type > &index, int dim=-1) const
 
NDArray cummin (int dim=-1) const
 
NDArray cummin (Array< octave_idx_type > &index, int dim=-1) const
 
Matrix cumprod (int dim=-1) const
 
Matrix cumsum (int dim=-1) const
 
const doubledata (void) const
 
DET determinant (void) const
 
DET determinant (octave_idx_type &info) const
 
DET determinant (octave_idx_type &info, double &rcon, bool calc_cond=true) const
 
DET determinant (MatrixType &mattype, octave_idx_type &info, double &rcon, bool calc_cond=true) const
 
Matrix diag (octave_idx_type k=0) const
 
DiagMatrix diag (octave_idx_type m, octave_idx_type n) const
 
NDArray diff (octave_idx_type order=1, int dim=-1) const
 
const dim_vectordims (void) const
 Return a const-reference so that dims ()(i) works efficiently. More...
 
doubleelem (octave_idx_type n)
 
doubleelem (octave_idx_type i, octave_idx_type j)
 
doubleelem (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 
doubleelem (const Array< octave_idx_type > &ra_idx)
 
crefT elem (octave_idx_type n) const
 
crefT elem (octave_idx_type i, octave_idx_type j) const
 
crefT elem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 
crefT elem (const Array< octave_idx_type > &ra_idx) 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
 
Matrixfill (double val)
 
Matrixfill (double val, octave_idx_type r1, octave_idx_type c1, octave_idx_type r2, octave_idx_type c2)
 
void fill (const double &val)
 
Array< octave_idx_typefind (octave_idx_type n=-1, bool backward=false) const
 Find indices of (at most n) nonzero elements. More...
 
const doublefortran_vec (void) const
 
doublefortran_vec (void)
 
ComplexNDArray fourier (int dim=1) const
 
ComplexMatrix fourier (void) const
 
ComplexMatrix fourier2d (void) const
 
ComplexNDArray fourierNd (void) const
 
MArray< doublehermitian (double(*fcn)(const double &)=0) const
 
Matrix hermitian (void) const
 
void idx_add_nd (const idx_vector &idx, const MArray< double > &vals, int dim=-1)
 
void idx_max (const idx_vector &idx, const MArray< double > &vals)
 
void idx_min (const idx_vector &idx, const MArray< double > &vals)
 
ComplexNDArray ifourier (int dim=1) const
 
ComplexMatrix ifourier (void) const
 
ComplexMatrix ifourier2d (void) const
 
ComplexNDArray ifourierNd (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)
 
NDArrayinsert (const NDArray &a, octave_idx_type r, octave_idx_type c)
 
NDArrayinsert (const NDArray &a, const Array< octave_idx_type > &ra_idx)
 
Array< double > & insert (const Array< double > &a, const Array< octave_idx_type > &idx)
 Insert an array into another at a specified position. More...
 
Array< double > & insert (const Array< double > &a, octave_idx_type r, octave_idx_type c)
 This is just a special case for idx = [r c 0 ...]. More...
 
Matrix inverse (void) const
 
Matrix inverse (octave_idx_type &info) const
 
Matrix inverse (octave_idx_type &info, double &rcon, bool force=false, bool calc_cond=true) 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, bool force=false, bool calc_cond=true) const
 
MArray< doubleipermute (const Array< octave_idx_type > &vec) const
 
bool is_empty (void) const
 
bool is_shared (void)
 
sortmode is_sorted (sortmode mode=UNSORTED) const
 Ordering is auto-detected or can be specified. More...
 
sortmode is_sorted_rows (sortmode mode=UNSORTED) const
 Ordering is auto-detected or can be specified. More...
 
bool is_square (void) const
 
bool is_symmetric (void) const
 
bool is_vector (void) const
 
boolNDArray isfinite (void) const
 
boolNDArray isinf (void) const
 
boolNDArray isnan (void) const
 
Array< doublelinear_slice (octave_idx_type lo, octave_idx_type up) const
 Extract a slice from this array as a column vector: A(:)(lo+1:up). More...
 
octave_idx_type lookup (const double &value, sortmode mode=UNSORTED) const
 Do a binary lookup in a sorted array. More...
 
Array< octave_idx_typelookup (const Array< double > &values, sortmode mode=UNSORTED) const
 Ditto, but for an array of values, specializing on the case when values are sorted. More...
 
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
 
void make_unique (void)
 
Array< U > map (F fcn) const
 Apply function fcn to each element of the Array<T>. More...
 
NDArray max (int dim=-1) const
 
NDArray max (Array< octave_idx_type > &index, int dim=-1) const
 
void maybe_economize (void)
 
void * mex_get_data (void) const
 Give a pointer to the data in mex format. More...
 
NDArray min (int dim=-1) const
 
NDArray min (Array< octave_idx_type > &index, int dim=-1) const
 
int ndims (void) const
 
octave_idx_type nnz (void) const
 Count nonzero elements. More...
 
Array< doublenth_element (const idx_vector &n, int dim=0) const
 Returns the n-th element in increasing order, using the same ordering as used for sort. More...
 
boolNDArray operator! (void) const
 
bool operator!= (const Matrix &a) const
 
doubleoperator() (octave_idx_type n)
 
doubleoperator() (octave_idx_type i, octave_idx_type j)
 
doubleoperator() (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 
doubleoperator() (const Array< octave_idx_type > &ra_idx)
 
crefT operator() (octave_idx_type n) const
 
crefT operator() (octave_idx_type i, octave_idx_type j) const
 
crefT operator() (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 
crefT operator() (const Array< octave_idx_type > &ra_idx) const
 
Matrixoperator+= (const DiagMatrix &a)
 
Matrixoperator-= (const DiagMatrix &a)
 
bool operator== (const Matrix &a) const
 
bool optimize_dimensions (const dim_vector &dv)
 Returns true if this->dims () == dv, and if so, replaces this->dimensions by a shallow copy of dv. More...
 
Array< doublepage (octave_idx_type k) const
 Extract page: A(:,:,k+1). More...
 
MArray< doublepermute (const Array< octave_idx_type > &vec, bool inv=false) const
 
void print_info (std::ostream &os, const std::string &prefix) const
 
Matrix prod (int dim=-1) const
 
Matrix pseudo_inverse (double tol=0.0) const
 
double rcond (void) const
 
double rcond (MatrixType &mattype) const
 
MArray< doublereshape (const dim_vector &new_dims) const
 
Array< doublereshape (octave_idx_type nr, octave_idx_type nc) const
 
void resize (octave_idx_type nr, octave_idx_type nc, double rfv=0)
 
virtual double resize_fill_value (void) const
 
RowVector row (octave_idx_type i) const
 
ColumnVector row_max (void) const
 
ColumnVector row_max (Array< octave_idx_type > &index) const
 
ColumnVector row_min (void) const
 
ColumnVector row_min (Array< octave_idx_type > &index) const
 
size_type size (const size_type d) const
 Size of the specified dimension. More...
 
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
 
Array< doublesort (int dim=0, sortmode mode=ASCENDING) const
 
Array< doublesort (Array< octave_idx_type > &sidx, int dim=0, sortmode mode=ASCENDING) const
 
Array< octave_idx_typesort_rows_idx (sortmode mode=ASCENDING) const
 Sort by rows returns only indices. More...
 
NDArray squeeze (void) 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 sum (int dim=-1) const
 
Matrix sumsq (int dim=-1) const
 
bool test (F fcn) const
 Generic any/all test functionality with arbitrary predicate. More...
 
bool too_large_for_float (void) const
 
Matrix transpose (void) const
 
doublexelem (octave_idx_type n)
 
crefT xelem (octave_idx_type n) const
 
doublexelem (octave_idx_type i, octave_idx_type j)
 
crefT xelem (octave_idx_type i, octave_idx_type j) const
 
doublexelem (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 
crefT xelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 
doublexelem (const Array< octave_idx_type > &ra_idx)
 
crefT xelem (const Array< octave_idx_type > &ra_idx) const
 
NDArray xsum (int dim=-1) const
 
void idx_add (const idx_vector &idx, doubleval)
 Performs indexed accumulative addition. More...
 
void idx_add (const idx_vector &idx, const MArray< double > &vals)
 
octave_idx_type capacity (void) const
 Number of elements in the array. More...
 
octave_idx_type length (void) const
 Number of elements in the array. More...
 
octave_idx_type nelem (void) const
 Number of elements in the array. More...
 
octave_idx_type numel (void) const
 Number of elements in the array. More...
 
First dimension

Get the first dimension of the array (number of rows)

octave_idx_type dim1 (void) const
 
octave_idx_type rows (void) const
 
Second dimension

Get the second dimension of the array (number of columns)

octave_idx_type dim2 (void) const
 
octave_idx_type cols (void) const
 
octave_idx_type columns (void) const
 
Third dimension

Get the third dimension of the array (number of pages)

octave_idx_type dim3 (void) const
 
octave_idx_type pages (void) const
 
Array< doubleindex (const idx_vector &i) const
 Indexing without resizing. More...
 
Array< doubleindex (const idx_vector &i, const idx_vector &j) const
 
Array< doubleindex (const Array< idx_vector > &ia) const
 
Array< doubleindex (const idx_vector &i, bool resize_ok, const double &rfv) const
 Indexing with possible resizing and fill. More...
 
Array< doubleindex (const idx_vector &i, bool resize_ok) const
 
Array< doubleindex (const idx_vector &i, const idx_vector &j, bool resize_ok, const double &rfv) const
 
Array< doubleindex (const idx_vector &i, const idx_vector &j, bool resize_ok) const
 
Array< doubleindex (const Array< idx_vector > &ia, bool resize_ok, const double &rfv) const
 
Array< doubleindex (const Array< idx_vector > &ia, bool resize_ok) const
 
void resize2 (octave_idx_type nr, octave_idx_type nc, const double &rfv)
 Resizing (with fill). More...
 
void resize2 (octave_idx_type nr, octave_idx_type nc)
 
void resize1 (octave_idx_type n, const double &rfv)
 
void resize1 (octave_idx_type n)
 
void resize (const dim_vector &dv, const double &rfv)
 
void resize (const dim_vector &dv)
 
void assign (const idx_vector &i, const Array< double > &rhs, const double &rfv)
 Indexed assignment (always with resize & fill). More...
 
void assign (const idx_vector &i, const Array< double > &rhs)
 
void assign (const idx_vector &i, const idx_vector &j, const Array< double > &rhs, const double &rfv)
 
void assign (const idx_vector &i, const idx_vector &j, const Array< double > &rhs)
 
void assign (const Array< idx_vector > &ia, const Array< double > &rhs, const double &rfv)
 
void assign (const Array< idx_vector > &ia, const Array< double > &rhs)
 
void delete_elements (const idx_vector &i)
 Deleting elements. More...
 
void delete_elements (int dim, const idx_vector &i)
 A(:,...,I,...,:) = [] (>= 2 subscripts, one of them is non-colon) More...
 
void delete_elements (const Array< idx_vector > &ia)
 Dispatcher to the above two. More...
 
Array< U > map (U(&fcn)(double)) const
 Overloads for function references. More...
 
Array< U > map (U(&fcn)(const double &)) const
 
bool test_any (F fcn) const
 Simpler calls. More...
 
bool test_all (F fcn) const
 
bool test_any (bool(&fcn)(double)) const
 Overloads for function references. More...
 
bool test_any (bool(&fcn)(const double &)) const
 
bool test_all (bool(&fcn)(double)) const
 
bool test_all (bool(&fcn)(const double &)) const
 
intjit_ref_count (void)
 WARNING: Only call these functions from jit. More...
 
doublejit_slice_data (void) const
 
octave_idx_typejit_dimensions (void) const
 
void * jit_array_rep (void) const
 

Static Public Member Functions

static Array< doublecat (int dim, octave_idx_type n, const Array< double > *array_list)
 Concatenation along a specified (0-based) dimension, equivalent to cat(). More...
 
static octave_idx_type compute_index (Array< octave_idx_type > &ra_idx, const dim_vector &dimensions)
 
static void increment_index (Array< octave_idx_type > &ra_idx, const dim_vector &dimensions, int start_dimension=0)
 

Protected Attributes

dim_vector dimensions
 
Array< double >::ArrayRep * rep
 
doubleslice_data
 
octave_idx_type slice_len
 

Private Member Functions

Matrix finverse (MatrixType &mattype, octave_idx_type &info, double &rcon, bool force, bool calc_cond) const
 
Matrix fsolve (MatrixType &typ, const Matrix &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, bool calc_cond=false) const
 
Matrix ltsolve (MatrixType &typ, const Matrix &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, bool calc_cond=false, blas_trans_type transt=blas_no_trans) const
 
Matrix tinverse (MatrixType &mattype, octave_idx_type &info, double &rcon, bool force, bool calc_cond) const
 
Matrix utsolve (MatrixType &typ, const Matrix &b, octave_idx_type &info, double &rcon, solve_singularity_handler sing_handler, bool calc_cond=false, blas_trans_type transt=blas_no_trans) const
 

Friends

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

Detailed Description

Definition at line 37 of file dMatrix.h.

Member Typedef Documentation

Definition at line 43 of file dMatrix.h.

typedef bool(* Array< double >::compare_fcn_type)(typename ref_param< double >::type, typename ref_param< double >::type)
inherited

Definition at line 209 of file Array.h.

Definition at line 53 of file dMatrix.h.

Definition at line 56 of file dMatrix.h.

Definition at line 50 of file dMatrix.h.

typedef ref_param<double >::type Array< double >::crefT
inherited

Definition at line 207 of file Array.h.

typedef double Array< double >::element_type
inherited

Definition at line 199 of file Array.h.

Definition at line 46 of file dMatrix.h.

Definition at line 52 of file dMatrix.h.

Definition at line 55 of file dMatrix.h.

Definition at line 49 of file dMatrix.h.

Definition at line 47 of file dMatrix.h.

Definition at line 44 of file dMatrix.h.

typedef octave_idx_type Array< double >::size_type
inherited

Used for operator(), and returned by numel() and size() (beware: signed integer)

Definition at line 205 of file Array.h.

typedef void(* Matrix::solve_singularity_handler)(double rcon)

Definition at line 58 of file dMatrix.h.

typedef double Array< double >::value_type
inherited

Definition at line 201 of file Array.h.

Constructor & Destructor Documentation

Matrix::Matrix ( void  )
inline

Definition at line 60 of file dMatrix.h.

Referenced by inverse(), lssolve(), and pseudo_inverse().

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

Definition at line 62 of file dMatrix.h.

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

Definition at line 65 of file dMatrix.h.

Matrix::Matrix ( const dim_vector dv)
inline

Definition at line 68 of file dMatrix.h.

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

Definition at line 70 of file dMatrix.h.

Matrix::Matrix ( const Matrix a)
inline

Definition at line 73 of file dMatrix.h.

template<typename U >
Matrix::Matrix ( const MArray< U > &  a)
inline

Definition at line 76 of file dMatrix.h.

template<typename U >
Matrix::Matrix ( const Array< U > &  a)
inline

Definition at line 79 of file dMatrix.h.

Matrix::Matrix ( const RowVector rv)
explicit

Definition at line 69 of file dMatrix.cc.

Matrix::Matrix ( const ColumnVector cv)
explicit

Definition at line 73 of file dMatrix.cc.

Matrix::Matrix ( const DiagMatrix a)
explicit
Matrix::Matrix ( const MDiagArray2< double > &  a)
explicit
Matrix::Matrix ( const DiagArray2< double > &  a)
explicit
Matrix::Matrix ( const PermMatrix a)
explicit
Matrix::Matrix ( const boolMatrix a)
explicit

Definition at line 109 of file dMatrix.cc.

Matrix::Matrix ( const charMatrix a)
explicit

Member Function Documentation

Matrix Matrix::abs ( void  ) const

Definition at line 2465 of file dMatrix.cc.

References NDArray::abs().

Referenced by SparseMatrix::bsolve(), finverse(), fsolve(), rcond(), and set_format().

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

Definition at line 2423 of file dMatrix.cc.

References NDArray::all().

Referenced by octave_range::all(), and octave_range::is_true().

bool NDArray::all_elements_are_int_or_inf_or_nan ( void  ) const
inherited

Definition at line 579 of file dNDArray.cc.

References Array< double >::test_all(), and xis_int_or_inf_or_nan().

Referenced by set_format().

bool NDArray::all_elements_are_zero ( void  ) const
inherited

Definition at line 573 of file dNDArray.cc.

References Array< double >::test_all(), and xis_zero().

bool NDArray::all_integers ( double max_val,
double min_val 
) const
inherited
bool NDArray::all_integers ( void  ) const
inherited

Definition at line 618 of file dNDArray.cc.

References octave::math::isinteger(), and Array< double >::test_all().

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

Definition at line 2429 of file dMatrix.cc.

References NDArray::any().

Referenced by octave_range::any().

bool NDArray::any_element_is_inf_or_nan ( void  ) const
inherited

Definition at line 561 of file dNDArray.cc.

References mx_inline_all_finite().

Referenced by Fsvd(), EIG::init(), set_format(), and patch::properties::update_data().

bool NDArray::any_element_is_nan ( void  ) const
inherited
bool NDArray::any_element_is_negative ( bool  neg_zero = false) const
inherited
bool NDArray::any_element_is_positive ( bool  neg_zero = false) const
inherited
bool NDArray::any_element_not_one_or_zero ( void  ) const
inherited
Matrix Matrix::append ( const Matrix a) const
Matrix Matrix::append ( const RowVector a) const
Matrix Matrix::append ( const ColumnVector a) const
Matrix Matrix::append ( const DiagMatrix a) const
Array<double > Array< double >::as_column ( void  ) const
inlineinherited

Return the array as a column vector.

Definition at line 367 of file Array.h.

Array<double > Array< double >::as_matrix ( void  ) const
inlineinherited

Return the array as a matrix.

Definition at line 387 of file Array.h.

Array<double > Array< double >::as_row ( void  ) const
inlineinherited

Return the array as a row vector.

Definition at line 377 of file Array.h.

void Array< double >::assign ( const idx_vector i,
const Array< double > &  rhs,
const double rfv 
)
inherited

Indexed assignment (always with resize & fill).

void Array< double >::assign ( const idx_vector i,
const Array< double > &  rhs 
)
inlineinherited

Definition at line 649 of file Array.h.

void Array< double >::assign ( const idx_vector i,
const idx_vector j,
const Array< double > &  rhs,
const double rfv 
)
inherited
void Array< double >::assign ( const idx_vector i,
const idx_vector j,
const Array< double > &  rhs 
)
inlineinherited

Definition at line 656 of file Array.h.

void Array< double >::assign ( const Array< idx_vector > &  ia,
const Array< double > &  rhs,
const double rfv 
)
inherited
void Array< double >::assign ( const Array< idx_vector > &  ia,
const Array< double > &  rhs 
)
inlineinherited

Definition at line 662 of file Array.h.

size_t Array< double >::byte_size ( void  ) const
inlineinherited

Definition at line 435 of file Array.h.

octave_idx_type Array< double >::capacity ( void  ) const
inlineinherited

Number of elements in the array.

Synonymous with numel().

Note
This method is deprecated in favour of numel().

Definition at line 341 of file Array.h.

static Array<double > Array< double >::cat ( int  dim,
octave_idx_type  n,
const Array< double > *  array_list 
)
staticinherited

Concatenation along a specified (0-based) dimension, equivalent to cat().

dim = -1 corresponds to dim = 0 and dim = -2 corresponds to dim = 1, but apply the looser matching rules of vertcat/horzcat.

NDArray& NDArray::changesign ( void  )
inlineinherited

Definition at line 161 of file dNDArray.h.

References MArray< T >::changesign().

double & Array< double >::checkelem ( octave_idx_type  n)
inherited
double & Array< double >::checkelem ( octave_idx_type  i,
octave_idx_type  j 
)
inherited
double & Array< double >::checkelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inherited
double & Array< double >::checkelem ( const Array< octave_idx_type > &  ra_idx)
inherited
crefT Array< double >::checkelem ( octave_idx_type  n) const
inherited
crefT Array< double >::checkelem ( octave_idx_type  i,
octave_idx_type  j 
) const
inherited
crefT Array< double >::checkelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inherited
crefT Array< double >::checkelem ( const Array< octave_idx_type > &  ra_idx) const
inherited
void Array< double >::clear ( void  )
inherited
void Array< double >::clear ( const dim_vector dv)
inherited
void Array< double >::clear ( octave_idx_type  r,
octave_idx_type  c 
)
inlineinherited

Definition at line 332 of file Array.h.

octave_idx_type Array< double >::cols ( void  ) const
inlineinherited
ColumnVector Matrix::column ( octave_idx_type  i) const
RowVector Matrix::column_max ( void  ) const

Definition at line 2658 of file dMatrix.cc.

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

Definition at line 2603 of file dMatrix.cc.

RowVector Matrix::column_min ( Array< octave_idx_type > &  index) const
octave_idx_type Array< double >::columns ( void  ) const
inlineinherited

Definition at line 410 of file Array.h.

Referenced by inverse().

octave_idx_type NDArray::compute_index ( Array< octave_idx_type > &  ra_idx,
const dim_vector dimensions 
)
staticinherited

Definition at line 839 of file dNDArray.cc.

References compute_index().

octave_idx_type Array< double >::compute_index ( octave_idx_type  i,
octave_idx_type  j 
) const
inherited
octave_idx_type Array< double >::compute_index ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inherited
octave_idx_type Array< double >::compute_index ( const Array< octave_idx_type > &  ra_idx) const
inherited
octave_idx_type Array< double >::compute_index_unchecked ( const Array< octave_idx_type > &  ra_idx) const
inlineinherited

Definition at line 449 of file Array.h.

NDArray NDArray::concat ( const NDArray rb,
const Array< octave_idx_type > &  ra_idx 
)
inherited

Definition at line 734 of file dNDArray.cc.

References NDArray::insert(), and Array< T >::numel().

ComplexNDArray NDArray::concat ( const ComplexNDArray rb,
const Array< octave_idx_type > &  ra_idx 
)
inherited

Definition at line 742 of file dNDArray.cc.

References ComplexNDArray::insert(), Array< T >::numel(), and retval.

charNDArray NDArray::concat ( const charNDArray rb,
const Array< octave_idx_type > &  ra_idx 
)
inherited
NDArray NDArray::cummax ( int  dim = -1) const
inherited

Definition at line 704 of file dNDArray.cc.

References mx_inline_cummax().

NDArray NDArray::cummax ( Array< octave_idx_type > &  index,
int  dim = -1 
) const
inherited

Definition at line 710 of file dNDArray.cc.

References mx_inline_cummax().

NDArray NDArray::cummin ( int  dim = -1) const
inherited

Definition at line 716 of file dNDArray.cc.

References mx_inline_cummin().

NDArray NDArray::cummin ( Array< octave_idx_type > &  index,
int  dim = -1 
) const
inherited

Definition at line 722 of file dNDArray.cc.

References mx_inline_cummin().

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

Definition at line 2435 of file dMatrix.cc.

References NDArray::cumprod().

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

Definition at line 2441 of file dMatrix.cc.

References NDArray::cumsum().

const double * Array< double >::data ( void  ) const
inlineinherited

Definition at line 582 of file Array.h.

Referenced by RowVector::operator==(), ColumnVector::operator==(), and operator==().

void Array< double >::delete_elements ( const idx_vector i)
inherited

Deleting elements.

A(I) = [] (with a single subscript)

void Array< double >::delete_elements ( int  dim,
const idx_vector i 
)
inherited

A(:,...,I,...,:) = [] (>= 2 subscripts, one of them is non-colon)

void Array< double >::delete_elements ( const Array< idx_vector > &  ia)
inherited

Dispatcher to the above two.

DET Matrix::determinant ( void  ) const

Definition at line 999 of file dMatrix.cc.

Referenced by determinant(), and Fdet().

DET Matrix::determinant ( octave_idx_type info) const

Definition at line 1007 of file dMatrix.cc.

References determinant().

DET Matrix::determinant ( octave_idx_type info,
double rcon,
bool  calc_cond = true 
) const

Definition at line 1014 of file dMatrix.cc.

References determinant().

DET Matrix::determinant ( MatrixType mattype,
octave_idx_type info,
double rcon,
bool  calc_cond = true 
) const
Matrix Matrix::diag ( octave_idx_type  k = 0) const

Definition at line 2471 of file dMatrix.cc.

References NDArray::diag().

Referenced by Range::diag(), octave_range::diag(), octave_matrix::diag(), and do_sqrtm().

DiagMatrix Matrix::diag ( octave_idx_type  m,
octave_idx_type  n 
) const
NDArray NDArray::diff ( octave_idx_type  order = 1,
int  dim = -1 
) const
inherited

Definition at line 728 of file dNDArray.cc.

References mx_inline_diff().

octave_idx_type Array< double >::dim1 ( void  ) const
inlineinherited

Definition at line 400 of file Array.h.

octave_idx_type Array< double >::dim2 ( void  ) const
inlineinherited

Definition at line 408 of file Array.h.

octave_idx_type Array< double >::dim3 ( void  ) const
inlineinherited

Definition at line 417 of file Array.h.

const dim_vector& Array< double >::dims ( void  ) const
inlineinherited

Return a const-reference so that dims ()(i) works efficiently.

Definition at line 439 of file Array.h.

Referenced by NDArray::concat(), NDArray::fourier(), NDArray::fourier2d(), NDArray::fourierNd(), NDArray::ifourier(), NDArray::ifourier2d(), and NDArray::ifourierNd().

double & Array< double >::elem ( octave_idx_type  n)
inlineinherited
double & Array< double >::elem ( octave_idx_type  i,
octave_idx_type  j 
)
inlineinherited

Definition at line 488 of file Array.h.

double & Array< double >::elem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inlineinherited

Definition at line 490 of file Array.h.

double & Array< double >::elem ( const Array< octave_idx_type > &  ra_idx)
inlineinherited

Definition at line 493 of file Array.h.

crefT Array< double >::elem ( octave_idx_type  n) const
inlineinherited

Definition at line 519 of file Array.h.

crefT Array< double >::elem ( octave_idx_type  i,
octave_idx_type  j 
) const
inlineinherited

Definition at line 521 of file Array.h.

crefT Array< double >::elem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inlineinherited

Definition at line 524 of file Array.h.

crefT Array< double >::elem ( const Array< octave_idx_type > &  ra_idx) const
inlineinherited

Definition at line 527 of file Array.h.

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)
Matrix & Matrix::fill ( double  val,
octave_idx_type  r1,
octave_idx_type  c1,
octave_idx_type  r2,
octave_idx_type  c2 
)
void Array< double >::fill ( const double val)
inherited
Array<octave_idx_type> Array< double >::find ( octave_idx_type  n = -1,
bool  backward = false 
) const
inherited

Find indices of (at most n) nonzero elements.

If n is specified, backward specifies search from backward.

Matrix Matrix::finverse ( MatrixType mattype,
octave_idx_type info,
double rcon,
bool  force,
bool  calc_cond 
) const
private
const double * Array< double >::fortran_vec ( void  ) const
inlineinherited
double * Array< double >::fortran_vec ( void  )
inherited
ComplexNDArray NDArray::fourier ( int  dim = 1) const
inherited
ComplexMatrix Matrix::fourier ( void  ) const
ComplexMatrix Matrix::fourier2d ( void  ) const
ComplexNDArray NDArray::fourierNd ( void  ) const
inherited
Matrix Matrix::fsolve ( MatrixType typ,
const Matrix b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
bool  calc_cond = false 
) const
private
MArray<double > MArray< double >::hermitian ( double (*)(const double &)  fcn = 0) const
inlineinherited

Definition at line 106 of file MArray.h.

Matrix Matrix::hermitian ( void  ) const
inline

Definition at line 128 of file dMatrix.h.

References MArray< T >::transpose().

void MArray< double >::idx_add ( const idx_vector idx,
double  val 
)
inherited

Performs indexed accumulative addition.

void MArray< double >::idx_add ( const idx_vector idx,
const MArray< double > &  vals 
)
inherited
void MArray< double >::idx_add_nd ( const idx_vector idx,
const MArray< double > &  vals,
int  dim = -1 
)
inherited
void MArray< double >::idx_max ( const idx_vector idx,
const MArray< double > &  vals 
)
inherited
void MArray< double >::idx_min ( const idx_vector idx,
const MArray< double > &  vals 
)
inherited
ComplexNDArray NDArray::ifourier ( int  dim = 1) const
inherited
ComplexMatrix Matrix::ifourier ( void  ) const
ComplexMatrix Matrix::ifourier2d ( void  ) const
ComplexNDArray NDArray::ifourierNd ( void  ) const
inherited
void NDArray::increment_index ( Array< octave_idx_type > &  ra_idx,
const dim_vector dimensions,
int  start_dimension = 0 
)
staticinherited

Definition at line 831 of file dNDArray.cc.

Array<double > Array< double >::index ( const idx_vector i) const
inherited

Indexing without resizing.

Referenced by column(), extract(), extract_n(), and row().

Array<double > Array< double >::index ( const idx_vector i,
const idx_vector j 
) const
inherited
Array<double > Array< double >::index ( const Array< idx_vector > &  ia) const
inherited
Array<double > Array< double >::index ( const idx_vector i,
bool  resize_ok,
const double rfv 
) const
inherited

Indexing with possible resizing and fill.

Array<double > Array< double >::index ( const idx_vector i,
bool  resize_ok 
) const
inlineinherited

Definition at line 625 of file Array.h.

Array<double > Array< double >::index ( const idx_vector i,
const idx_vector j,
bool  resize_ok,
const double rfv 
) const
inherited
Array<double > Array< double >::index ( const idx_vector i,
const idx_vector j,
bool  resize_ok 
) const
inlineinherited

Definition at line 632 of file Array.h.

Array<double > Array< double >::index ( const Array< idx_vector > &  ia,
bool  resize_ok,
const double rfv 
) const
inherited
Array<double > Array< double >::index ( const Array< idx_vector > &  ia,
bool  resize_ok 
) const
inlineinherited

Definition at line 640 of file Array.h.

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

Definition at line 153 of file dMatrix.cc.

References Array< T >::insert().

Referenced by append(), and stack().

Matrix & Matrix::insert ( const RowVector 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 DiagMatrix a,
octave_idx_type  r,
octave_idx_type  c 
)
NDArray & NDArray::insert ( const NDArray a,
octave_idx_type  r,
octave_idx_type  c 
)
inherited

Definition at line 793 of file dNDArray.cc.

References Array< T >::insert().

Referenced by NDArray::concat().

NDArray & NDArray::insert ( const NDArray a,
const Array< octave_idx_type > &  ra_idx 
)
inherited

Definition at line 800 of file dNDArray.cc.

References Array< T >::insert().

Array<double >& Array< double >::insert ( const Array< double > &  a,
const Array< octave_idx_type > &  idx 
)
inherited

Insert an array into another at a specified position.

If size (a) is [d1 d2 ... dN] and idx is [i1 i2 ... iN], this method is equivalent to x(i1:i1+d1-1, i2:i2+d2-1, ... , iN:iN+dN-1) = a.

Array<double >& Array< double >::insert ( const Array< double > &  a,
octave_idx_type  r,
octave_idx_type  c 
)
inherited

This is just a special case for idx = [r c 0 ...].

Matrix Matrix::inverse ( void  ) const

Definition at line 429 of file dMatrix.cc.

Referenced by Finv(), inverse(), pseudo_inverse(), axes::properties::update_camera(), and xpow().

Matrix Matrix::inverse ( octave_idx_type info) const

Definition at line 438 of file dMatrix.cc.

References inverse().

Matrix Matrix::inverse ( octave_idx_type info,
double rcon,
bool  force = false,
bool  calc_cond = true 
) const

Definition at line 446 of file dMatrix.cc.

References inverse().

Matrix Matrix::inverse ( MatrixType mattype) const

Definition at line 454 of file dMatrix.cc.

References inverse().

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

Definition at line 462 of file dMatrix.cc.

References inverse().

Matrix Matrix::inverse ( MatrixType mattype,
octave_idx_type info,
double rcon,
bool  force = false,
bool  calc_cond = true 
) const
MArray<double > MArray< double >::ipermute ( const Array< octave_idx_type > &  vec) const
inlineinherited

Definition at line 98 of file MArray.h.

bool Array< double >::is_empty ( void  ) const
inlineinherited

Definition at line 575 of file Array.h.

bool Array< double >::is_shared ( void  )
inlineinherited

Definition at line 588 of file Array.h.

OCTAVE_API sortmode Array< double >::is_sorted ( sortmode  mode = UNSORTED) const
inherited

Ordering is auto-detected or can be specified.

Definition at line 98 of file Array-d.cc.

References ASCENDING, Array< T >::data(), DESCENDING, octave::math::isnan(), mode, Array< T >::numel(), and UNSORTED.

sortmode Array< double >::is_sorted_rows ( sortmode  mode = UNSORTED) const
inherited

Ordering is auto-detected or can be specified.

bool Array< double >::is_square ( void  ) const
inlineinherited

Definition at line 573 of file Array.h.

Referenced by is_symmetric().

bool Matrix::is_symmetric ( void  ) const
bool Array< double >::is_vector ( void  ) const
inlineinherited

Definition at line 577 of file Array.h.

boolNDArray NDArray::isfinite ( void  ) const
inherited

Definition at line 825 of file dNDArray.cc.

boolNDArray NDArray::isinf ( void  ) const
inherited

Definition at line 819 of file dNDArray.cc.

boolNDArray NDArray::isnan ( void  ) const
inherited

Definition at line 813 of file dNDArray.cc.

void* Array< double >::jit_array_rep ( void  ) const
inlineinherited

Definition at line 850 of file Array.h.

octave_idx_type* Array< double >::jit_dimensions ( void  ) const
inlineinherited

Definition at line 848 of file Array.h.

int* Array< double >::jit_ref_count ( void  )
inlineinherited

WARNING: Only call these functions from jit.

Definition at line 844 of file Array.h.

double * Array< double >::jit_slice_data ( void  ) const
inlineinherited

Definition at line 846 of file Array.h.

octave_idx_type Array< double >::length ( void  ) const
inlineinherited

Number of elements in the array.

Synonymous with numel().

Note
This method is deprecated in favour of numel().
This is not the same as length() at the Octave interpreter. At the Octave interpreter, the function length() returns the length of the greatest dimension. This method returns the total number of elements.

Definition at line 354 of file Array.h.

Array<double > Array< double >::linear_slice ( octave_idx_type  lo,
octave_idx_type  up 
) const
inherited

Extract a slice from this array as a column vector: A(:)(lo+1:up).

Must be 0 <= lo && up <= numel. May be up < lo.

octave_idx_type Array< double >::lookup ( const double value,
sortmode  mode = UNSORTED 
) const
inherited

Do a binary lookup in a sorted array.

Must not contain NaNs. Mode can be specified or is auto-detected by comparing 1st and last element.

Array<octave_idx_type> Array< double >::lookup ( const Array< double > &  values,
sortmode  mode = UNSORTED 
) const
inherited

Ditto, but for an array of values, specializing on the case when values are sorted.

NaNs get the value N.

Matrix Matrix::lssolve ( const Matrix b) const

Definition at line 1991 of file dMatrix.cc.

Referenced by lssolve(), and solve().

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

Definition at line 2000 of file dMatrix.cc.

References lssolve().

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

Definition at line 2008 of file dMatrix.cc.

References lssolve().

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

Definition at line 2163 of file dMatrix.cc.

References ComplexMatrix::lssolve(), and tmp.

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

Definition at line 2173 of file dMatrix.cc.

References ComplexMatrix::lssolve(), and tmp.

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

Definition at line 2182 of file dMatrix.cc.

References ComplexMatrix::lssolve(), and tmp.

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

Definition at line 2191 of file dMatrix.cc.

References ComplexMatrix::lssolve(), and tmp.

ColumnVector Matrix::lssolve ( const ColumnVector b) const

Definition at line 2199 of file dMatrix.cc.

References lssolve().

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

Definition at line 2208 of file dMatrix.cc.

References lssolve().

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

Definition at line 2216 of file dMatrix.cc.

References lssolve().

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

Definition at line 2318 of file dMatrix.cc.

References ComplexMatrix::lssolve(), and tmp.

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

Definition at line 2328 of file dMatrix.cc.

References ComplexMatrix::lssolve(), and tmp.

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

Definition at line 2337 of file dMatrix.cc.

References ComplexMatrix::lssolve(), and tmp.

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

Definition at line 2346 of file dMatrix.cc.

References ComplexMatrix::lssolve(), and tmp.

Matrix Matrix::ltsolve ( MatrixType typ,
const Matrix b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
bool  calc_cond = false,
blas_trans_type  transt = blas_no_trans 
) const
private
void Array< double >::make_unique ( void  )
inlineinherited
Array<U> Array< double >::map ( F  fcn) const
inlineinherited

Apply function fcn to each element of the Array<T>.

This function is optimized with a manually unrolled loop.

Definition at line 760 of file Array.h.

Array<U> Array< double >::map ( U(&)(double fcn) const
inlineinherited

Overloads for function references.

Definition at line 792 of file Array.h.

Array<U> Array< double >::map ( U(&)(const double &)  fcn) const
inlineinherited

Definition at line 797 of file Array.h.

NDArray NDArray::max ( int  dim = -1) const
inherited

Definition at line 680 of file dNDArray.cc.

References mx_inline_max().

NDArray NDArray::max ( Array< octave_idx_type > &  index,
int  dim = -1 
) const
inherited

Definition at line 686 of file dNDArray.cc.

References mx_inline_max().

void Array< double >::maybe_economize ( void  )
inlineinherited

Definition at line 690 of file Array.h.

void* Array< double >::mex_get_data ( void  ) const
inlineinherited

Give a pointer to the data in mex format.

Unsafe. This function exists to support the MEX interface. You should not use it anywhere else.

Definition at line 706 of file Array.h.

NDArray NDArray::min ( int  dim = -1) const
inherited

Definition at line 692 of file dNDArray.cc.

References mx_inline_min().

NDArray NDArray::min ( Array< octave_idx_type > &  index,
int  dim = -1 
) const
inherited

Definition at line 698 of file dNDArray.cc.

References mx_inline_min().

int Array< double >::ndims ( void  ) const
inlineinherited

Definition at line 590 of file Array.h.

octave_idx_type Array< double >::nelem ( void  ) const
inlineinherited

Number of elements in the array.

Synonymous with numel().

Note
This method is deprecated in favour of numel().

Definition at line 360 of file Array.h.

octave_idx_type Array< double >::nnz ( void  ) const
inherited

Count nonzero elements.

Array<double > Array< double >::nth_element ( const idx_vector n,
int  dim = 0 
) const
inherited

Returns the n-th element in increasing order, using the same ordering as used for sort.

n can either be a scalar index or a contiguous range.

octave_idx_type Array< double >::numel ( void  ) const
inlineinherited
boolNDArray NDArray::operator! ( void  ) const
inherited
bool Matrix::operator!= ( const Matrix a) const

Definition at line 131 of file dMatrix.cc.

References a.

double & Array< double >::operator() ( octave_idx_type  n)
inlineinherited

Definition at line 505 of file Array.h.

double & Array< double >::operator() ( octave_idx_type  i,
octave_idx_type  j 
)
inlineinherited

Definition at line 506 of file Array.h.

double & Array< double >::operator() ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inlineinherited

Definition at line 507 of file Array.h.

double & Array< double >::operator() ( const Array< octave_idx_type > &  ra_idx)
inlineinherited

Definition at line 509 of file Array.h.

crefT Array< double >::operator() ( octave_idx_type  n) const
inlineinherited

Definition at line 540 of file Array.h.

crefT Array< double >::operator() ( octave_idx_type  i,
octave_idx_type  j 
) const
inlineinherited

Definition at line 541 of file Array.h.

crefT Array< double >::operator() ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inlineinherited

Definition at line 543 of file Array.h.

crefT Array< double >::operator() ( const Array< octave_idx_type > &  ra_idx) const
inlineinherited

Definition at line 546 of file Array.h.

Matrix & Matrix::operator+= ( const DiagMatrix a)
Matrix & Matrix::operator-= ( const DiagMatrix a)
bool Matrix::operator== ( const Matrix a) const
bool Array< double >::optimize_dimensions ( const dim_vector dv)
inherited

Returns true if this->dims () == dv, and if so, replaces this->dimensions by a shallow copy of dv.

This is useful for maintaining several arrays with supposedly equal dimensions (e.g. structs in the interpreter).

Array<double > Array< double >::page ( octave_idx_type  k) const
inherited

Extract page: A(:,:,k+1).

octave_idx_type Array< double >::pages ( void  ) const
inlineinherited

Definition at line 418 of file Array.h.

MArray<double > MArray< double >::permute ( const Array< octave_idx_type > &  vec,
bool  inv = false 
) const
inlineinherited

Definition at line 94 of file MArray.h.

void Array< double >::print_info ( std::ostream &  os,
const std::string prefix 
) const
inherited
Matrix Matrix::prod ( int  dim = -1) const

Definition at line 2447 of file dMatrix.cc.

References NDArray::prod().

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

Definition at line 1154 of file dMatrix.cc.

Referenced by Frcond().

double Matrix::rcond ( MatrixType mattype) const
MArray<double > MArray< double >::reshape ( const dim_vector new_dims) const
inlineinherited

Definition at line 91 of file MArray.h.

Array<double > Array< double >::reshape ( octave_idx_type  nr,
octave_idx_type  nc 
) const
inlineinherited

Definition at line 563 of file Array.h.

void Matrix::resize ( octave_idx_type  nr,
octave_idx_type  nc,
double  rfv = 0 
)
inline
void Array< double >::resize ( const dim_vector dv,
const double rfv 
)
inherited

Referenced by NDArray::NDArray().

void Array< double >::resize ( const dim_vector dv)
inlineinherited

Definition at line 615 of file Array.h.

void Array< double >::resize1 ( octave_idx_type  n,
const double rfv 
)
inherited
void Array< double >::resize1 ( octave_idx_type  n)
inlineinherited

Definition at line 612 of file Array.h.

void Array< double >::resize2 ( octave_idx_type  nr,
octave_idx_type  nc,
const double rfv 
)
inherited

Resizing (with fill).

void Array< double >::resize2 ( octave_idx_type  nr,
octave_idx_type  nc 
)
inlineinherited

Definition at line 606 of file Array.h.

virtual double Array< double >::resize_fill_value ( void  ) const
virtualinherited
RowVector Matrix::row ( octave_idx_type  i) const
ColumnVector Matrix::row_max ( void  ) const

Definition at line 2548 of file dMatrix.cc.

Referenced by axes::properties::update_camera(), and patch::properties::update_data().

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

Definition at line 2493 of file dMatrix.cc.

Referenced by axes::properties::update_camera().

ColumnVector Matrix::row_min ( Array< octave_idx_type > &  index) const
octave_idx_type Array< double >::rows ( void  ) const
inlineinherited
size_type Array< double >::size ( const size_type  d) const
inlineinherited

Size of the specified dimension.

Dimensions beyond the Array number of dimensions return 1 as those are implicit singleton dimensions.

Equivalent to Octave's size (A, DIM)

Definition at line 428 of file Array.h.

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

Definition at line 1684 of file dMatrix.cc.

Referenced by solve(), xdiv(), and xleftdiv().

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

Definition at line 1692 of file dMatrix.cc.

References solve().

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

Definition at line 1699 of file dMatrix.cc.

References solve().

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
ComplexMatrix Matrix::solve ( MatrixType typ,
const ComplexMatrix b 
) const

Definition at line 1740 of file dMatrix.cc.

References solve().

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

Definition at line 1748 of file dMatrix.cc.

References solve().

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

Definition at line 1756 of file dMatrix.cc.

References solve().

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

Definition at line 1794 of file dMatrix.cc.

References solve(), stack_complex_matrix(), tmp, and unstack_complex_matrix().

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

Definition at line 1804 of file dMatrix.cc.

References solve().

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

Definition at line 1811 of file dMatrix.cc.

References solve().

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

Definition at line 1819 of file dMatrix.cc.

References solve().

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

Definition at line 1826 of file dMatrix.cc.

References column(), solve(), and tmp.

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

Definition at line 1836 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1843 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1851 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1859 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

Matrix Matrix::solve ( const Matrix b) const

Definition at line 1869 of file dMatrix.cc.

References solve().

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

Definition at line 1877 of file dMatrix.cc.

References solve().

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

Definition at line 1884 of file dMatrix.cc.

References solve().

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

Definition at line 1890 of file dMatrix.cc.

References solve().

ComplexMatrix Matrix::solve ( const ComplexMatrix b) const

Definition at line 1899 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1906 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1913 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1921 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

ColumnVector Matrix::solve ( const ColumnVector b) const

Definition at line 1930 of file dMatrix.cc.

References solve().

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

Definition at line 1937 of file dMatrix.cc.

References solve().

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

Definition at line 1944 of file dMatrix.cc.

References solve().

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

Definition at line 1950 of file dMatrix.cc.

References solve().

ComplexColumnVector Matrix::solve ( const ComplexColumnVector b) const

Definition at line 1959 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1966 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1973 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

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

Definition at line 1981 of file dMatrix.cc.

References ComplexMatrix::solve(), and tmp.

Array<double > Array< double >::sort ( int  dim = 0,
sortmode  mode = ASCENDING 
) const
inherited
Array<double > Array< double >::sort ( Array< octave_idx_type > &  sidx,
int  dim = 0,
sortmode  mode = ASCENDING 
) const
inherited
Array<octave_idx_type> Array< double >::sort_rows_idx ( sortmode  mode = ASCENDING) const
inherited

Sort by rows returns only indices.

NDArray NDArray::squeeze ( void  ) const
inlineinherited

Definition at line 142 of file dNDArray.h.

References MArray< T >::squeeze().

Referenced by octave_matrix::squeeze().

Matrix Matrix::stack ( const Matrix a) const
Matrix Matrix::stack ( const RowVector a) const
Matrix Matrix::stack ( const ColumnVector a) const
Matrix Matrix::stack ( const DiagMatrix a) const
Matrix Matrix::sum ( int  dim = -1) const
Matrix Matrix::sumsq ( int  dim = -1) const

Definition at line 2459 of file dMatrix.cc.

References NDArray::sumsq().

bool Array< double >::test ( F  fcn) const
inlineinherited

Generic any/all test functionality with arbitrary predicate.

Definition at line 803 of file Array.h.

bool Array< double >::test_all ( F  fcn) const
inlineinherited
bool Array< double >::test_all ( bool(&)(double fcn) const
inlineinherited

Definition at line 827 of file Array.h.

bool Array< double >::test_all ( bool(&)(const double &)  fcn) const
inlineinherited

Definition at line 830 of file Array.h.

bool Array< double >::test_any ( F  fcn) const
inlineinherited

Simpler calls.

Definition at line 811 of file Array.h.

Referenced by NDArray::too_large_for_float().

bool Array< double >::test_any ( bool(&)(double fcn) const
inlineinherited

Overloads for function references.

Definition at line 821 of file Array.h.

bool Array< double >::test_any ( bool(&)(const double &)  fcn) const
inlineinherited

Definition at line 824 of file Array.h.

Matrix Matrix::tinverse ( MatrixType mattype,
octave_idx_type info,
double rcon,
bool  force,
bool  calc_cond 
) const
private
bool NDArray::too_large_for_float ( void  ) const
inherited
Matrix Matrix::transpose ( void  ) const
inline
Matrix Matrix::utsolve ( MatrixType typ,
const Matrix b,
octave_idx_type info,
double rcon,
solve_singularity_handler  sing_handler,
bool  calc_cond = false,
blas_trans_type  transt = blas_no_trans 
) const
private
double & Array< double >::xelem ( octave_idx_type  n)
inlineinherited
crefT Array< double >::xelem ( octave_idx_type  n) const
inlineinherited

Definition at line 456 of file Array.h.

double & Array< double >::xelem ( octave_idx_type  i,
octave_idx_type  j 
)
inlineinherited

Definition at line 458 of file Array.h.

crefT Array< double >::xelem ( octave_idx_type  i,
octave_idx_type  j 
) const
inlineinherited

Definition at line 460 of file Array.h.

double & Array< double >::xelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inlineinherited

Definition at line 463 of file Array.h.

crefT Array< double >::xelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inlineinherited

Definition at line 465 of file Array.h.

double & Array< double >::xelem ( const Array< octave_idx_type > &  ra_idx)
inlineinherited

Definition at line 468 of file Array.h.

crefT Array< double >::xelem ( const Array< octave_idx_type > &  ra_idx) const
inlineinherited

Definition at line 471 of file Array.h.

NDArray NDArray::xsum ( int  dim = -1) const
inherited

Definition at line 668 of file dNDArray.cc.

References mx_inline_xsum().

Friends And Related Function Documentation

friend class ComplexMatrix
friend

Definition at line 126 of file dMatrix.h.

OCTAVE_API Matrix imag ( const ComplexMatrix a)
friend

Definition at line 392 of file dMatrix.cc.

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

Definition at line 2713 of file dMatrix.cc.

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

Definition at line 2728 of file dMatrix.cc.

OCTAVE_API Matrix real ( const ComplexMatrix a)
friend

Definition at line 386 of file dMatrix.cc.

Member Data Documentation

dim_vector Array< double >::dimensions
protectedinherited

Definition at line 214 of file Array.h.

Array<double >::ArrayRep* Array< double >::rep
protectedinherited

Definition at line 216 of file Array.h.

double * Array< double >::slice_data
protectedinherited

Definition at line 225 of file Array.h.

octave_idx_type Array< double >::slice_len
protectedinherited

Definition at line 226 of file Array.h.


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