GNU Octave  6.2.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
Array< T > Class Template Reference

N Dimensional Array with copy-on-write semantics. More...

#include "Array.h"

Inheritance diagram for Array< T >:
Collaboration diagram for Array< T >:

Classes

class  ArrayRep
 The real representation of all arrays. More...
 

Public Types

typedef bool(* compare_fcn_type) (typename ref_param< T >::type, typename ref_param< T >::type)
 
typedef ref_param< T >::type crefT
 
typedef T element_type
 
typedef octave_idx_type size_type
 Used for operator(), and returned by numel() and size() (beware: signed integer) More...
 
typedef T value_type
 

Public Member Functions

 Array (Array< T > &&a)
 
 Array (const Array< T > &a)
 No type conversion case. More...
 
 Array (const Array< T > &a, const dim_vector &dv)
 Reshape constructor. More...
 
template<typename U >
 Array (const Array< U > &a)
 Type conversion case. More...
 
template<template< typename... > class Container>
 Array (const Container< T > &a, const dim_vector &dv)
 Constructor from standard library sequence containers. More...
 
 Array (const dim_vector &dv)
 nD uninitialized ctor. More...
 
 Array (const dim_vector &dv, const T &val)
 nD initialized ctor. More...
 
 Array (void)
 Empty ctor (0 by 0). More...
 
virtual ~Array (void)
 
Array< T > as_column (void) const
 Return the array as a column vector. More...
 
Array< T > as_matrix (void) const
 Return the array as a matrix. More...
 
Array< T > as_row (void) const
 Return the array as a row vector. More...
 
void clear (const dim_vector &dv)
 
void clear (octave_idx_type r, octave_idx_type c)
 
void clear (void)
 
void fill (const T &val)
 
Array< octave_idx_typefind (octave_idx_type, bool) const
 
sortmode is_sorted_rows (sortmode) const
 
OCTAVE_API sortmode issorted (sortmode mode) const
 
sortmode issorted (sortmode) const
 
Array< octave_idx_typelookup (const Array< idx_vector > &, sortmode) const
 
octave_idx_type lookup (idx_vector const &, sortmode) const
 
void make_unique (void)
 
octave_idx_type nnz (void) const
 
Array< idx_vectornth_element (const idx_vector &, int) const
 
octave_idx_type numel (void) const
 Number of elements in the array. More...
 
Array< T > & operator= (Array< T > &&a)
 
Array< T > & operator= (const Array< T > &a)
 
Array< idx_vectorsort (Array< octave_idx_type > &sidx, int, sortmode) const
 
Array< idx_vectorsort (int, sortmode) const
 
Array< octave_idx_typesort_rows_idx (sortmode) const
 
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
 

Protected Member Functions

 Array (const Array< T > &a, const dim_vector &dv, octave_idx_type l, octave_idx_type u)
 slice constructor More...
 
 Array (T *sdata, octave_idx_type slen, octave_idx_type *adims, void *arep)
 For jit support. More...
 

Protected Attributes

dim_vector dimensions
 
Array< T >::ArrayReprep
 
T * slice_data
 
octave_idx_type slice_len
 

Private Member Functions

void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 
void instantiation_guard ()
 

Static Private Member Functions

static Array< T >::ArrayRepnil_rep (void)
 

Third dimension

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

template<typename U >
class Array
 Size of the specified dimension. More...
 
octave_idx_type dim3 (void) const
 Size of the specified dimension. More...
 
octave_idx_type pages (void) const
 Size of the specified dimension. More...
 
size_type size (const size_type d) const
 Size of the specified dimension. More...
 
size_t byte_size (void) const
 Size of the specified dimension. More...
 
const dim_vectordims (void) const
 Return a const-reference so that dims ()(i) works efficiently. More...
 
Array< T > squeeze (void) const
 Chop off leading singleton dimensions. More...
 
octave_idx_type compute_index (octave_idx_type i, octave_idx_type j) const
 Size of the specified dimension. More...
 
