GNU Octave
4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
|
#include "chMatrix.h"
Public Types | |
typedef bool(* | compare_fcn_type )(typename ref_param< char >::type, typename ref_param< char >::type) |
typedef ref_param< char >::type | crefT |
typedef char | element_type |
typedef charMatrix | matrix_type |
Public Member Functions | |
charMatrix (void) | |
charMatrix (octave_idx_type r, octave_idx_type c) | |
charMatrix (octave_idx_type r, octave_idx_type c, char val) | |
charMatrix (const dim_vector &dv) | |
charMatrix (const dim_vector &dv, char val) | |
charMatrix (const Array< char > &a) | |
charMatrix (const charMatrix &a) | |
charMatrix (char c) | |
charMatrix (const char *s) | |
charMatrix (const std::string &s) | |
charMatrix (const string_vector &s, char fill_value= '\0') | |
boolNDArray | all (int dim=-1) const |
boolNDArray | any (int dim=-1) const |
bool | any_element_is_nan (void) const |
Array< char > | as_column (void) const |
Return the array as a column vector. More... | |
Array< char > | as_matrix (void) const |
Return the array as a matrix. More... | |
Array< char > | as_row (void) const |
Return the array as a row vector. More... | |
size_t | byte_size (void) const |
char & | checkelem (octave_idx_type n) |
char & | checkelem (octave_idx_type i, octave_idx_type j) |
char & | checkelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) |
char & | checkelem (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) |
Array< char > | column (octave_idx_type k) const |
Extract column: A(:,k+1). More... | |
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 |
charNDArray | concat (const charNDArray &rb, const Array< octave_idx_type > &ra_idx) |
charNDArray | concat (const NDArray &rb, const Array< octave_idx_type > &ra_idx) |
const char * | data (void) const |
charNDArray | diag (octave_idx_type k=0) const |
charNDArray | diag (octave_idx_type m, octave_idx_type n) const |
const dim_vector & | dims (void) const |
Return a const-reference so that dims ()(i) works efficiently. More... | |
char & | elem (octave_idx_type n) |
char & | elem (octave_idx_type i, octave_idx_type j) |
char & | elem (octave_idx_type i, octave_idx_type j, octave_idx_type k) |
char & | elem (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 |
charMatrix | extract (octave_idx_type r1, octave_idx_type c1, octave_idx_type r2, octave_idx_type c2) const |
void | fill (const char &val) |
Array< octave_idx_type > | find (octave_idx_type n=-1, bool backward=false) const |
Find indices of (at most n) nonzero elements. More... | |
const char * | fortran_vec (void) const |
char * | fortran_vec (void) |
Array< char > | hermitian (char(*fcn)(const char &)=0) const |
charMatrix & | insert (const char *s, octave_idx_type r, octave_idx_type c) |
charMatrix & | insert (const charMatrix &a, octave_idx_type r, octave_idx_type c) |
charNDArray & | insert (const charNDArray &a, octave_idx_type r, octave_idx_type c) |
charNDArray & | insert (const charNDArray &a, const Array< octave_idx_type > &ra_idx) |
Array< char > & | insert (const Array< char > &a, const Array< octave_idx_type > &idx) |
Insert an array into another at a specified position. More... | |
Array< char > & | insert (const Array< char > &a, octave_idx_type r, octave_idx_type c) |
This is just a special case for idx = [r c 0 ...]. More... | |
Array< char > | ipermute (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_vector (void) const |
Array< char > | linear_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 char &value, sortmode mode=UNSORTED) const |
Do a binary lookup in a sorted array. More... | |
Array< octave_idx_type > | lookup (const Array< char > &values, sortmode mode=UNSORTED) const |
Ditto, but for an array of values, specializing on the case when values are sorted. More... | |
void | make_unique (void) |
Array< U > | map (F fcn) const |
Apply function fcn to each element of the Array<T>. More... | |
charNDArray | max (int dim=-1) const |
charNDArray | 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... | |
charNDArray | min (int dim=-1) const |
charNDArray | 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< char > | nth_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... | |
bool | operator!= (const charMatrix &a) const |
char & | operator() (octave_idx_type n) |
char & | operator() (octave_idx_type i, octave_idx_type j) |
char & | operator() (octave_idx_type i, octave_idx_type j, octave_idx_type k) |
char & | operator() (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 |
bool | operator== (const charMatrix &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< char > | page (octave_idx_type k) const |
Extract page: A(:,:,k+1). More... | |
Array< char > | permute (const Array< octave_idx_type > &vec, bool inv=false) const |
void | print_info (std::ostream &os, const std::string &prefix) const |
Array< char > | reshape (octave_idx_type nr, octave_idx_type nc) const |
Array< char > | reshape (const dim_vector &new_dims) const |
void | resize (octave_idx_type nr, octave_idx_type nc, char rfv=0) |
virtual char | resize_fill_value (void) const |
std::string | row_as_string (octave_idx_type, bool strip_ws=false) const |
Array< char > | sort (int dim=0, sortmode mode=ASCENDING) const |
Array< char > | sort (Array< octave_idx_type > &sidx, int dim=0, sortmode mode=ASCENDING) const |
Array< octave_idx_type > | sort_rows_idx (sortmode mode=ASCENDING) const |
Sort by rows returns only indices. More... | |
charNDArray | squeeze (void) const |
bool | test (F fcn) const |
Generic any/all test functionality with arbitrary predicate. More... | |
charMatrix | transpose (void) const |
char & | xelem (octave_idx_type n) |
crefT | xelem (octave_idx_type n) const |
char & | xelem (octave_idx_type i, octave_idx_type j) |
crefT | xelem (octave_idx_type i, octave_idx_type j) const |
char & | xelem (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 |
char & | xelem (const Array< octave_idx_type > &ra_idx) |
crefT | xelem (const Array< octave_idx_type > &ra_idx) const |
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< char > | index (const idx_vector &i) const |
Indexing without resizing. More... | |
Array< char > | index (const idx_vector &i, const idx_vector &j) const |
Array< char > | index (const Array< idx_vector > &ia) const |
Array< char > | index (const idx_vector &i, bool resize_ok, const char &rfv) const |
Indexing with possible resizing and fill. More... | |
Array< char > | index (const idx_vector &i, bool resize_ok) const |
Array< char > | index (const idx_vector &i, const idx_vector &j, bool resize_ok, const char &rfv) const |
Array< char > | index (const idx_vector &i, const idx_vector &j, bool resize_ok) const |
Array< char > | index (const Array< idx_vector > &ia, bool resize_ok, const char &rfv) const |
Array< char > | index (const Array< idx_vector > &ia, bool resize_ok) const |
void | resize2 (octave_idx_type nr, octave_idx_type nc, const char &rfv) |
Resizing (with fill). More... | |
void | resize2 (octave_idx_type nr, octave_idx_type nc) |
void | resize1 (octave_idx_type n, const char &rfv) |
void | resize1 (octave_idx_type n) |
void | resize (const dim_vector &dv, const char &rfv) |
void | resize (const dim_vector &dv) |
void | assign (const idx_vector &i, const Array< char > &rhs, const char &rfv) |
Indexed assignment (always with resize & fill). More... | |
void | assign (const idx_vector &i, const Array< char > &rhs) |
void | assign (const idx_vector &i, const idx_vector &j, const Array< char > &rhs, const char &rfv) |
void | assign (const idx_vector &i, const idx_vector &j, const Array< char > &rhs) |
void | assign (const Array< idx_vector > &ia, const Array< char > &rhs, const char &rfv) |
void | assign (const Array< idx_vector > &ia, const Array< char > &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)(char)) const |
Overloads for function references. More... | |
Array< U > | map (U(&fcn)(const char &)) const |
bool | test_any (F fcn) const |
Simpler calls. More... | |
bool | test_all (F fcn) const |
bool | test_any (bool(&fcn)(char)) const |
Overloads for function references. More... | |
bool | test_any (bool(&fcn)(const char &)) const |
bool | test_all (bool(&fcn)(char)) const |
bool | test_all (bool(&fcn)(const char &)) const |
int * | jit_ref_count (void) |
WARNING: Only call these functions from jit. More... | |
char * | jit_slice_data (void) const |
octave_idx_type * | jit_dimensions (void) const |
void * | jit_array_rep (void) const |
Static Public Member Functions | |
static Array< char > | cat (int dim, octave_idx_type n, const Array< char > *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< char >::ArrayRep * | rep |
char * | slice_data |
octave_idx_type | slice_len |
Friends | |
class | ComplexMatrix |
Definition at line 36 of file chMatrix.h.
|
inherited |
Definition at line 41 of file chNDArray.h.
|
inline |
Definition at line 44 of file chMatrix.h.
|
inline |
Definition at line 46 of file chMatrix.h.
|
inline |
Definition at line 49 of file chMatrix.h.
|
inline |
Definition at line 52 of file chMatrix.h.
|
inline |
Definition at line 54 of file chMatrix.h.
Definition at line 57 of file chMatrix.h.
|
inline |
Definition at line 59 of file chMatrix.h.
|
inline |
Definition at line 61 of file chMatrix.h.
|
inline |
Definition at line 63 of file chMatrix.h.
|
inline |
Definition at line 65 of file chMatrix.h.
|
inline |
Definition at line 67 of file chMatrix.h.
|
inherited |
Definition at line 89 of file chNDArray.cc.
References mx_inline_all().
|
inherited |
Definition at line 95 of file chNDArray.cc.
References mx_inline_any().
|
inlineinherited |
Definition at line 67 of file chNDArray.h.
|
inherited |
Indexed assignment (always with resize & fill).
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
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.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 321 of file Array.h.
Referenced by insert(), operator==(), and row_as_string().
|
inherited |
Extract column: A(:,k+1).
|
inlineinherited |
|
staticinherited |
Definition at line 191 of file chNDArray.cc.
References compute_index().
|
inherited |
|
inherited |
|
inherited |
|
inlineinherited |
|
inherited |
Definition at line 101 of file chNDArray.cc.
References charNDArray::insert(), and Array< T >::numel().
|
inherited |
Definition at line 110 of file chNDArray.cc.
References d, Array< T >::dims(), Array< T >::elem(), charNDArray::insert(), max(), NINTbig(), Array< T >::numel(), and xisnan().
Definition at line 479 of file Array.h.
Referenced by operator==().
|
inherited |
Deleting elements.
A(I) = [] (with a single subscript)
|
inherited |
A(:,...,I,...,:) = [] (>= 2 subscripts, one of them is non-colon)
|
inherited |
Dispatcher to the above two.
|
inherited |
Definition at line 198 of file chNDArray.cc.
References Array< T >::diag().
|
inherited |
Definition at line 204 of file chNDArray.cc.
References Array< T >::diag().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 380 of file Array.h.
Referenced by charNDArray::charNDArray(), extract(), insert(), and row_as_string().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
charMatrix charMatrix::extract | ( | octave_idx_type | r1, |
octave_idx_type | c1, | ||
octave_idx_type | r2, | ||
octave_idx_type | c2 | ||
) | const |
Definition at line 121 of file chMatrix.cc.
References Array< T >::elem(), and Array< char >::elem().
|
inherited |
Find indices of (at most n) nonzero elements.
If n is specified, backward specifies search from backward.
|
staticinherited |
Definition at line 183 of file chNDArray.cc.
|
inherited |
Indexing without resizing.
|
inherited |
|
inherited |
Indexing with possible resizing and fill.
|
inherited |
|
inlineinherited |
|
inherited |
charMatrix & charMatrix::insert | ( | const char * | s, |
octave_idx_type | r, | ||
octave_idx_type | c | ||
) |
Definition at line 58 of file chMatrix.cc.
References Array< char >::cols(), Array< char >::elem(), and Array< char >::rows().
Referenced by octave_char_matrix_str::load_ascii(), octave_char_matrix_str::load_binary(), and octave_char_matrix_str::load_hdf5().
charMatrix & charMatrix::insert | ( | const charMatrix & | a, |
octave_idx_type | r, | ||
octave_idx_type | c | ||
) |
Definition at line 77 of file chMatrix.cc.
References Array< T >::insert().
|
inherited |
Definition at line 169 of file chNDArray.cc.
References Array< T >::insert().
Referenced by charNDArray::concat(), FloatNDArray::concat(), and NDArray::concat().
|
inherited |
Definition at line 176 of file chNDArray.cc.
References Array< T >::insert().
|
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.
|
inherited |
This is just a special case for idx = [r c 0 ...].
Ordering is auto-detected or can be specified.
Ordering is auto-detected or can be specified.
|
inlineinherited |
|
inlineinherited |
Number of elements in the array.
Synonymous with capacity(), nelem(), and numel().
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 267 of file Array.h.
Referenced by operator==().
|
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.
|
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.
|
inherited |
Ditto, but for an array of values, specializing on the case when values are sorted.
NaNs get the value N.
|
inherited |
Definition at line 145 of file chNDArray.cc.
References mx_inline_max().
Referenced by do_minmax_red_op< charNDArray >().
|
inherited |
Definition at line 151 of file chNDArray.cc.
References mx_inline_max().
|
inherited |
Definition at line 157 of file chNDArray.cc.
References mx_inline_min().
Referenced by do_minmax_red_op< charNDArray >().
|
inherited |
Definition at line 163 of file chNDArray.cc.
References mx_inline_min().
|
inlineinherited |
Number of elements in the array.
Synonymous with capacity(), length(), and numel().
|
inherited |
Count nonzero elements.
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.
|
inlineinherited |
Number of elements in the array.
Synonymous with capacity(), length(), and nelem().
bool charMatrix::operator!= | ( | const charMatrix & | a | ) | const |
Definition at line 52 of file chMatrix.cc.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
bool charMatrix::operator== | ( | const charMatrix & | a | ) | const |
Definition at line 43 of file chMatrix.cc.
References Array< char >::cols(), Array< T >::cols(), Array< T >::data(), Array< char >::data(), Array< char >::length(), mx_inline_equal(), Array< char >::rows(), and Array< T >::rows().
|
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).
|
inherited |
Extract page: A(:,:,k+1).
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
Definition at line 88 of file chMatrix.h.
References Array< T >::resize().
Referenced by octave_char_matrix_str::load_ascii(), and octave_char_matrix_str::load_binary().
|
inherited |
|
inlineinherited |
|
inherited |
Referenced by charNDArray::charNDArray().
|
inlineinherited |
|
inherited |
Resizing (with fill).
|
inlineinherited |
std::string charMatrix::row_as_string | ( | octave_idx_type | r, |
bool | strip_ws = false |
||
) | const |
Definition at line 84 of file chMatrix.cc.
References Array< char >::cols(), Array< char >::elem(), and Array< char >::rows().
Referenced by octave_char_matrix_str::all_strings(), octave_char_matrix_str::cellstr_value(), string_array_property::do_set(), octave_print_internal(), octave_char_matrix_str::save_ascii(), save_mat_binary_data(), and octave_char_matrix_str::string_value().
|
inlineinherited |
Definition at line 313 of file Array.h.
Referenced by charNDArray::charNDArray(), insert(), operator==(), and row_as_string().
|
inherited |
Sort by rows returns only indices.
|
inlineinherited |
Definition at line 87 of file chNDArray.h.
References Array< T >::squeeze().
|
inline |
Definition at line 73 of file chMatrix.h.
References Array< T >::transpose().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
friend |
Definition at line 40 of file chMatrix.h.
|
protectedinherited |
|
protectedinherited |