octave_idx_type compute_index (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 Size of the specified dimension. More...
 
octave_idx_type compute_index (const Array< octave_idx_type > &ra_idx) const
 Size of the specified dimension. More...
 
octave_idx_type compute_index_unchecked (const Array< octave_idx_type > &ra_idx) const
 Size of the specified dimension. More...
 
T & xelem (octave_idx_type n)
 Size of the specified dimension. More...
 
crefT xelem (octave_idx_type n) const
 Size of the specified dimension. More...
 
T & xelem (octave_idx_type i, octave_idx_type j)
 Size of the specified dimension. More...
 
crefT xelem (octave_idx_type i, octave_idx_type j) const
 Size of the specified dimension. More...
 
T & xelem (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 Size of the specified dimension. More...
 
crefT xelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 Size of the specified dimension. More...
 
T & xelem (const Array< octave_idx_type > &ra_idx)
 Size of the specified dimension. More...
 
crefT xelem (const Array< octave_idx_type > &ra_idx) const
 Size of the specified dimension. More...
 
T & checkelem (octave_idx_type n)
 Size of the specified dimension. More...
 
T & checkelem (octave_idx_type i, octave_idx_type j)
 Size of the specified dimension. More...
 
T & checkelem (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 Size of the specified dimension. More...
 
T & checkelem (const Array< octave_idx_type > &ra_idx)
 Size of the specified dimension. More...
 
T & elem (octave_idx_type n)
 Size of the specified dimension. More...
 
T & elem (octave_idx_type i, octave_idx_type j)
 Size of the specified dimension. More...
 
T & elem (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 Size of the specified dimension. More...
 
T & elem (const Array< octave_idx_type > &ra_idx)
 Size of the specified dimension. More...
 
T & operator() (octave_idx_type n)
 Size of the specified dimension. More...
 
T & operator() (octave_idx_type i, octave_idx_type j)
 Size of the specified dimension. More...
 
T & operator() (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 Size of the specified dimension. More...
 
T & operator() (const Array< octave_idx_type > &ra_idx)
 Size of the specified dimension. More...
 
crefT checkelem (octave_idx_type n) const
 Size of the specified dimension. More...
 
crefT checkelem (octave_idx_type i, octave_idx_type j) const
 Size of the specified dimension. More...
 
crefT checkelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 Size of the specified dimension. More...
 
crefT checkelem (const Array< octave_idx_type > &ra_idx) const
 Size of the specified dimension. More...
 
crefT elem (octave_idx_type n) const
 Size of the specified dimension. More...
 
crefT elem (octave_idx_type i, octave_idx_type j) const
 Size of the specified dimension. More...
 
crefT elem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 Size of the specified dimension. More...
 
crefT elem (const Array< octave_idx_type > &ra_idx) const
 Size of the specified dimension. More...
 
crefT operator() (octave_idx_type n) const
 Size of the specified dimension. More...
 
crefT operator() (octave_idx_type i, octave_idx_type j) const
 Size of the specified dimension. More...
 
crefT operator() (octave_idx_type i, octave_idx_type j, octave_idx_type k) const
 Size of the specified dimension. More...
 
crefT operator() (const Array< octave_idx_type > &ra_idx) const
 Size of the specified dimension. More...
 
Array< T > column (octave_idx_type k) const
 Extract column: A(:,k+1). More...
 
Array< T > page (octave_idx_type k) const
 Extract page: A(:,:,k+1). More...
 
Array< T > 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...
 
Array< T > reshape (octave_idx_type nr, octave_idx_type nc) const
 Size of the specified dimension. More...
 
Array< T > reshape (const dim_vector &new_dims) const
 Size of the specified dimension. More...
 
Array< T > permute (const Array< octave_idx_type > &vec, bool inv=false) const
 Size of the specified dimension. More...
 
Array< T > ipermute (const Array< octave_idx_type > &vec) const
 Size of the specified dimension. More...
 
bool issquare (void) const
 Size of the specified dimension. More...
 
bool isempty (void) const
 Size of the specified dimension. More...
 
bool isvector (void) const
 Size of the specified dimension. More...
 
bool is_nd_vector (void) const
 Size of the specified dimension. More...
 
Array< T > transpose (void) const
 Size of the specified dimension. More...
 
Array< T > hermitian (T(*fcn)(const T &)=nullptr) const
 Size of the specified dimension. More...
 
const T * data (void) const
 Size of the specified dimension. More...
 
const T * fortran_vec (void) const
 Size of the specified dimension. More...
 
T * fortran_vec (void)
 Size of the specified dimension. More...
 
bool is_shared (void)
 Size of the specified dimension. More...
 
int ndims (void) const
 Size of the specified dimension. More...
 
Array< T > index (const idx_vector &i) const
 Indexing without resizing. More...
 
Array< T > index (const idx_vector &i, const idx_vector &j) const
 Size of the specified dimension. More...
 
Array< T > index (const Array< idx_vector > &ia) const
 Size of the specified dimension. More...
 
virtual T resize_fill_value (void) const
 Size of the specified dimension. More...
 
void resize2 (octave_idx_type nr, octave_idx_type nc, const T &rfv)
 Resizing (with fill). More...
 
void resize2 (octave_idx_type nr, octave_idx_type nc)
 Size of the specified dimension. More...
 
void resize1 (octave_idx_type n, const T &rfv)
 Size of the specified dimension. More...
 
void resize1 (octave_idx_type n)
 Size of the specified dimension. More...
 
void resize (const dim_vector &dv, const T &rfv)
 Size of the specified dimension. More...
 
void resize (const dim_vector &dv)
 Size of the specified dimension. More...
 
Array< T > index (const idx_vector &i, bool resize_ok, const T &rfv) const
 Indexing with possible resizing and fill. More...
 
Array< T > index (const idx_vector &i, bool resize_ok) const
 Size of the specified dimension. More...
 
Array< T > index (const idx_vector &i, const idx_vector &j, bool resize_ok, const T &rfv) const
 Size of the specified dimension. More...
 
Array< T > index (const idx_vector &i, const idx_vector &j, bool resize_ok) const
 Size of the specified dimension. More...
 
Array< T > index (const Array< idx_vector > &ia, bool resize_ok, const T &rfv) const
 Size of the specified dimension. More...
 
Array< T > index (const Array< idx_vector > &ia, bool resize_ok) const
 Size of the specified dimension. More...
 
void assign (const idx_vector &i, const Array< T > &rhs, const T &rfv)
 Indexed assignment (always with resize & fill). More...
 
void assign (const idx_vector &i, const Array< T > &rhs)
 Size of the specified dimension. More...
 
void assign (const idx_vector &i, const idx_vector &j, const Array< T > &rhs, const T &rfv)
 Size of the specified dimension. More...
 
void assign (const idx_vector &i, const idx_vector &j, const Array< T > &rhs)
 Size of the specified dimension. More...
 
void assign (const Array< idx_vector > &ia, const Array< T > &rhs, const T &rfv)
 Size of the specified dimension. More...
 
void assign (const Array< idx_vector > &ia, const Array< T > &rhs)
 Size of the specified dimension. More...
 
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< T > & insert (const Array< T > &a, const Array< octave_idx_type > &idx)
 Insert an array into another at a specified position. More...
 
Array< T > & insert (const Array< T > &a, octave_idx_type r, octave_idx_type c)
 This is just a special case for idx = [r c 0 ...]. More...
 
void maybe_economize (void)
 Size of the specified dimension. More...
 
void print_info (std::ostream &os, const std::string &prefix) const
 Size of the specified dimension. More...
 
void * mex_get_data (void) const
 Give a pointer to the data in mex format. More...
 
Array< T > sort (int dim=0, sortmode mode=ASCENDING) const
 Size of the specified dimension. More...
 
Array< T > sort (Array< octave_idx_type > &sidx, int dim=0, sortmode mode=ASCENDING) const
 Size of the specified dimension. More...
 
sortmode issorted (sortmode mode=UNSORTED) const
 Ordering is auto-detected or can be specified. More...
 
Array< octave_idx_typesort_rows_idx (sortmode mode=ASCENDING) const
 Sort by rows returns only indices. More...
 
sortmode is_sorted_rows (sortmode mode=UNSORTED) const
 Ordering is auto-detected or can be specified. More...
 
octave_idx_type lookup (const T &value, sortmode mode=UNSORTED) const
 Do a binary lookup in a sorted array. More...
 
Array< octave_idx_typelookup (const Array< T > &values, sortmode mode=UNSORTED) const
 Ditto, but for an array of values, specializing on the case when values are sorted. More...
 
octave_idx_type nnz (void) const
 Count nonzero elements. More...
 
Array< octave_idx_typefind (octave_idx_type n=-1, bool backward=false) const
 Find indices of (at most n) nonzero elements. More...
 
Array< T > 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...
 
Array< T > diag (octave_idx_type k=0) const
 Get the kth super or subdiagonal. More...
 
Array< T > diag (octave_idx_type m, octave_idx_type n) const
 Size of the specified dimension. More...
 
template<typename U , typename F >
Array< U > map (F fcn) const
 Apply function fcn to each element of the Array<T>. More...
 
template<typename U >
Array< U > map (U(&fcn)(T)) const
 Overloads for function references. More...
 
template<typename U >
Array< U > map (U(&fcn)(const T &)) const
 Size of the specified dimension. More...
 
template<typename F , bool zero>
bool test (F fcn) const
 Generic any/all test functionality with arbitrary predicate. More...
 
template<typename F >
bool test_any (F fcn) const
 Simpler calls. More...
 
template<typename F >
bool test_all (F fcn) const
 Size of the specified dimension. More...
 
bool test_any (bool(&fcn)(T)) const
 Overloads for function references. More...
 
bool test_any (bool(&fcn)(const T &)) const
 Size of the specified dimension. More...
 
bool test_all (bool(&fcn)(T)) const
 Size of the specified dimension. More...
 
bool test_all (bool(&fcn)(const T &)) const
 Size of the specified dimension. More...
 
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...
 
int jit_ref_count (void)
 WARNING: Only call these functions from jit. More...
 
T * jit_slice_data (void) const
 Size of the specified dimension. More...
 
octave_idx_typejit_dimensions (void) const
 Size of the specified dimension. More...
 
void * jit_array_rep (void) const
 Size of the specified dimension. More...
 
static void instantiation_guard ()
 Size of the specified dimension. More...
 
static Array< T > cat (int dim, octave_idx_type n, const Array< T > *array_list)
 Concatenation along a specified (0-based) dimension, equivalent to cat(). More...
 

Detailed Description

template<typename T>
class Array< T >

N Dimensional Array with copy-on-write semantics.

The Array class is at the root of Octave. It provides a container with an arbitrary number of dimensions. The operator () provides access to individual elements via subscript and linear indexing. Indexing starts at 0. Arrays are column-major order as in Fortran.

// 3 D Array with 10 rows, 20 columns, and 5 pages, filled with 7.0
Array<double> A Array<double (dim_vector (10, 20, 5), 7.0);
// set value for row 0, column 10, and page 3
A(0, 10, 3) = 2.5;
// get value for row 1, column 2, and page 0
double v = A(1, 2, 0);
// get value for 25th element (row 4, column 3, page 1)
double v = A(24);
Vector representing the dimensions (size) of an Array.
Definition: dim-vector.h:95
F77_RET_T const F77_INT F77_CMPLX * A

Notes on STL compatibility

size() and length()

To access the total number of elements in an Array, use numel() which is short for number of elements and is equivalent to the Octave function with same name.

Array<int> A (dim_vector (10, 20, 4), 1);
octave_idx_type n = A.numel (); // returns 800 (10x20x4)
octave_idx_type nr = A.size (0); // returns 10 (number of rows/dimension 0)
octave_idx_type nc = A.size (1); // returns 20 (number of columns)
octave_idx_type nc = A.size (2); // returns 4 (size of dimension 3)
octave_idx_type l6 = A.size (6); // returns 1 (implicit singleton dimension)
// Alternatively, get a dim_vector which represents the dimensions.
dim_vector dims = A.dims ();
const dim_vector & dims(void) const
Return a const-reference so that dims ()(i) works efficiently.
Definition: Array.h:453
octave_idx_type n
Definition: mx-inlines.cc:753

The methods size() and length() as they exist in the STL cause confusion in the context of a N dimensional array.

The size() of an array is the length of all dimensions. In Octave, the size() function returns a row vector with the length of each dimension, or the size of a specific dimension. Only the latter is present in liboctave.

Since there is more than 1 dimension, length() would not make sense without expliciting which dimension. If the function existed, which length should it return? Octave length() function returns the length of the longest dimension which is an odd definition, only useful for vectors and square matrices. The alternatives numel(), rows(), columns(), and size(d) are more explicit and recommended.

size_type

Array::size_type is 'octave_idx_type' which is a typedef for 'int' or 'long int', depending whether Octave was configured for 64-bit indexing.

This is a signed integer which may cause problems when mixed with STL containers. The reason is that Octave interacts with Fortran routines, providing an interface many Fortran numeric libraries.

Subclasses

The following subclasses specializations, will be of most use:

Definition at line 126 of file Array.h.

Member Typedef Documentation

◆ compare_fcn_type

template<typename T >
typedef bool(* Array< T >::compare_fcn_type) (typename ref_param< T >::type, typename ref_param< T >::type)

Definition at line 212 of file Array.h.

◆ crefT

template<typename T >
typedef ref_param<T>::type Array< T >::crefT

Definition at line 210 of file Array.h.

◆ element_type

template<typename T >
typedef T Array< T >::element_type

Definition at line 202 of file Array.h.

◆ size_type

template<typename T >
typedef octave_idx_type Array< T >::size_type

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

Definition at line 208 of file Array.h.

◆ value_type

template<typename T >
typedef T Array< T >::value_type

Definition at line 204 of file Array.h.

Constructor & Destructor Documentation

◆ Array() [1/10]

template<typename T >
Array< T >::Array ( const Array< T > &  a,
const dim_vector dv,
octave_idx_type  l,
octave_idx_type  u 
)
inlineprotected

slice constructor

Definition at line 232 of file Array.h.

References dim_vector::chop_trailing_singletons(), and Array< T >::ArrayRep::count.

◆ Array() [2/10]

template<typename T >
Array< T >::Array ( T *  sdata,
octave_idx_type  slen,
octave_idx_type adims,
void *  arep 
)
inlineprotected

For jit support.

Definition at line 247 of file Array.h.

◆ Array() [3/10]

template<typename T >
Array< T >::Array ( void  )
inline

Empty ctor (0 by 0).

Definition at line 255 of file Array.h.

References Array< T >::ArrayRep::count.

◆ Array() [4/10]

template<typename T >
Array< T >::Array ( const dim_vector dv)
inlineexplicit

nD uninitialized ctor.

Definition at line 263 of file Array.h.

References dim_vector::chop_trailing_singletons().

◆ Array() [5/10]

template<typename T >
Array< T >::Array ( const dim_vector dv,
const T &  val 
)
inlineexplicit

nD initialized ctor.

Definition at line 272 of file Array.h.

References dim_vector::chop_trailing_singletons().

◆ Array() [6/10]

template<typename T >
Array< T >::Array ( const Array< T > &  a,
const dim_vector dv 
)

◆ Array() [7/10]

template<typename T >
template<template< typename... > class Container>
Array< T >::Array ( const Container< T > &  a,
const dim_vector dv 
)

Constructor from standard library sequence containers.

Definition at line 861 of file Array.h.

References dim_vector::chop_trailing_singletons(), Array< T >::dimensions, dim_vector::safe_numel(), Array< T >::slice_data, dim_vector::str(), and x.

◆ Array() [8/10]

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

Type conversion case.

Definition at line 290 of file Array.h.

◆ Array() [9/10]

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

No type conversion case.

Definition at line 297 of file Array.h.

References Array< T >::ArrayRep::count.

◆ Array() [10/10]

template<typename T >
Array< T >::Array ( Array< T > &&  a)
inline

Definition at line 304 of file Array.h.

◆ ~Array()

template<typename T >
virtual Array< T >::~Array ( void  )
inlinevirtual

Definition at line 315 of file Array.h.

References Array< T >::ArrayRep::count.

Member Function Documentation

◆ as_column()

template<typename T >
Array<T> Array< T >::as_column ( void  ) const
inline

Return the array as a column vector.

Definition at line 381 of file Array.h.

References Array< T >::dimensions, dim_vector::ndims(), numel(), and retval.

◆ as_matrix()

template<typename T >
Array<T> Array< T >::as_matrix ( void  ) const
inline

Return the array as a matrix.

Definition at line 401 of file Array.h.

References Array< T >::dimensions, dim_vector::ndims(), dim_vector::redim(), and retval.

Referenced by Sparse< T >::index().

◆ as_row()

template<typename T >
Array<T> Array< T >::as_row ( void  ) const
inline

Return the array as a row vector.

Definition at line 391 of file Array.h.

References Array< T >::dimensions, dim_vector::ndims(), numel(), and retval.

◆ assign() [1/6]

template<typename T >
void Array< T >::assign ( const Array< idx_vector > &  ia,
const Array< T > &  rhs 
)
inline

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 661 of file Array.h.

◆ assign() [2/6]

template<typename T >
void Array< T >::assign ( const Array< idx_vector > &  ia,
const Array< T > &  rhs,
const T &  rfv 
)

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 1267 of file Array.cc.

References dim_vector::alloc(), rec_index_helper::assign(), dim_vector::chop_all_singletons(), dim_vector::chop_trailing_singletons(), Array< T >::data(), Array< T >::dims(), octave::err_nonconformant(), rec_index_helper::fill(), dim_vector::ndims(), Array< T >::numel(), dim_vector::redim(), Array< T >::reshape(), dim_vector::zero_by_zero(), and zero_dims_inquire().

◆ assign() [3/6]

template<typename T >
void Array< T >::assign ( const idx_vector i,
const Array< T > &  rhs 
)
inline

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 648 of file Array.h.

◆ assign() [4/6]

◆ assign() [5/6]

template<typename T >
void Array< T >::assign ( const idx_vector i,
const idx_vector j,
const Array< T > &  rhs 
)
inline

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 655 of file Array.h.

◆ assign() [6/6]

template<typename T >
void Array< T >::assign ( const idx_vector i,
const idx_vector j,
const Array< T > &  rhs,
const T &  rfv 
)

◆ byte_size()

template<typename T >
size_t Array< T >::byte_size ( void  ) const
inline

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 449 of file Array.h.

References numel().

Referenced by octave_cell::byte_size(), DiagArray2< T >::byte_size(), PermMatrix::byte_size(), and octave_perm_matrix::save_binary().

◆ cat()

template<typename T >
Array< T > Array< T >::cat ( int  dim,
octave_idx_type  n,
const Array< T > *  array_list 
)
static

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.

Definition at line 2630 of file Array.cc.

References Array< T >::assign(), idx_vector::colon, dim_vector::concat(), Array< T >::dims(), dim_vector::hvcat(), Array< T >::isempty(), max(), n, dim_vector::ndims(), retval, and dim_vector::zero_by_zero().

Referenced by single_type_concat().

◆ checkelem() [1/8]

template<typename T >
T & Array< T >::checkelem ( const Array< octave_idx_type > &  ra_idx)

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 219 of file Array.cc.

References compute_index(), elem, and ra_idx.

◆ checkelem() [2/8]

template<typename T >
Array< T >::crefT Array< T >::checkelem ( const Array< octave_idx_type > &  ra_idx) const

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 254 of file Array.cc.

References compute_index(), elem, and ra_idx.

◆ checkelem() [3/8]

template<typename T >
T & Array< T >::checkelem ( octave_idx_type  i,
octave_idx_type  j 
)

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 205 of file Array.cc.

References compute_index(), and elem.

◆ checkelem() [4/8]

template<typename T >
Array< T >::crefT Array< T >::checkelem ( octave_idx_type  i,
octave_idx_type  j 
) const

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 239 of file Array.cc.

References compute_index(), and elem.

◆ checkelem() [5/8]

template<typename T >
T & Array< T >::checkelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)

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 212 of file Array.cc.

References compute_index(), and elem.

◆ checkelem() [6/8]

template<typename T >
Array< T >::crefT Array< T >::checkelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const

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 246 of file Array.cc.

References compute_index(), and elem.

◆ checkelem() [7/8]

◆ checkelem() [8/8]

template<typename T >
Array< T >::crefT Array< T >::checkelem ( octave_idx_type  n) const

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 226 of file Array.cc.

References elem, octave::err_index_out_of_range(), octave::err_invalid_index(), and n.

◆ clear() [1/3]

template<typename T >
void Array< T >::clear ( const dim_vector dv)

Definition at line 102 of file Array.cc.

References dim_vector::chop_trailing_singletons(), and dim_vector::safe_numel().

◆ clear() [2/3]

template<typename T >
void Array< T >::clear ( octave_idx_type  r,
octave_idx_type  c 
)
inline

Definition at line 373 of file Array.h.

References r.

◆ clear() [3/3]

◆ cols()

template<typename T >
octave_idx_type Array< T >::cols ( void  ) const
inline

Definition at line 423 of file Array.h.

Referenced by aepbalance< T >::aepbalance(), ComplexMatrix::ComplexMatrix(), FloatComplexMatrix::FloatComplexMatrix(), FloatMatrix::FloatMatrix(), Matrix::Matrix(), octave::math::airy(), FloatComplexMatrix::append(), FloatMatrix::append(), ComplexMatrix::append(), Matrix::append(), octave::math::biry(), SparseComplexMatrix::bsolve(), SparseMatrix::bsolve(), octave::math::sparse_qr< SPARSE_T >::sparse_qr_rep< SPARSE_T >::C(), ComplexMatrix::column_max(), FloatComplexMatrix::column_max(), FloatMatrix::column_max(), ComplexMatrix::column_min(), FloatComplexMatrix::column_min(), FloatMatrix::column_min(), ComplexMatrix::determinant(), FloatComplexMatrix::determinant(), FloatMatrix::determinant(), ComplexMatrix::diag(), FloatComplexMatrix::diag(), FloatMatrix::diag(), dmsolve_insert(), dmsolve_permute(), octave::math::do_bessel(), drawcn(), SparseComplexMatrix::dsolve(), SparseMatrix::dsolve(), elem_xpow(), ComplexMatrix::fill(), FloatComplexMatrix::fill(), FloatMatrix::fill(), ComplexMatrix::finverse(), FloatComplexMatrix::finverse(), FloatMatrix::finverse(), ComplexMatrix::fourier(), FloatComplexMatrix::fourier(), FloatMatrix::fourier(), ComplexMatrix::fourier2d(), FloatComplexMatrix::fourier2d(), FloatMatrix::fourier2d(), ComplexMatrix::fsolve(), FloatComplexMatrix::fsolve(), FloatMatrix::fsolve(), Matrix::fsolve(), SparseComplexMatrix::fsolve(), SparseMatrix::fsolve(), EIG::hermitian_init(), FloatEIG::hermitian_init(), ComplexMatrix::ifourier(), FloatComplexMatrix::ifourier(), FloatMatrix::ifourier(), ComplexMatrix::ifourier2d(), FloatComplexMatrix::ifourier2d(), FloatMatrix::ifourier2d(), Sparse< T >::index(), FloatEIG::init(), hess< T >::init(), EIG::init(), chol< T >::init(), gepbalance< T >::init(), schur< T >::init(), qr< T >::init(), qrp< T >::init(), FloatComplexMatrix::insert(), FloatMatrix::insert(), ComplexMatrix::insert(), qr< T >::insert_col(), ComplexMatrix::ishermitian(), FloatComplexMatrix::ishermitian(), FloatMatrix::issymmetric(), kron(), ComplexMatrix::lssolve(), FloatComplexMatrix::lssolve(), FloatMatrix::lssolve(), Matrix::lssolve(), ComplexMatrix::ltsolve(), FloatComplexMatrix::ltsolve(), FloatMatrix::ltsolve(), Matrix::ltsolve(), SparseComplexMatrix::ltsolve(), SparseMatrix::ltsolve(), LuAminusSigmaB(), make_cholb(), mark_facets(), matrix_real_probe(), octave_print_internal(), octave_print_internal_template(), ComplexMatrix::operator+=(), FloatComplexMatrix::operator+=(), FloatMatrix::operator+=(), ComplexMatrix::operator-=(), FloatComplexMatrix::operator-=(), FloatMatrix::operator-=(), boolMatrix::operator==(), charMatrix::operator==(), ComplexMatrix::operator==(), FloatComplexMatrix::operator==(), FloatMatrix::operator==(), Matrix::operator==(), ComplexMatrix::pseudo_inverse(), FloatComplexMatrix::pseudo_inverse(), FloatMatrix::pseudo_inverse(), ComplexMatrix::rcond(), FloatComplexMatrix::rcond(), FloatMatrix::rcond(), ComplexMatrix::row_max(), FloatComplexMatrix::row_max(), FloatMatrix::row_max(), ComplexMatrix::row_min(), FloatComplexMatrix::row_min(), FloatMatrix::row_min(), octave_cell::save_ascii(), octave_char_matrix_str::save_ascii(), save_mat_binary_data(), FloatComplexMatrix::stack(), FloatMatrix::stack(), ComplexMatrix::stack(), Matrix::stack(), stack_complex_matrix(), FloatEIG::symmetric_init(), EIG::symmetric_init(), ComplexMatrix::tinverse(), FloatComplexMatrix::tinverse(), FloatMatrix::tinverse(), SparseComplexMatrix::trisolve(), SparseMatrix::trisolve(), octave_bool_matrix::try_narrowing_conversion(), unstack_complex_matrix(), qr< T >::update(), QtHandles::Table::updateColumnname(), QtHandles::Table::updateRowname(), ComplexMatrix::utsolve(), FloatComplexMatrix::utsolve(), FloatMatrix::utsolve(), Matrix::utsolve(), SparseComplexMatrix::utsolve(), SparseMatrix::utsolve(), xgemm(), and xpow().

◆ column()

template<typename T >
Array< T > Array< T >::column ( octave_idx_type  k) const

◆ columns()

◆ compute_index() [1/3]

template<typename T >
octave_idx_type Array< T >::compute_index ( const Array< octave_idx_type > &  ra_idx) const

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 185 of file Array.cc.

References compute_index(), and ra_idx.

◆ compute_index() [2/3]

template<typename T >
octave_idx_type Array< T >::compute_index ( octave_idx_type  i,
octave_idx_type  j 
) const

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 170 of file Array.cc.

References compute_index().

◆ compute_index() [3/3]

template<typename T >
octave_idx_type Array< T >::compute_index ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const

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 177 of file Array.cc.

References compute_index().

◆ compute_index_unchecked()

template<typename T >
octave_idx_type Array< T >::compute_index_unchecked ( const Array< octave_idx_type > &  ra_idx) const
inline

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 463 of file Array.h.

References dim_vector::compute_index(), octave_base_value::numel(), and ra_idx.

◆ data()

template<typename T >
const T* Array< T >::data ( void  ) const
inline

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 581 of file Array.h.

Referenced by Cell::Cell(), idx_vector::idx_mask_rep::idx_mask_rep(), SparseComplexMatrix::abs(), SparseMatrix::abs(), SparseBoolMatrix::any(), mxArray_octave_value::array_to_string(), octave_bool_matrix::as_mxArray(), octave_cell::as_mxArray(), octave_char_matrix::as_mxArray(), octave_complex_matrix::as_mxArray(), octave_float_complex_matrix::as_mxArray(), octave_float_matrix::as_mxArray(), octave_matrix::as_mxArray(), octave_struct::as_mxArray(), octave_scalar_struct::as_mxArray(), Array< T >::assign(), binmap(), blkmm_internal(), MArray< double >::changesign(), convert_cdata(), DiagArray2< T >::data(), SparseComplexMatrix::dinverse(), SparseMatrix::dinverse(), octave::ft_manager::do_get_font(), do_merge(), do_mm_binary_op(), do_mx_check(), do_sm_binary_op(), octave::opengl_selector::draw_image(), octave::opengl_renderer::draw_marker(), octave::opengl_renderer::draw_patch(), octave::opengl_renderer::draw_surface(), F__native2unicode__(), F__pchip_deriv__(), F__unicode2native__(), octave::opengl_selector::fake_text(), Fbase64_encode(), Fdot(), Fellipj(), filter(), Fordschur(), ComplexMatrix::fourier(), FloatComplexMatrix::fourier(), ComplexMatrix::fourier2d(), FloatComplexMatrix::fourier2d(), Funicode_idx(), mxArray_octave_value::get_string(), MArray< T >::idx_add(), MArray< T >::idx_add_nd(), ComplexMatrix::ifourier(), FloatComplexMatrix::ifourier(), ComplexMatrix::ifourier2d(), FloatComplexMatrix::ifourier2d(), Sparse< T >::index(), octave_char_matrix::index_vector(), qr< T >::insert_col(), kron(), Array< T >::lookup(), octinternal_do_mul_pm_sm(), octinternal_do_mul_sm_pm(), operator*(), ComplexColumnVector::operator+=(), FloatComplexColumnVector::operator+=(), FloatComplexMatrix::operator+=(), FloatComplexRowVector::operator+=(), ComplexMatrix::operator+=(), ComplexRowVector::operator+=(), operator-(), ComplexColumnVector::operator-=(), FloatComplexColumnVector::operator-=(), FloatComplexMatrix::operator-=(), FloatComplexRowVector::operator-=(), ComplexMatrix::operator-=(), ComplexRowVector::operator-=(), boolMatrix::operator==(), charMatrix::operator==(), ColumnVector::operator==(), ComplexColumnVector::operator==(), ComplexMatrix::operator==(), ComplexRowVector::operator==(), FloatColumnVector::operator==(), FloatComplexColumnVector::operator==(), FloatComplexMatrix::operator==(), FloatComplexRowVector::operator==(), FloatMatrix::operator==(), FloatRowVector::operator==(), Matrix::operator==(), RowVector::operator==(), qs_preprocess(), qs_replace(), qs_search(), octave::opengl_renderer::render_text(), octave_perm_matrix::save_binary(), save_mat5_binary_element(), octave::opengl_renderer::set_clipbox(), octave::opengl_renderer::set_color(), octave::rand::set_internal_state(), octave::opengl_renderer::setup_opengl_transformation(), stack_complex_matrix(), SparseComplexMatrix::tinverse(), SparseMatrix::tinverse(), unstack_complex_matrix(), lu< T >::update_piv(), octave::opengl_renderer::patch_tessellator::vertex(), octave::stream::write(), and xgemm().

◆ delete_elements() [1/3]

template<typename T >
void Array< T >::delete_elements ( const Array< idx_vector > &  ia)

Dispatcher to the above two.

Definition at line 1486 of file Array.cc.

References Array< T >::numel().

◆ delete_elements() [2/3]

template<typename T >
void Array< T >::delete_elements ( const idx_vector i)

◆ delete_elements() [3/3]

template<typename T >
void Array< T >::delete_elements ( int  dim,
const idx_vector i 
)

◆ diag() [1/2]

template<typename T >
Array< T > Array< T >::diag ( octave_idx_type  k = 0) const

Get the kth super or subdiagonal.

The zeroth diagonal is the ordinary diagonal.

Definition at line 2528 of file Array.cc.

References abs(), d, elem, n, and dim_vector::ndims().

Referenced by Cell::diag(), octave_base_scalar< ST >::diag(), boolMatrix::diag(), boolNDArray::diag(), charNDArray::diag(), ComplexNDArray::diag(), NDArray::diag(), FloatComplexNDArray::diag(), FloatNDArray::diag(), intNDArray< T >::diag(), and Fdiag().

◆ diag() [2/2]

template<typename T >
Array< T > Array< T >::diag ( octave_idx_type  m,
octave_idx_type  n 
) const

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 2614 of file Array.cc.

References m, min(), n, numel(), retval, and Array< T >::xelem().

◆ dim1()

template<typename T >
octave_idx_type Array< T >::dim1 ( void  ) const
inline

Definition at line 414 of file Array.h.

Referenced by Array< T >::assign(), PermMatrix::numel(), and PermMatrix::rows().

◆ dim2()

◆ dim3()

template<typename T >
octave_idx_type Array< T >::dim3 ( void  ) const
inline

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 431 of file Array.h.

Referenced by octave::ft_text_renderer::process_character(), and octave::ft_text_renderer::render().

◆ dims()

template<typename T >
const dim_vector& Array< T >::dims ( void  ) const
inline

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

Definition at line 453 of file Array.h.

Referenced by idx_vector::idx_mask_rep::idx_mask_rep(), idx_vector::idx_vector_rep::idx_vector_rep(), NDArray::NDArray(), octave::math::airy(), Array< T >::assign(), octave_map::assign(), binmap(), octave::math::biry(), bitopxx(), Array< T >::cat(), FloatNDArray::concat(), charNDArray::concat(), conv_to_int_array(), convolve(), octave_map::delete_elements(), octave::math::do_bessel(), do_bitpack(), do_bsxfun_op(), octave_map::do_cat(), do_merge(), do_mm_binary_op(), do_numeric_lookup(), do_rand(), do_rc_map(), octave::do_simple_cellfun(), do_sm_binary_op(), do_strcmp_fun(), do_tril(), do_triu(), octave::opengl_renderer::draw_surface(), octave_char_matrix_str::edit_display(), elem_xpow(), encode_bool_image(), Fcell2struct(), Fcomplex(), Fellipj(), filter(), find_nonzero_elem_idx(), Fis_same_file(), Fisa(), Fisargout(), Fisfield(), Flookup(), ComplexNDArray::fourier(), FloatComplexNDArray::fourier(), FloatNDArray::fourier(), ComplexNDArray::fourier2d(), FloatComplexNDArray::fourier2d(), FloatNDArray::fourier2d(), ComplexNDArray::fourierNd(), FloatComplexNDArray::fourierNd(), FloatNDArray::fourierNd(), Fregexprep(), Frepelems(), Fstr2double(), Fstrfind(), Fstrrep(), Fstruct(), Funicode_idx(), hex2num(), MArray< T >::idx_add_nd(), ComplexNDArray::ifourier(), FloatComplexNDArray::ifourier(), FloatNDArray::ifourier(), ComplexNDArray::ifourier2d(), FloatComplexNDArray::ifourier2d(), FloatNDArray::ifourier2d(), ComplexNDArray::ifourierNd(), FloatComplexNDArray::ifourierNd(), FloatNDArray::ifourierNd(), octave_map::index(), gepbalance< T >::init(), Array< T >::insert(), ComplexNDArray::insert(), FloatComplexNDArray::insert(), is_handle_visible(), ishghandle(), Array< T >::lookup(), octave_float_matrix::map(), octave_matrix::map(), octave::cdef_object::map_value(), num2hex(), oct_catop_matrix_struct(), oct_catop_struct_matrix(), octave_print_internal(), octcellregexp(), operator<<(), octave_map::permute(), octave_cell::print_raw(), octave_map::setfield(), sizes_cmp(), try_cellfun_internal_ops(), and x_el_div().

◆ elem() [1/8]

template<typename T >
T& Array< T >::elem ( const Array< octave_idx_type > &  ra_idx)
inline

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 510 of file Array.h.

References Array< T >::elem(), and ra_idx.

◆ elem() [2/8]

template<typename T >
crefT Array< T >::elem ( const Array< octave_idx_type > &  ra_idx) const
inline

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 537 of file Array.h.

References ra_idx, and Array< T >::xelem().

◆ elem() [3/8]

template<typename T >
T& Array< T >::elem ( octave_idx_type  i,
octave_idx_type  j 
)
inline

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 505 of file Array.h.

References Array< T >::elem().

Referenced by Array< T >::elem().

◆ elem() [4/8]

template<typename T >
crefT Array< T >::elem ( octave_idx_type  i,
octave_idx_type  j 
) const
inline

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 531 of file Array.h.

◆ elem() [5/8]

template<typename T >
T& Array< T >::elem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inline

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 507 of file Array.h.

References elem.

◆ elem() [6/8]

template<typename T >
crefT Array< T >::elem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inline

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 534 of file Array.h.

◆ elem() [7/8]

template<typename T >
T& Array< T >::elem ( octave_idx_type  n)
inline

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 499 of file Array.h.

References n.

Referenced by ComplexMatrix::ComplexMatrix(), FloatComplexMatrix::FloatComplexMatrix(), FloatMatrix::FloatMatrix(), Matrix::Matrix(), Sparse< T >::Sparse(), ComplexNDArray::all_integers(), FloatComplexNDArray::all_integers(), FloatNDArray::all_integers(), aepbalance< T >::balancing_matrix(), octave_complex_matrix::char_array_value(), octave_float_complex_matrix::char_array_value(), octave_float_matrix::char_array_value(), octave_range::char_array_value(), octave_matrix::char_array_value(), ComplexDiagMatrix::column(), DiagMatrix::column(), FloatComplexDiagMatrix::column(), FloatDiagMatrix::column(), ComplexMatrix::column_is_real_only(), FloatComplexMatrix::column_is_real_only(), ComplexMatrix::column_max(), Matrix::column_max(), FloatComplexMatrix::column_max(), FloatMatrix::column_max(), ComplexMatrix::column_min(), Matrix::column_min(), FloatComplexMatrix::column_min(), FloatMatrix::column_min(), NDArray::concat(), FloatNDArray::concat(), charNDArray::concat(), conj(), conv_to_int_array(), ddaspk_f(), ddaspk_j(), ddasrt_j(), ddassl_f(), ddassl_j(), delete_graphics_objects(), ComplexMatrix::determinant(), FloatComplexMatrix::determinant(), FloatMatrix::determinant(), DiagArray2< T >::dgelem(), LSODE::do_integrate(), Array< T >::elem(), DiagArray2< T >::elem(), ComplexRowVector::extract(), FloatComplexRowVector::extract(), FloatRowVector::extract(), ComplexDiagMatrix::extract(), charMatrix::extract(), DiagMatrix::extract(), FloatComplexDiagMatrix::extract(), FloatDiagMatrix::extract(), ComplexColumnVector::extract(), FloatComplexColumnVector::extract(), FloatColumnVector::extract(), ComplexRowVector::extract_n(), FloatComplexRowVector::extract_n(), FloatRowVector::extract_n(), ComplexColumnVector::extract_n(), FloatComplexColumnVector::extract_n(), FloatColumnVector::extract_n(), F__player_play__(), F__player_playblocking__(), ComplexDiagMatrix::fill(), FloatComplexDiagMatrix::fill(), FloatDiagMatrix::fill(), DiagMatrix::fill(), qr< T >::form(), SparseComplexMatrix::fsolve(), Fsymrcm(), text::properties::get___fontsize_points__(), Givens(), FloatEIG::init(), EIG::init(), ComplexColumnVector::insert(), ColumnVector::insert(), FloatComplexColumnVector::insert(), FloatColumnVector::insert(), FloatComplexMatrix::insert(), FloatComplexRowVector::insert(), FloatRowVector::insert(), FloatMatrix::insert(), ComplexMatrix::insert(), ComplexNDArray::insert(), FloatComplexNDArray::insert(), ComplexRowVector::insert(), RowVector::insert(), Matrix::insert(), DASPK::integrate(), DASSL::integrate(), DASRT::integrate(), ComplexDiagMatrix::inverse(), DiagMatrix::inverse(), FloatComplexDiagMatrix::inverse(), FloatDiagMatrix::inverse(), ComplexMatrix::ishermitian(), FloatMatrix::issymmetric(), octave_bool_matrix::load_ascii(), octave_cell::load_ascii(), octave_cell::load_binary(), octave_bool_matrix::load_hdf5(), lsode_f(), ComplexMatrix::lssolve(), FloatComplexMatrix::lssolve(), FloatMatrix::lssolve(), Matrix::lssolve(), ltsolve(), matrix_real_probe(), SparseBoolMatrix::matrix_value(), SparseComplexMatrix::max(), SparseMatrix::max(), ComplexColumnVector::max(), ComplexRowVector::max(), FloatComplexColumnVector::max(), FloatColumnVector::max(), FloatComplexRowVector::max(), FloatRowVector::max(), SparseComplexMatrix::min(), SparseMatrix::min(), ComplexColumnVector::min(), ComplexRowVector::min(), FloatComplexColumnVector::min(), FloatColumnVector::min(), FloatComplexRowVector::min(), FloatRowVector::min(), boolMatrix::operator!(), intNDArray< T >::operator!(), PermMatrix::operator()(), operator*(), ComplexMatrix::operator+=(), FloatComplexMatrix::operator+=(), FloatMatrix::operator+=(), ComplexMatrix::operator-=(), FloatComplexMatrix::operator-=(), FloatMatrix::operator-=(), operator<<(), operator>>(), octave::bp_table::parse_dbfunction_params(), ComplexDiagMatrix::pseudo_inverse(), ComplexMatrix::pseudo_inverse(), DiagMatrix::pseudo_inverse(), Matrix::pseudo_inverse(), FloatComplexMatrix::pseudo_inverse(), FloatMatrix::pseudo_inverse(), FloatComplexDiagMatrix::pseudo_inverse(), FloatDiagMatrix::pseudo_inverse(), read_mat_ascii_data(), ComplexDiagMatrix::row(), DiagMatrix::row(), FloatComplexDiagMatrix::row(), FloatDiagMatrix::row(), ComplexMatrix::row_is_real_only(), FloatComplexMatrix::row_is_real_only(), ComplexMatrix::row_max(), Matrix::row_max(), FloatComplexMatrix::row_max(), FloatMatrix::row_max(), ComplexMatrix::row_min(), Matrix::row_min(), FloatComplexMatrix::row_min(), FloatMatrix::row_min(), octave_cell::save_ascii(), octave_cell::save_binary(), octave_cell::save_hdf5(), try_cellfun_internal_ops(), text::properties::update_fontunits(), utsolve(), and x_el_div().

◆ elem() [8/8]

template<typename T >
crefT Array< T >::elem ( octave_idx_type  n) const
inline

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 529 of file Array.h.

References n.

◆ fill()

template<typename T >
void Array< T >::fill ( const T &  val)

Definition at line 73 of file Array.cc.

References numel().

Referenced by idx_vector::idx_scalar_rep::sort_idx().

◆ find() [1/2]

◆ find() [2/2]

Array< octave_idx_type > Array< idx_vector >::find ( octave_idx_type  ,
bool   
) const

Definition at line 42 of file Array-idx-vec.cc.

◆ fortran_vec() [1/2]

template<typename T >
T * Array< T >::fortran_vec ( void  )

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 1740 of file Array.cc.

◆ fortran_vec() [2/2]

template<typename T >
const T* Array< T >::fortran_vec ( void  ) const
inline

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 583 of file Array.h.

Referenced by lu< T >::lu(), NDArray::NDArray(), octave::math::sparse_lu< lu_type >::sparse_lu(), SparseBoolMatrix::any(), octave_uint64_matrix::array_value(), idx_vector::idx_vector_rep::as_array(), mxArray_number::as_octave_value(), mxArray_struct::as_octave_value(), mxArray_cell::as_octave_value(), Sparse< T >::assign(), aepbalance< T >::balancing_matrix(), octave::base64_decode(), binmap(), blkmm_internal(), octave_uint64_matrix::bool_array_value(), SparseComplexMatrix::bsolve(), SparseMatrix::bsolve(), octave::math::sparse_qr< SPARSE_T >::sparse_qr_rep< SPARSE_T >::C(), cam2xform(), octave_uint64_matrix::char_array_value(), octave::chol2inv_internal(), idx_vector::complement(), octave_uint64_matrix::complex_array_value(), octave_uint64_matrix::complex_matrix_value(), convert_cdata(), convolve(), Array< T >::delete_elements(), ComplexMatrix::determinant(), Matrix::determinant(), FloatComplexMatrix::determinant(), FloatMatrix::determinant(), SparseComplexMatrix::determinant(), SparseMatrix::determinant(), dmsolve_insert(), dmsolve_permute(), do_bitpack(), do_bitunpack(), do_bsxfun_op(), octave::rand::do_float_nd_array(), DASPK::do_integrate(), DASSL::do_integrate(), LSODE::do_integrate(), DefQuad::do_integrate(), IndefQuad::do_integrate(), FloatDefQuad::do_integrate(), FloatIndefQuad::do_integrate(), do_merge(), octave::rand::do_nd_array(), do_repelems(), octave::base_stream::do_scanf(), octave::do_scanf_conv(), do_tril(), do_triu(), octave::rand::do_vector(), octave::opengl_renderer::draw_patch(), EigsComplexNonSymmetricFunc(), EigsComplexNonSymmetricMatrix(), EigsComplexNonSymmetricMatrixShift(), EigsRealNonSymmetricFunc(), EigsRealNonSymmetricMatrix(), EigsRealNonSymmetricMatrixShift(), EigsRealSymmetricFunc(), EigsRealSymmetricMatrix(), EigsRealSymmetricMatrixShift(), encode_bool_image(), encode_indexed_images(), octave_fields::equal_up_to_order(), F__delaunayn__(), F__dsearchn__(), F__glpk__(), F__icholt__(), F__iluc__(), F__ilutp__(), F__magick_finfo__(), F__pchip_deriv__(), F__voronoi__(), SparseComplexMatrix::factorize(), SparseMatrix::factorize(), Famd(), Faudioread(), Fconvhulln(), Fdot(), Fellipj(), filter(), Array< T >::find(), find_starting_node(), ComplexMatrix::finverse(), Matrix::finverse(), FloatComplexMatrix::finverse(), FloatMatrix::finverse(), octave_uint64_matrix::float_array_value(), octave_uint64_matrix::float_complex_array_value(), octave_uint64_matrix::float_complex_matrix_value(), octave_uint64_matrix::float_matrix_value(), Fordschur(), DiagArray2< T >::fortran_vec(), ComplexNDArray::fourier(), NDArray::fourier(), FloatComplexNDArray::fourier(), FloatNDArray::fourier(), ComplexMatrix::fourier(), Matrix::fourier(), FloatComplexMatrix::fourier(), FloatMatrix::fourier(), ComplexMatrix::fourier2d(), ComplexNDArray::fourier2d(), Matrix::fourier2d(), NDArray::fourier2d(), FloatComplexMatrix::fourier2d(), FloatComplexNDArray::fourier2d(), FloatMatrix::fourier2d(), FloatNDArray::fourier2d(), ComplexNDArray::fourierNd(), NDArray::fourierNd(), FloatComplexNDArray::fourierNd(), FloatNDArray::fourierNd(), Fqz(), Frandperm(), ComplexMatrix::fsolve(), FloatComplexMatrix::fsolve(), FloatMatrix::fsolve(), Matrix::fsolve(), SparseComplexMatrix::fsolve(), SparseMatrix::fsolve(), Fsymrcm(), octave::rand::get_internal_state(), octave::opengl_renderer::get_pixels(), gsvd< T >::ggsvd(), EIG::hermitian_init(), FloatEIG::hermitian_init(), ichol_t(), MArray< T >::idx_add_nd(), ComplexNDArray::ifourier(), FloatComplexNDArray::ifourier(), FloatNDArray::ifourier(), ComplexMatrix::ifourier(), Matrix::ifourier(), FloatComplexMatrix::ifourier(), FloatMatrix::ifourier(), ComplexMatrix::ifourier2d(), ComplexNDArray::ifourier2d(), Matrix::ifourier2d(), NDArray::ifourier2d(), FloatComplexMatrix::ifourier2d(), FloatComplexNDArray::ifourier2d(), FloatMatrix::ifourier2d(), FloatNDArray::ifourier2d(), ComplexNDArray::ifourierNd(), NDArray::ifourierNd(), FloatComplexNDArray::ifourierNd(), FloatNDArray::ifourierNd(), ilu_crout(), ilu_tp(), img_float2uint(), Range::index(), Array< T >::index(), FloatEIG::init(), hess< T >::init(), EIG::init(), chol< T >::init(), gepbalance< T >::init(), schur< T >::init(), qr< T >::init(), qrp< T >::init(), CollocWt::init(), qr< T >::insert_col(), qr< T >::insert_row(), DASRT::integrate(), ComplexDiagMatrix::inverse(), DiagMatrix::inverse(), kron(), octave_char_matrix_str::load_ascii(), octave_char_matrix_str::load_binary(), Array< T >::lookup(), ComplexMatrix::lssolve(), FloatComplexMatrix::lssolve(), FloatMatrix::lssolve(), Matrix::lssolve(), ComplexMatrix::ltsolve(), FloatComplexMatrix::ltsolve(), FloatMatrix::ltsolve(), Matrix::ltsolve(), LuAminusSigmaB(), Cell::map(), Array< T >::map(), octave_uint64_matrix::matrix_value(), num2hex(), octave::octave_jit_paren_subsasgn_impl(), operator*(), ComplexColumnVector::operator+=(), FloatComplexColumnVector::operator+=(), FloatComplexMatrix::operator+=(), FloatComplexRowVector::operator+=(), ComplexMatrix::operator+=(), ComplexRowVector::operator+=(), ComplexColumnVector::operator-=(), FloatComplexColumnVector::operator-=(), FloatComplexMatrix::operator-=(), FloatComplexRowVector::operator-=(), ComplexMatrix::operator-=(), ComplexRowVector::operator-=(), PermMatrix::pos_power(), octave::math::sparse_qr< SPARSE_T >::sparse_qr_rep< SPARSE_T >::Q(), qs_replace(), ComplexMatrix::rcond(), Matrix::rcond(), FloatComplexMatrix::rcond(), FloatMatrix::rcond(), read_indexed_images(), read_mat5_binary_element(), read_mat_binary_data(), reinterpret_copy(), reinterpret_int_copy(), Array< T >::resize(), Array< T >::resize1(), Array< T >::resize2(), octave_char_matrix_str::save_ascii(), log_scaler::scale(), neg_log_scaler::scale(), Array< T >::sort(), string_vector::sort(), idx_vector::idx_vector_rep::sort_idx(), Range::sort_internal(), Array< T >::sort_rows_idx(), sqrtm_utri_inplace(), stack_complex_matrix(), sub2ind(), SparseBoolMatrix::sum(), Sylvester(), FloatEIG::symmetric_init(), EIG::symmetric_init(), ComplexMatrix::tinverse(), Matrix::tinverse(), FloatComplexMatrix::tinverse(), FloatMatrix::tinverse(), QtHandles::Utils::toRgb(), Array< T >::transpose(), SparseComplexMatrix::trisolve(), SparseMatrix::trisolve(), unstack_complex_matrix(), lu< T >::update(), qr< T >::update(), lu< T >::update_piv(), ComplexMatrix::utsolve(), FloatComplexMatrix::utsolve(), FloatMatrix::utsolve(), Matrix::utsolve(), viridis_colormap(), and xgemm().

◆ hermitian()

template<typename T >
Array< T > Array< T >::hermitian ( T(*)(const T &)  fcn = nullptr) const

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 1642 of file Array.cc.

References Array< T >::xelem().

Referenced by MArray< T >::hermitian(), and octave::math::sparse_chol< chol_type >::inverse().

◆ index() [1/9]

template<typename T >
Array< T > Array< T >::index ( const Array< idx_vector > &  ia) const

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 823 of file Array.cc.

References Array< T >::numel(), dim_vector::redim(), and retval.

◆ index() [2/9]

template<typename T >
Array<T> Array< T >::index ( const Array< idx_vector > &  ia,
bool  resize_ok 
) const
inline

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 639 of file Array.h.

◆ index() [3/9]

template<typename T >
Array< T > Array< T >::index ( const Array< idx_vector > &  ia,
bool  resize_ok,
const T &  rfv 
) const

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 1085 of file Array.cc.

References dim_vector::alloc(), Array< T >::dimensions, Array< T >::index(), Array< T >::numel(), dim_vector::redim(), and Array< T >::resize().

◆ index() [4/9]

◆ index() [5/9]

template<typename T >
Array<T> Array< T >::index ( const idx_vector i,
bool  resize_ok 
) const
inline

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 624 of file Array.h.

◆ index() [6/9]

template<typename T >
Array< T > Array< T >::index ( const idx_vector i,
bool  resize_ok,
const T &  rfv 
) const

Indexing with possible resizing and fill.

Definition at line 1033 of file Array.cc.

References idx_vector::extent(), Array< T >::index(), idx_vector::is_scalar(), n, numel(), Array< T >::numel(), and Array< T >::resize1().

◆ index() [7/9]

template<typename T >
Array< T > Array< T >::index ( const idx_vector i,
const idx_vector j 
) const

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 765 of file Array.cc.

References octave::err_index_out_of_range(), idx_vector::extent(), Array< T >::fortran_vec(), idx_vector::index(), idx_vector::is_colon(), idx_vector::is_cont_range(), idx_vector::length(), idx_vector::maybe_reduce(), n, numel(), r, dim_vector::redim(), retval, and idx_vector::xelem().

◆ index() [8/9]

template<typename T >
Array<T> Array< T >::index ( const idx_vector i,
const idx_vector j,
bool  resize_ok 
) const
inline

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 631 of file Array.h.

◆ index() [9/9]

template<typename T >
Array< T > Array< T >::index ( const idx_vector i,
const idx_vector j,
bool  resize_ok,
const T &  rfv 
) const

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 1057 of file Array.cc.

References Array< T >::columns(), idx_vector::extent(), Array< T >::index(), idx_vector::is_scalar(), r, dim_vector::redim(), Array< T >::resize2(), and Array< T >::rows().

◆ insert() [1/2]

◆ insert() [2/2]

template<typename T >
Array< T > & Array< T >::insert ( const Array< T > &  a,
octave_idx_type  r,
octave_idx_type  c 
)

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

Definition at line 1563 of file Array.cc.

References Array< T >::columns(), Array< T >::dimensions, Array< T >::ndims(), r, and Array< T >::rows().

◆ instantiation_guard() [1/15]

void Array< Complex >::instantiation_guard ( )
private

Definition at line 97 of file Array-C.cc.

◆ instantiation_guard() [2/15]

void Array< float >::instantiation_guard ( )
private

Definition at line 168 of file Array-f.cc.

◆ instantiation_guard() [3/15]

void Array< FloatComplex >::instantiation_guard ( )
private

Definition at line 97 of file Array-fC.cc.

◆ instantiation_guard() [4/15]

void Array< long >::instantiation_guard ( )
private

Definition at line 53 of file Array-i.cc.

◆ instantiation_guard() [5/15]

void Array< octave_int8 >::instantiation_guard ( )
private

Definition at line 63 of file Array-i.cc.

◆ instantiation_guard() [6/15]

void Array< octave_int16 >::instantiation_guard ( )
private

Definition at line 64 of file Array-i.cc.

◆ instantiation_guard() [7/15]

void Array< octave_int32 >::instantiation_guard ( )
private

Definition at line 65 of file Array-i.cc.

◆ instantiation_guard() [8/15]

void Array< octave_int64 >::instantiation_guard ( )
private

Definition at line 66 of file Array-i.cc.

◆ instantiation_guard() [9/15]

void Array< octave_uint8 >::instantiation_guard ( )
private

Definition at line 73 of file Array-i.cc.

◆ instantiation_guard() [10/15]

void Array< octave_uint16 >::instantiation_guard ( )
private

Definition at line 74 of file Array-i.cc.

◆ instantiation_guard() [11/15]

void Array< octave_uint32 >::instantiation_guard ( )
private

Definition at line 75 of file Array-i.cc.

◆ instantiation_guard() [12/15]

void Array< octave_uint64 >::instantiation_guard ( )
private

Definition at line 76 of file Array-i.cc.

◆ instantiation_guard() [13/15]

void Array< idx_vector >::instantiation_guard ( )
private

Definition at line 44 of file Array-idx-vec.cc.

◆ instantiation_guard() [14/15]

void Array< short >::instantiation_guard ( )
private

Definition at line 47 of file Array-s.cc.

◆ instantiation_guard() [15/15]

template<typename T >
void Array< T >::instantiation_guard
staticprivate

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 2760 of file Array.cc.

◆ ipermute()

template<typename T >
Array<T> Array< T >::ipermute ( const Array< octave_idx_type > &  vec) const
inline

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 567 of file Array.h.

Referenced by MArray< T >::ipermute().

◆ is_nd_vector()

template<typename T >
bool Array< T >::is_nd_vector ( void  ) const
inline

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 576 of file Array.h.

References dim_vector::is_nd_vector().

Referenced by dim_vector::make_nd_vector().

◆ is_shared()

template<typename T >
bool Array< T >::is_shared ( void  )
inline

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 587 of file Array.h.

References Array< T >::ArrayRep::count.

Referenced by mx_el_or_assign(), operator*=(), operator+=(), operator-=(), operator/=(), product_eq(), and quotient_eq().

◆ is_sorted_rows() [1/2]

template<typename T >
sortmode Array< T >::is_sorted_rows ( sortmode  mode = UNSORTED) const

◆ is_sorted_rows() [2/2]

sortmode Array< idx_vector >::is_sorted_rows ( sortmode  ) const

Definition at line 42 of file Array-idx-vec.cc.

◆ isempty()

template<typename T >
bool Array< T >::isempty ( void  ) const
inline

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 572 of file Array.h.

References numel().

Referenced by Array< T >::cat(), Sparse< T >::cat(), octave::ft_text_renderer::compute_bbox(), octave::ft_text_renderer::compute_line_xoffset(), NDArray::concat(), FloatNDArray::concat(), charNDArray::concat(), convolve(), daspk_user_function(), daspk_user_jacobian(), dasrt_user_cf(), dasrt_user_f(), dasrt_user_j(), dassl_user_function(), dassl_user_jacobian(), octave::bp_table::dbstop_process_map_args(), ddaspk_f(), ddasrt_f(), ddassl_f(), do_bsxfun_op(), do_minmax_red_op< boolNDArray >(), do_num2cell(), do_object2cell(), octave::opengl_renderer::draw_axes_boxes(), octave::opengl_renderer::draw_axes_planes(), octave::opengl_renderer::draw_axes_x_grid(), octave::opengl_renderer::draw_axes_y_grid(), octave::opengl_renderer::draw_axes_z_grid(), octave::opengl_renderer::draw_patch(), octave::opengl_renderer::draw_surface(), octave::opengl_renderer::draw_text_background(), EigsComplexNonSymmetricFunc(), EigsComplexNonSymmetricMatrix(), EigsComplexNonSymmetricMatrixShift(), EigsRealNonSymmetricFunc(), EigsRealNonSymmetricMatrix(), EigsRealNonSymmetricMatrixShift(), EigsRealSymmetricFunc(), EigsRealSymmetricMatrix(), EigsRealSymmetricMatrixShift(), F__magick_write__(), Array< T >::find(), find_config_info(), find_nonzero_elem_idx(), axes::properties::get_boundingbox(), uicontrol::properties::get_boundingbox(), uibuttongroup::properties::get_boundingbox(), uipanel::properties::get_boundingbox(), uitable::properties::get_boundingbox(), octave_bool_matrix::load_ascii(), octave_char_matrix_str::load_ascii(), lsode_f(), lsode_user_function(), lsode_user_jacobian(), LuAminusSigmaB(), Range::matrix_value(), octave_print_internal(), octave::textscan::read_format_once(), octave::textscan::scan_string(), octave::opengl_renderer::set_color(), octave_cell::short_disp(), octave::ft_text_renderer::text_to_pixels(), text::properties::update_font(), and val_in_table().

◆ issorted() [1/3]

OCTAVE_API sortmode Array< float >::issorted ( sortmode  mode) const

Definition at line 100 of file Array-f.cc.

References ASCENDING, DESCENDING, octave::math::isnan(), n, numel(), r, and UNSORTED.

◆ issorted() [2/3]

template<typename T >
sortmode Array< T >::issorted ( sortmode  mode = UNSORTED) const

◆ issorted() [3/3]

sortmode Array< idx_vector >::issorted ( sortmode  ) const

Definition at line 42 of file Array-idx-vec.cc.

◆ issquare()

template<typename T >
bool Array< T >::issquare ( void  ) const
inline

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 570 of file Array.h.

Referenced by ComplexMatrix::ishermitian(), and FloatMatrix::issymmetric().

◆ isvector()

template<typename T >
bool Array< T >::isvector ( void  ) const
inline

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 574 of file Array.h.

References dim_vector::isvector().

Referenced by Ffilter(), and sizes_cmp().

◆ jit_array_rep()

template<typename T >
void* Array< T >::jit_array_rep ( void  ) const
inline

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 849 of file Array.h.

References Array< T >::rep.

◆ jit_dimensions()

template<typename T >
octave_idx_type* Array< T >::jit_dimensions ( void  ) const
inline

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 847 of file Array.h.

References Array< T >::dimensions, and dim_vector::to_jit().

◆ jit_ref_count()

template<typename T >
int Array< T >::jit_ref_count ( void  )
inline

WARNING: Only call these functions from jit.

Definition at line 843 of file Array.h.

References Array< T >::ArrayRep::count, Array< T >::rep, and octave::refcount< T >::value().

Referenced by octave::octave_jit_paren_subsasgn_matrix_range().

◆ jit_slice_data()

template<typename T >
T* Array< T >::jit_slice_data ( void  ) const
inline

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 845 of file Array.h.

References Array< T >::slice_data.

Referenced by octave::octave_jit_paren_subsasgn_matrix_range().

◆ linear_slice()

template<typename T >
Array< T > Array< T >::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).

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

Definition at line 281 of file Array.cc.

Referenced by octave_value_list::slice().

◆ lookup() [1/4]

Array< octave_idx_type > Array< idx_vector >::lookup ( const Array< idx_vector > &  ,
sortmode   
) const

Definition at line 42 of file Array-idx-vec.cc.

◆ lookup() [2/4]

template<typename T >
Array< octave_idx_type > Array< T >::lookup ( const Array< T > &  values,
sortmode  mode = UNSORTED 
) const

◆ lookup() [3/4]

template<typename T >
octave_idx_type Array< T >::lookup ( const T &  value,
sortmode  mode = UNSORTED 
) const

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.

Definition at line 2145 of file Array.cc.

References ASCENDING, DESCENDING, octave_sort< T >::descending_compare(), elem, octave_sort< T >::lookup(), n, numel(), octave_sort< T >::set_compare(), and UNSORTED.

Referenced by do_numeric_lookup(), Flookup(), and val_in_table().

◆ lookup() [4/4]

octave_idx_type Array< idx_vector >::lookup ( idx_vector const &  ,
sortmode   
) const

Definition at line 42 of file Array-idx-vec.cc.

◆ make_unique()

◆ map() [1/3]

template<typename T >
template<typename U , typename F >
Array<U> Array< T >::map ( fcn) const
inline

◆ map() [2/3]

template<typename T >
template<typename U >
Array<U> Array< T >::map ( U(&)(const T &)  fcn) const
inline

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 796 of file Array.h.

◆ map() [3/3]

template<typename T >
template<typename U >
Array<U> Array< T >::map ( U(&)(T)  fcn) const
inline

Overloads for function references.

Definition at line 791 of file Array.h.

◆ maybe_economize()

template<typename T >
void Array< T >::maybe_economize ( void  )
inline

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 689 of file Array.h.

References Array< T >::ArrayRep::count, Array< T >::ArrayRep::data, and Array< T >::ArrayRep::len.

◆ mex_get_data()

template<typename T >
void* Array< T >::mex_get_data ( void  ) const
inline

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 705 of file Array.h.

Referenced by octave_cell::mex_get_data().

◆ ndims()

◆ nil_rep()

template<typename T >
Array< T >::ArrayRep * Array< T >::nil_rep ( void  )
staticprivate

Definition at line 42 of file Array.cc.

◆ nnz() [1/2]

octave_idx_type Array< idx_vector >::nnz ( void  ) const

Definition at line 42 of file Array-idx-vec.cc.

◆ nnz() [2/2]

template<typename T >
octave_idx_type Array< T >::nnz ( void  ) const

◆ nth_element() [1/2]

Array< idx_vector > Array< idx_vector >::nth_element ( const idx_vector ,
int   
) const

Definition at line 42 of file Array-idx-vec.cc.

◆ nth_element() [2/2]

template<typename T >
Array< T > Array< T >::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.

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

Definition at line 2306 of file Array.cc.

References ASCENDING, idx_vector::class_range, idx_vector::class_scalar, idx_vector::class_vector, DESCENDING, m, max(), min(), n, nn, octave_sort< T >::nth_element(), numel(), OCTAVE_LOCAL_BUFFER, octave_sort< T >::set_compare(), and UNSORTED.

Referenced by Fnth_element().

◆ numel()

template<typename T >
octave_idx_type Array< T >::numel ( void  ) const
inline

Number of elements in the array.

Definition at line 377 of file Array.h.

Referenced by Array< T >::Array(), QtHandles::ButtonControl::ButtonControl(), Cell::Cell(), ComplexMatrix::ComplexMatrix(), ComplexNDArray::ComplexNDArray(), DiagArray2< T >::DiagArray2(), FloatComplexMatrix::FloatComplexMatrix(), FloatComplexNDArray::FloatComplexNDArray(), FloatNDArray::FloatNDArray(), idx_vector::idx_vector(), idx_vector::idx_vector_rep::idx_vector_rep(), QtHandles::ListBoxControl::ListBoxControl(), NDArray::NDArray(), octave_value_list::octave_value_list(), rec_permute_helper::rec_permute_helper(), QtHandles::SliderControl::SliderControl(), Sparse< T >::Sparse(), octave::math::sparse_lu< lu_type >::sparse_lu(), string_array_property::string_array_property(), text_label_property::text_label_property(), ComplexNDArray::all_integers(), FloatComplexNDArray::all_integers(), FloatNDArray::all_integers(), all_ones(), any_ones(), FloatComplexMatrix::append(), FloatComplexRowVector::append(), FloatMatrix::append(), FloatRowVector::append(), ComplexMatrix::append(), ComplexRowVector::append(), Matrix::append(), RowVector::append(), octave_value_list::array_value(), Array< T >::assign(), binmap(), bitopxx(), QtHandles::boundingBoxToRect(), calc_dimensions(), QtHandles::Canvas::canvasWheelEvent(), MArray< double >::changesign(), PermMatrix::checkelem(), gh_manager::close_all_figures(), boolNDArray::concat(), charNDArray::concat(), ComplexNDArray::concat(), FloatComplexNDArray::concat(), FloatNDArray::concat(), NDArray::concat(), concat(), conv_to_int_array(), convert_cdata(), convert_position(), octave::tree_evaluator::convert_return_list_to_const_vector(), convert_text_position(), daspk_user_function(), daspk_user_jacobian(), dasrt_user_f(), dasrt_user_j(), dassl_user_function(), dassl_user_jacobian(), octave::bp_table::dbstop_process_map_args(), decode_subscripts(), default_numeric_conversion_function(), octave::error_system::default_warning_state(), DEFMETHOD(), DEFMETHODX(), qr< T >::delete_col(), Array< T >::delete_elements(), delete_graphics_objects(), octave::cdef_class::cdef_class_rep::delete_object(), DiagArray2< T >::diag_length(), PermMatrix::dim1(), PermMatrix::dim2(), octave::error_system::display_warning_options(), octave::math::do_bessel(), do_bitpack(), do_bsxfun_op(), octave_map::do_cat(), do_cellslices_nda(), do_cleanup_waitfor_listener(), octave::rand::do_float_nd_array(), children_property::do_init_children(), DASPK::do_integrate(), DASSL::do_integrate(), LSODE::do_integrate(), DefQuad::do_integrate(), FloatDefQuad::do_integrate(), do_mat2cell(), do_mat2cell_nd(), do_merge(), do_minmax_bin_op< charNDArray >(), do_mx_check(), octave::rand::do_nd_array(), do_num2cell_helper(), do_permute(), do_rand(), do_rc_map(), text_label_property::do_set(), children_property::do_set(), octave_sparse_params::do_set_vals(), octave::do_simple_cellfun(), do_strcmp_fun(), octave::rand::do_vector(), chol< T >::downdate(), octave::opengl_renderer::draw(), octave::opengl_renderer::draw_all_lights(), octave::opengl_renderer::draw_line(), octave::opengl_renderer::draw_marker(), octave::opengl_renderer::draw_patch(), octave::opengl_selector::draw_text(), octave::opengl_renderer::draw_text(), EigsComplexNonSymmetricFunc(), EigsComplexNonSymmetricMatrix(), EigsComplexNonSymmetricMatrixShift(), EigsRealNonSymmetricFunc(), EigsRealNonSymmetricMatrix(), EigsRealNonSymmetricMatrixShift(), EigsRealSymmetricFunc(), EigsRealSymmetricMatrix(), EigsRealSymmetricMatrixShift(), elem_xpow(), octave_fields::equal_up_to_order(), gh_manager::execute_callback(), F__contourc__(), F__delaunayn__(), F__event_manager_input_dialog__(), F__event_manager_list_dialog__(), F__expint__(), F__get__(), F__glpk__(), F__go_delete__(), F__go_execute_callback__(), F__go_post_callback__(), F__magick_read__(), F__native2unicode__(), F__ode15__(), F__pchip_deriv__(), F__unicode2native__(), F__voronoi__(), Faudioread(), Fbase64_decode(), Fbase64_encode(), Fccolamd(), Fcell2struct(), Fcellslices(), Fcolamd(), Fcomplex(), Fconvhulln(), Fcsymamd(), Fdbstop(), Fdrawnow(), Fellipj(), Ffilter(), Fget(), octave::load_path::files(), DiagMatrix::fill(), ComplexDiagMatrix::fill(), FloatComplexDiagMatrix::fill(), FloatDiagMatrix::fill(), ComplexColumnVector::fill(), ComplexRowVector::fill(), FloatComplexColumnVector::fill(), FloatComplexRowVector::fill(), FloatRowVector::fill(), FloatColumnVector::fill(), octave::cdef_object_array::fill_empty_values(), filter(), finalize_r(), Array< T >::find(), octave::cdef_class::cdef_class_rep::find_method(), octave::cdef_class::cdef_class_rep::find_methods(), octave::cdef_class::cdef_class_rep::find_names(), find_nonzero_elem_idx(), octave::cdef_class::cdef_class_rep::find_properties(), octave::cdef_class::cdef_class_rep::find_property(), Fis_same_file(), Fisa(), Fisargout(), Fiscolumn(), Fisfield(), Fismatrix(), Fisrow(), Fisscalar(), Fissquare(), Fisvector(), Flookup(), Flu(), Fmatrix_type(), Fndims(), Fnumel(), Fordschur(), octave::curl_transfer::form_data_post(), octave::curl_transfer::form_query_string(), ComplexNDArray::fourier(), FloatComplexNDArray::fourier(), FloatNDArray::fourier(), ComplexNDArray::fourier2d(), FloatComplexNDArray::fourier2d(), FloatNDArray::fourier2d(), Fquadcc(), Fregexprep(), Frepelems(), Freset(), Freshape(), Fresize(), Frmfield(), QtHandles::Utils::fromRgb(), Fset(), Fspparms(), Fstr2double(), Fstrfind(), Fstrrep(), Fsymamd(), Funicode_idx(), Furlread(), Furlwrite(), Fvec(), Fwarning(), octave::cdef_object_scalar::get(), get_children_limits(), base_properties::get_children_of_type(), get_dim_vector(), octave::get_dimensions(), get_region_range(), get_scalar_idx(), octave::get_size(), get_sort_mode(), hex2num(), MArray< T >::idx_add(), ComplexNDArray::ifourier(), FloatComplexNDArray::ifourier(), FloatNDArray::ifourier(), ComplexNDArray::ifourier2d(), FloatComplexNDArray::ifourier2d(), FloatNDArray::ifourier2d(), Array< T >::index(), octave::opengl_renderer::init_gl_context(), ODES::initialize(), base_diff_alg_eqn::initialize(), initialize_r(), ComplexColumnVector::insert(), ColumnVector::insert(), FloatComplexColumnVector::insert(), FloatColumnVector::insert(), FloatComplexRowVector::insert(), FloatRowVector::insert(), FloatComplexMatrix::insert(), FloatMatrix::insert(), intNDArray< octave_uint8 >::insert(), ComplexNDArray::insert(), FloatComplexNDArray::insert(), ComplexRowVector::insert(), RowVector::insert(), ComplexMatrix::insert(), Matrix::insert(), qr< T >::insert_col(), qr< T >::insert_row(), chol< T >::insert_sym(), DASPK::integrate(), DASSL::integrate(), DASRT::integrate(), ComplexMatrix::inverse(), FloatComplexMatrix::inverse(), FloatMatrix::inverse(), octave::math::sparse_chol< chol_type >::inverse(), is_handle_visible(), octave::is_superclass(), PermMatrix::isempty(), ishghandle(), DiagArray2< T >::length(), linspace(), octave_bool_matrix::load_ascii(), octave::scoped_fcn_handle::load_ascii(), octave::scoped_fcn_handle::load_binary(), octave::textscan::lookahead(), Array< T >::lookup(), octave::lookup_classes(), Matrix::lssolve(), ComplexMatrix::lssolve(), FloatMatrix::lssolve(), FloatComplexMatrix::lssolve(), LuAminusSigmaB(), octave::cdef_object::map_value(), ComplexColumnVector::max(), ComplexRowVector::max(), FloatComplexColumnVector::max(), FloatColumnVector::max(), FloatComplexRowVector::max(), FloatRowVector::max(), ComplexColumnVector::min(), ComplexRowVector::min(), FloatComplexColumnVector::min(), FloatColumnVector::min(), FloatComplexRowVector::min(), FloatRowVector::min(), norm1(), null(), num2hex(), numel(), octave_class::numeric_conv(), octave::octave_jit_paren_subsasgn_impl(), octave_print_internal(), octcellregexp(), operator*(), ComplexColumnVector::operator+=(), FloatComplexColumnVector::operator+=(), FloatComplexMatrix::operator+=(), FloatComplexRowVector::operator+=(), ComplexMatrix::operator+=(), ComplexRowVector::operator+=(), ComplexColumnVector::operator-=(), FloatComplexColumnVector::operator-=(), FloatComplexMatrix::operator-=(), FloatComplexRowVector::operator-=(), ComplexMatrix::operator-=(), ComplexRowVector::operator-=(), operator<<(), ColumnVector::operator==(), ComplexColumnVector::operator==(), ComplexMatrix::operator==(), ComplexRowVector::operator==(), FloatColumnVector::operator==(), FloatComplexColumnVector::operator==(), FloatComplexMatrix::operator==(), FloatComplexRowVector::operator==(), FloatMatrix::operator==(), FloatRowVector::operator==(), RowVector::operator==(), operator>>(), octave::bp_table::parse_dbfunction_params(), octave::textscan::parse_options(), PermMatrix::perm_length(), octave_base_diag< DMT, MT >::permute(), Array< T >::permute(), Sparse< T >::permute(), print_DASPK_options(), print_DASRT_options(), print_DASSL_options(), print_LSODE_options(), ComplexMatrix::pseudo_inverse(), Matrix::pseudo_inverse(), FloatComplexMatrix::pseudo_inverse(), FloatMatrix::pseudo_inverse(), qp(), qs_preprocess(), qs_replace(), qs_search(), read_images(), read_indexed_images(), read_mat5_binary_element(), read_mat5_binary_file_header(), octave::textscan::read_until(), octave::type_info::register_type(), figure::properties::remove_child(), octave::ft_text_renderer::render(), octave::opengl_renderer::render_grid(), octave::opengl_renderer::render_tickmarks(), octave::opengl_renderer::render_ticktexts(), safe_comparator(), octave_perm_matrix::save_ascii(), save_mat5_binary_element(), save_mat5_element_length(), octave::textscan::scan_complex(), octave::textscan::scan_string(), QtHandles::Canvas::select_object(), gnuplot_graphics_toolkit::send_quit(), graphics_object::set(), octave::ft_text_renderer::set_color(), annotation_dialog::set_gui_props(), octave::curl_transfer::set_header_fields(), octave::rand::set_internal_state(), octave::ft_text_renderer::set_mode(), octave::error_system::set_warning_option(), PermMatrix::setup(), show_DASPK_options(), show_DASRT_options(), show_DASSL_options(), show_LSODE_options(), sizes_cmp(), octave::textscan::skip_delim(), octave::textscan::skip_whitespace(), ComplexColumnVector::stack(), ColumnVector::stack(), FloatComplexColumnVector::stack(), FloatColumnVector::stack(), FloatComplexMatrix::stack(), FloatMatrix::stack(), ComplexMatrix::stack(), Matrix::stack(), sub2ind(), octave::cdef_object_array::subsasgn(), octave_cell::subsasgn(), octave_struct::subsasgn(), octave_class::subsasgn_common(), octave_struct::subsref(), octave_cell::subsref(), octave_class::subsref(), QtHandles::ButtonControl::toggled(), PermMatrix::transpose(), try_cellfun_internal_ops(), octave_complex_matrix::try_narrowing_conversion(), octave_float_complex_matrix::try_narrowing_conversion(), octave_float_matrix::try_narrowing_conversion(), octave_matrix::try_narrowing_conversion(), chol< T >::update(), lu< T >::update(), qr< T >::update(), QtHandles::ButtonControl::update(), QtHandles::PopupMenuControl::update(), QtHandles::SliderControl::update(), hggroup::update_axis_limits(), base_properties::update_boundingbox(), octave::file_editor_tab::update_lexer_settings(), lu< T >::update_piv(), octave::workspace_model::update_table(), update_text_pos(), QtHandles::Table::updateColumnname(), QtHandles::Table::updateColumnwidth(), QtHandles::Canvas::updateCurrentPoint(), QtHandles::Table::updateRowname(), QtHandles::updateSelection(), array_property::validate(), QtHandles::SliderControl::valueChanged(), vector_norm(), octave::opengl_renderer::patch_tessellator::vertex(), octave::tree_evaluator::visit_complex_for_command(), octave::error_system::warning_query(), octave::stream::write(), write_mat5_cell_array(), x_el_div(), octave::xzip(), and zero_dims_inquire().

◆ operator()() [1/8]

template<typename T >
T& Array< T >::operator() ( const Array< octave_idx_type > &  ra_idx)
inline

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 517 of file Array.h.

References elem, and ra_idx.

◆ operator()() [2/8]

template<typename T >
crefT Array< T >::operator() ( const Array< octave_idx_type > &  ra_idx) const
inline

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 546 of file Array.h.

References elem, and ra_idx.

◆ operator()() [3/8]

template<typename T >
T& Array< T >::operator() ( octave_idx_type  i,
octave_idx_type  j 
)
inline

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 514 of file Array.h.

References elem.

◆ operator()() [4/8]

template<typename T >
crefT Array< T >::operator() ( octave_idx_type  i,
octave_idx_type  j 
) const
inline

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 541 of file Array.h.

References elem.

◆ operator()() [5/8]

template<typename T >
T& Array< T >::operator() ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inline

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 515 of file Array.h.

References elem.

◆ operator()() [6/8]

template<typename T >
crefT Array< T >::operator() ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inline

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 543 of file Array.h.

References elem.

◆ operator()() [7/8]

template<typename T >
T& Array< T >::operator() ( octave_idx_type  n)
inline

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 513 of file Array.h.

References elem, and n.

◆ operator()() [8/8]

template<typename T >
crefT Array< T >::operator() ( octave_idx_type  n) const
inline

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 540 of file Array.h.

References elem, and n.

◆ operator=() [1/2]

template<typename T >
Array<T>& Array< T >::operator= ( Array< T > &&  a)
inline

Definition at line 343 of file Array.h.

References Array< T >::ArrayRep::count.

◆ operator=() [2/2]

◆ optimize_dimensions()

template<typename T >
bool Array< T >::optimize_dimensions ( const dim_vector dv)

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).

Definition at line 2750 of file Array.cc.

References retval.

Referenced by octave_map::cat(), octave_map::index(), octave_map::permute(), octave_map::reshape(), octave_map::squeeze(), and octave_map::transpose().

◆ page()

template<typename T >
Array< T > Array< T >::page ( octave_idx_type  k) const

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

Definition at line 270 of file Array.cc.

References r.

◆ pages()

template<typename T >
octave_idx_type Array< T >::pages ( void  ) const
inline

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 432 of file Array.h.

◆ permute()

template<typename T >
Array< T > Array< T >::permute ( const Array< octave_idx_type > &  vec,
bool  inv = false 
) const

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 431 of file Array.cc.

References dim_vector::alloc(), dim_vector::ndims(), Array< T >::numel(), OCTAVE_LOCAL_BUFFER_INIT, dim_vector::resize(), and retval.

Referenced by Funicode_idx(), octave_base_scalar< ST >::permute(), octave_map::permute(), octave_lazy_index::permute(), and MArray< T >::permute().

◆ print_info()

template<typename T >
void Array< T >::print_info ( std::ostream &  os,
const std::string &  prefix 
) const

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 2734 of file Array.cc.

Referenced by DiagArray2< T >::print_info(), and PermMatrix::print_info().

◆ reshape() [1/2]

template<typename T >
Array<T> Array< T >::reshape ( const dim_vector new_dims) const
inline

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 563 of file Array.h.

◆ reshape() [2/2]

template<typename T >
Array<T> Array< T >::reshape ( octave_idx_type  nr,
octave_idx_type  nc 
) const
inline

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 560 of file Array.h.

Referenced by idx_vector::idx_mask_rep::as_array(), Array< T >::assign(), Fbase64_decode(), Freshape(), Fvec(), octave_map::reshape(), Cell::reshape(), octave_base_scalar< ST >::reshape(), octave_class::reshape(), octave_lazy_index::reshape(), octave_matrix::reshape(), and MArray< T >::reshape().

◆ resize() [1/2]

template<typename T >
void Array< T >::resize ( const dim_vector dv)
inline

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 614 of file Array.h.

References Array< T >::resize().

Referenced by Array< T >::resize().

◆ resize() [2/2]

template<typename T >
void Array< T >::resize ( const dim_vector dv,
const T &  rfv 
)

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 1011 of file Array.cc.

References dim_vector::any_neg(), octave::err_invalid_resize(), Array< T >::fortran_vec(), dim_vector::ndims(), dim_vector::redim(), and rec_resize_helper::resize_fill().

Referenced by DiagArray2< T >::DiagArray2(), octave::math::sparse_lu< lu_type >::sparse_lu(), octave_value_list::array_value(), octave::base64_decode(), bitopxx(), SparseMatrix::bsolve(), call_mex(), Cell::column(), ComplexMatrix::column_max(), Matrix::column_max(), FloatComplexMatrix::column_max(), FloatMatrix::column_max(), ComplexMatrix::column_min(), Matrix::column_min(), FloatComplexMatrix::column_min(), FloatMatrix::column_min(), octave::regexp::compile_internal(), convert_label_position(), convert_text_position(), dmsolve(), dmsolve_permute(), octave::math::do_bessel(), do_cumminmax_red_op(), do_fft(), do_fft2(), do_fftn(), children_property::do_get_children(), DASPK::do_integrate(), DASSL::do_integrate(), LSODE::do_integrate(), do_object2cell(), do_regexp_ptn_string_escapes(), do_regexp_rep_string_escapes(), octave::do_simple_cellfun(), octave::do_string_escapes(), SparseComplexMatrix::dsolve(), SparseMatrix::dsolve(), octave::tree_cell::evaluate(), extract_keyword(), F__glpk__(), F__magick_read__(), Farrayfun(), Fbsxfun(), Fcellfun(), Fdet(), Ffilter(), Fgcd(), Fget(), filter(), find_nonzero_elem_idx(), ComplexMatrix::finverse(), Matrix::finverse(), FloatComplexMatrix::finverse(), FloatMatrix::finverse(), Flu(), Frandperm(), freeze(), Fresize(), Fsize(), SparseComplexMatrix::fsolve(), SparseMatrix::fsolve(), Fwarning(), get_object_dims(), get_ra_idx(), octave::sys::glob(), ichol_t(), MArray< T >::idx_add_nd(), octave::tree_evaluator::ignored_fcn_outputs(), ilu_crout(), ilu_tp(), Array< T >::index(), DASPK::integrate(), DASSL::integrate(), DASRT::integrate(), intmap_to_ov(), linspace(), octave::curl_transfer::list(), octave_bool_matrix::load_hdf5(), octave_cell::load_hdf5(), octave_complex_matrix::load_hdf5(), octave_float_complex_matrix::load_hdf5(), octave_float_matrix::load_hdf5(), octave_matrix::load_hdf5(), octave_char_matrix_str::load_hdf5(), ComplexMatrix::lssolve(), FloatComplexMatrix::lssolve(), FloatMatrix::lssolve(), Matrix::lssolve(), SparseComplexMatrix::ltsolve(), SparseMatrix::ltsolve(), octave::make_indices(), octave_complex_diag_matrix::map(), octave_float_complex_diag_matrix::map(), octave_float_diag_matrix::map(), octave_diag_matrix::map(), SparseComplexMatrix::max(), SparseMatrix::max(), mexCallMATLAB(), SparseComplexMatrix::min(), SparseMatrix::min(), null(), octregexp(), octave::stream_list::open_file_numbers(), octave::base_stream::oscanf(), octave::textscan_format_list::parse_char_class(), octave::type_info::register_type(), octave_map::resize(), octave_base_diag< DMT, MT >::resize(), octave_base_matrix< MT >::resize(), octave_range::resize(), octave_char_matrix_str::resize(), octave_base_sparse< T >::resize(), octave_char_matrix_sq_str::resize(), ComplexColumnVector::resize(), ComplexRowVector::resize(), ColumnVector::resize(), RowVector::resize(), FloatColumnVector::resize(), FloatRowVector::resize(), FloatComplexColumnVector::resize(), FloatComplexRowVector::resize(), DiagArray2< T >::resize(), boolMatrix::resize(), charMatrix::resize(), ComplexMatrix::resize(), FloatComplexMatrix::resize(), Matrix::resize(), FloatMatrix::resize(), charMatrix::row_as_string(), ComplexMatrix::row_max(), Matrix::row_max(), FloatComplexMatrix::row_max(), FloatMatrix::row_max(), ComplexMatrix::row_min(), Matrix::row_min(), FloatComplexMatrix::row_min(), FloatMatrix::row_min(), octave::error_system::set_warning_option(), octave_class::size(), octave_base_scalar< ST >::sort(), Range::sort_internal(), octave_value_list::splice(), octave_char_matrix_str::string_vector_value(), utsolve(), SparseComplexMatrix::utsolve(), SparseMatrix::utsolve(), and octave::sys::windows_glob().

◆ resize1() [1/2]

template<typename T >
void Array< T >::resize1 ( octave_idx_type  n)
inline

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 611 of file Array.h.

References n, and Array< T >::resize1().

Referenced by Array< T >::resize1().

◆ resize1() [2/2]

template<typename T >
void Array< T >::resize1 ( octave_idx_type  n,
const T &  rfv 
)

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 898 of file Array.cc.

References octave::err_invalid_resize(), Array< T >::fortran_vec(), min(), n, nn, and numel().

Referenced by Array< T >::index(), and octave::octave_jit_paren_subsasgn_impl().

◆ resize2() [1/2]

template<typename T >
void Array< T >::resize2 ( octave_idx_type  nr,
octave_idx_type  nc 
)
inline

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 605 of file Array.h.

◆ resize2() [2/2]

template<typename T >
void Array< T >::resize2 ( octave_idx_type  nr,
octave_idx_type  nc,
const T &  rfv 
)

Resizing (with fill).

Definition at line 969 of file Array.cc.

References octave::err_invalid_resize(), Array< T >::fortran_vec(), min(), and r.

Referenced by Array< T >::find(), and Array< T >::index().

◆ resize_fill_value()

template<typename T >
T Array< T >::resize_fill_value ( void  ) const
virtual

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)'

Reimplemented in Cell.

Definition at line 887 of file Array.cc.

◆ rows()

template<typename T >
octave_idx_type Array< T >::rows ( void  ) const
inline

Definition at line 415 of file Array.h.

Referenced by aepbalance< T >::aepbalance(), ComplexMatrix::ComplexMatrix(), FloatComplexMatrix::FloatComplexMatrix(), FloatMatrix::FloatMatrix(), lu< T >::lu(), Matrix::Matrix(), octave::math::airy(), FloatComplexMatrix::append(), FloatMatrix::append(), ComplexMatrix::append(), Matrix::append(), octave::math::biry(), SparseComplexMatrix::bsolve(), SparseMatrix::bsolve(), octave::math::sparse_qr< SPARSE_T >::sparse_qr_rep< SPARSE_T >::C(), octave_char_matrix_str::cellstr_value(), QtHandles::Table::checkBoxClicked(), ComplexMatrix::column_is_real_only(), FloatComplexMatrix::column_is_real_only(), ComplexMatrix::column_max(), FloatComplexMatrix::column_max(), FloatMatrix::column_max(), ComplexMatrix::column_min(), FloatComplexMatrix::column_min(), FloatMatrix::column_min(), convert_cdata(), ComplexMatrix::determinant(), FloatComplexMatrix::determinant(), FloatMatrix::determinant(), octave_complex_matrix::diag(), octave_float_complex_matrix::diag(), octave_float_matrix::diag(), octave_matrix::diag(), ComplexMatrix::diag(), FloatComplexMatrix::diag(), FloatMatrix::diag(), dmsolve_insert(), dmsolve_permute(), octave::math::do_bessel(), do_fftn(), do_repelems(), string_array_property::do_set(), do_sparse_diff(), do_tril(), do_triu(), octave::opengl_renderer::draw_patch(), octave::opengl_renderer::draw_surface(), drawcn(), SparseComplexMatrix::dsolve(), SparseMatrix::dsolve(), elem_xpow(), encode_bool_image(), encode_indexed_images(), F__delaunayn__(), F__event_manager_file_dialog__(), F__event_manager_input_dialog__(), F__pchip_deriv__(), F__voronoi__(), Faudiowrite(), Fconvhulln(), ComplexMatrix::fill(), FloatComplexMatrix::fill(), FloatMatrix::fill(), find_nonzero_elem_idx(), ComplexMatrix::finverse(), FloatComplexMatrix::finverse(), FloatMatrix::finverse(), qr< T >::form(), ComplexMatrix::fourier(), FloatComplexMatrix::fourier(), FloatMatrix::fourier(), ComplexMatrix::fourier2d(), FloatComplexMatrix::fourier2d(), FloatMatrix::fourier2d(), Frepelems(), ComplexMatrix::fsolve(), FloatComplexMatrix::fsolve(), FloatMatrix::fsolve(), Matrix::fsolve(), SparseComplexMatrix::fsolve(), SparseMatrix::fsolve(), EIG::hermitian_init(), FloatEIG::hermitian_init(), ComplexMatrix::ifourier(), FloatComplexMatrix::ifourier(), FloatMatrix::ifourier(), ComplexMatrix::ifourier2d(), FloatComplexMatrix::ifourier2d(), FloatMatrix::ifourier2d(), Sparse< T >::index(), Array< T >::index(), FloatEIG::init(), hess< T >::init(), EIG::init(), chol< T >::init(), gepbalance< T >::init(), schur< T >::init(), qr< T >::init(), qrp< T >::init(), Array< T >::insert(), FloatComplexMatrix::insert(), FloatMatrix::insert(), ComplexMatrix::insert(), ComplexMatrix::inverse(), FloatComplexMatrix::inverse(), FloatMatrix::inverse(), ComplexMatrix::ishermitian(), FloatComplexMatrix::ishermitian(), FloatMatrix::issymmetric(), kron(), ComplexMatrix::lssolve(), FloatComplexMatrix::lssolve(), FloatMatrix::lssolve(), Matrix::lssolve(), ComplexMatrix::ltsolve(), FloatComplexMatrix::ltsolve(), FloatMatrix::ltsolve(), Matrix::ltsolve(), SparseComplexMatrix::ltsolve(), SparseMatrix::ltsolve(), LuAminusSigmaB(), mark_facets(), mark_upper_triangular(), matrix_real_probe(), max(), min(), octave_print_internal(), octave_print_internal_template(), operator*(), ComplexMatrix::operator+=(), FloatComplexMatrix::operator+=(), FloatMatrix::operator+=(), ComplexMatrix::operator-=(), FloatComplexMatrix::operator-=(), FloatMatrix::operator-=(), boolMatrix::operator==(), charMatrix::operator==(), ComplexMatrix::operator==(), FloatComplexMatrix::operator==(), FloatMatrix::operator==(), Matrix::operator==(), QtHandles::pointer_to_qimage(), ComplexMatrix::pseudo_inverse(), FloatComplexMatrix::pseudo_inverse(), FloatMatrix::pseudo_inverse(), ComplexMatrix::rcond(), FloatComplexMatrix::rcond(), FloatMatrix::rcond(), octave::regexp::replace(), ComplexMatrix::row_max(), FloatComplexMatrix::row_max(), FloatMatrix::row_max(), ComplexMatrix::row_min(), FloatComplexMatrix::row_min(), FloatMatrix::row_min(), octave_cell::save_ascii(), octave_char_matrix_str::save_ascii(), save_mat_binary_data(), save_three_d(), sizes_cmp(), sqrtm_utri_inplace(), FloatComplexMatrix::stack(), FloatMatrix::stack(), ComplexMatrix::stack(), Matrix::stack(), stack_complex_matrix(), streameuler2d_internal(), octave_char_matrix_str::string_vector_value(), octave::tree_evaluator::switch_case_label_matches(), Sylvester(), FloatEIG::symmetric_init(), EIG::symmetric_init(), ComplexMatrix::tinverse(), FloatComplexMatrix::tinverse(), FloatMatrix::tinverse(), SparseComplexMatrix::trisolve(), SparseMatrix::trisolve(), octave_bool_matrix::try_narrowing_conversion(), unstack_complex_matrix(), lu< T >::update(), qr< T >::update(), lu< T >::update_piv(), QtHandles::Table::updateColumnname(), QtHandles::Table::updateRowname(), ComplexMatrix::utsolve(), FloatComplexMatrix::utsolve(), FloatMatrix::utsolve(), Matrix::utsolve(), SparseComplexMatrix::utsolve(), SparseMatrix::utsolve(), x_el_div(), xgemm(), and xpow().

◆ size()

template<typename T >
size_type Array< T >::size ( const size_type  d) const
inline

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 442 of file Array.h.

References d.

Referenced by Fdbstatus(), octave::textscan::parse_options(), octave::bp_table::remove_breakpoint(), and octave_value::size().

◆ sort() [1/4]

template<typename T >
Array< T > Array< T >::sort ( Array< octave_idx_type > &  sidx,
int  dim = 0,
sortmode  mode = ASCENDING 
) const

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 1873 of file Array.cc.

References Array< octave_idx_type >, DESCENDING, Array< T >::fortran_vec(), m, dim_vector::numel(), OCTAVE_LOCAL_BUFFER, octave_sort< T >::set_compare(), octave_sort< T >::sort(), and UNSORTED.

◆ sort() [2/4]

Array< idx_vector > Array< idx_vector >::sort ( Array< octave_idx_type > &  sidx,
int  ,
sortmode   
) const

Definition at line 42 of file Array-idx-vec.cc.

◆ sort() [3/4]

◆ sort() [4/4]

Array< idx_vector > Array< idx_vector >::sort ( int  ,
sortmode   
) const

Definition at line 42 of file Array-idx-vec.cc.

◆ sort_rows_idx() [1/2]

◆ sort_rows_idx() [2/2]

Array< octave_idx_type > Array< idx_vector >::sort_rows_idx ( sortmode  ) const

Definition at line 42 of file Array-idx-vec.cc.

◆ squeeze()

template<typename T >
Array< T > Array< T >::squeeze ( void  ) const

Chop off leading singleton dimensions.

Definition at line 117 of file Array.cc.

References dim_vector::resize(), and retval.

Referenced by octave_lazy_index::squeeze(), octave_matrix::squeeze(), boolNDArray::squeeze(), charNDArray::squeeze(), and MArray< T >::squeeze().

◆ test()

template<typename T >
template<typename F , bool zero>
bool Array< T >::test ( fcn) const
inline

Generic any/all test functionality with arbitrary predicate.

Definition at line 802 of file Array.h.

References numel().

◆ test_all() [1/3]

template<typename T >
bool Array< T >::test_all ( bool(&)(const T &)  fcn) const
inline

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 829 of file Array.h.

◆ test_all() [2/3]

template<typename T >
bool Array< T >::test_all ( bool(&)(T)  fcn) const
inline

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 826 of file Array.h.

◆ test_all() [3/3]

template<typename T >
template<typename F >
bool Array< T >::test_all ( fcn) const
inline

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 814 of file Array.h.

Referenced by FloatNDArray::all_elements_are_int_or_inf_or_nan(), FloatNDArray::all_elements_are_zero(), FloatNDArray::all_integers(), FloatNDArray::any_element_is_negative(), FloatNDArray::any_element_is_positive(), and FloatNDArray::any_element_not_one_or_zero().

◆ test_any() [1/3]

template<typename T >
bool Array< T >::test_any ( bool(&)(const T &)  fcn) const
inline

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 823 of file Array.h.

◆ test_any() [2/3]

template<typename T >
bool Array< T >::test_any ( bool(&)(T)  fcn) const
inline

Overloads for function references.

Definition at line 820 of file Array.h.

◆ test_any() [3/3]

template<typename T >
template<typename F >
bool Array< T >::test_any ( fcn) const
inline

Simpler calls.

Definition at line 810 of file Array.h.

Referenced by ComplexNDArray::too_large_for_float().

◆ transpose()

template<typename T >
Array< T > Array< T >::transpose ( void  ) const

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 1599 of file Array.cc.

References rec_permute_helper::blk_trans(), Array< T >::fortran_vec(), and Array< T >::xelem().

Referenced by Fqz(), Sparse< T >::index(), oct_unop_transpose(), Sparse< T >::sort(), boolMatrix::transpose(), charMatrix::transpose(), and MArray< T >::transpose().

◆ xelem() [1/8]

template<typename T >
T& Array< T >::xelem ( const Array< octave_idx_type > &  ra_idx)
inline

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 482 of file Array.h.

References ra_idx.

◆ xelem() [2/8]

template<typename T >
crefT Array< T >::xelem ( const Array< octave_idx_type > &  ra_idx) const
inline

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 485 of file Array.h.

References ra_idx.

◆ xelem() [3/8]

template<typename T >
T& Array< T >::xelem ( octave_idx_type  i,
octave_idx_type  j 
)
inline

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 472 of file Array.h.

◆ xelem() [4/8]

template<typename T >
crefT Array< T >::xelem ( octave_idx_type  i,
octave_idx_type  j 
) const
inline

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 474 of file Array.h.

◆ xelem() [5/8]

template<typename T >
T& Array< T >::xelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inline

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 477 of file Array.h.

◆ xelem() [6/8]

template<typename T >
crefT Array< T >::xelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inline

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 479 of file Array.h.

◆ xelem() [7/8]

template<typename T >
T& Array< T >::xelem ( octave_idx_type  n)
inline

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 469 of file Array.h.

References n.

Referenced by ComplexMatrix::ComplexMatrix(), ComplexNDArray::ComplexNDArray(), FloatComplexMatrix::FloatComplexMatrix(), FloatComplexNDArray::FloatComplexNDArray(), FloatNDArray::FloatNDArray(), idx_vector::idx_vector_rep::idx_vector_rep(), intNDArray< T >::abs(), SparseBoolMatrix::any(), octave_value_list::array_value(), DiagArray2< T >::array_value(), Sparse< T >::array_value(), idx_vector::idx_range_rep::as_array(), idx_vector::idx_mask_rep::as_array(), octave::as_bool_nd_array(), dim_vector::as_column(), octave::as_nd_array(), dim_vector::as_row(), octave::type_info::assign_ops_map(), octave::type_info::assignany_ops_map(), octave::type_info::binary_ops_map(), Cell::cellstr_value(), octave_char_matrix_str::cellstr_value(), octave::chol2inv_internal(), Cell::column(), column_norms(), octave::type_info::compound_binary_ops_map(), DiagArray2< T >::dgxelem(), Array< T >::diag(), dmsolve_extract(), octave_map::do_cat(), do_cellslices_nda(), children_property::do_init_children(), do_mat2cell(), do_mat2cell_2d(), do_mat2cell_nd(), do_num2cell(), do_numeric_lookup(), do_object2cell(), do_rand(), do_rc_map(), children_property::do_set(), Array< T >::elem(), dim_vector::elem(), elem_xpow(), dim_vector::empty_2d(), octave_builtin::execute(), RowVector::extract(), FloatRowVector::extract(), ColumnVector::extract(), FloatColumnVector::extract(), RowVector::extract_n(), FloatRowVector::extract_n(), ColumnVector::extract_n(), FloatColumnVector::extract_n(), F__event_manager_file_dialog__(), F__event_manager_input_dialog__(), F__event_manager_list_dialog__(), F__native2unicode__(), F__unicode2native__(), Famd(), Faudiowrite(), Fcellindexmat(), Fcellslices(), Fcomplex(), octave_fields::fieldnames(), ComplexColumnVector::fill(), ComplexMatrix::fill(), ComplexRowVector::fill(), FloatComplexColumnVector::fill(), FloatComplexMatrix::fill(), FloatComplexRowVector::fill(), FloatMatrix::fill(), FloatRowVector::fill(), FloatColumnVector::fill(), octave::cdef_object_array::fill_empty_values(), find_nonzero_elem_idx(), dim_vector::first_non_singleton(), Flookup(), Fordschur(), qr< T >::form(), SparseComplexMatrix::fsolve(), SparseMatrix::fsolve(), Fstruct2cell(), octave::math::lu< T >::getp(), Array< T >::hermitian(), hex2num(), imag(), Sparse< T >::index(), ComplexColumnVector::insert(), FloatComplexColumnVector::insert(), FloatColumnVector::insert(), FloatComplexMatrix::insert(), FloatComplexRowVector::insert(), FloatRowVector::insert(), FloatMatrix::insert(), ComplexMatrix::insert(), ComplexRowVector::insert(), idx_vector::inverse_permutation(), is_handle_visible(), dim_vector::is_nd_vector(), ishghandle(), dim_vector::isvector(), kron(), linspace(), SparseComplexMatrix::ltsolve(), SparseMatrix::ltsolve(), LuAminusSigmaB(), map_2_xlog2(), Range::matrix_value(), octave::type_info::non_const_unary_ops_map(), norm1(), octave::octave_jit_paren_scalar(), octave::octave_jit_paren_scalar_subsasgn(), octave::octave_jit_paren_subsasgn_matrix_range(), octave_scalar_map::orderfields(), octave_map::orderfields(), octave::math::sparse_qr< SPARSE_T >::sparse_qr_rep< SPARSE_T >::P(), octave::math::lu< T >::P_vec(), octave::math::sparse_lu< lu_type >::Pc_vec(), octave_base_diag< DMT, MT >::permute(), octave::math::sparse_qr< SPARSE_T >::sparse_qr_rep< SPARSE_T >::Pinv(), octave::math::sparse_lu< lu_type >::Pr_vec(), put_int(), qp(), qs_search(), read_mat_binary_data(), row_norms(), intNDArray< T >::signum(), idx_vector::idx_range_rep::sort_idx(), idx_vector::idx_mask_rep::sort_idx(), Cell::string_vector_value(), SparseBoolMatrix::sum(), Array< T >::transpose(), PermMatrix::transpose(), octave::type_info::unary_ops_map(), idx_vector::idx_vector_rep::unconvert(), idx_vector::idx_mask_rep::unconvert(), SparseComplexMatrix::utsolve(), SparseMatrix::utsolve(), DiagArray2< T >::xelem(), xgemm(), and dim_vector::zero_by_zero().

◆ xelem() [8/8]

template<typename T >
crefT Array< T >::xelem ( octave_idx_type  n) const
inline

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 470 of file Array.h.

References n.

Friends And Related Function Documentation

◆ Array

template<typename T >
template<typename U >
friend class Array
friend

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 833 of file Array.h.

Member Data Documentation

◆ dimensions

◆ rep

◆ slice_data

template<typename T >
T* Array< T >::slice_data
protected

Definition at line 228 of file Array.h.

Referenced by Array< T >::Array(), Array< T >::jit_slice_data(), and Array< T >::operator=().

◆ slice_len

template<typename T >
octave_idx_type Array< T >::slice_len
protected

Definition at line 229 of file Array.h.

Referenced by Array< T >::operator=().


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