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

#include "dNDArray.h"

Inheritance diagram for NDArray:
Collaboration diagram for NDArray:

Public Types

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

Public Member Functions

 NDArray (const Array< octave_idx_type > &a, bool zero_based=false, bool negative_to_nan=false)
 
template<typename U >
 NDArray (const Array< U > &a)
 
 NDArray (const charNDArray &)
 
 NDArray (const dim_vector &dv)
 
 NDArray (const dim_vector &dv, double val)
 
template<typename U >
 NDArray (const intNDArray< U > &a)
 
template<typename U >
 NDArray (const MArray< U > &a)
 
 NDArray (const NDArray &a)
 
 NDArray (double *sdata, octave_idx_type slen, octave_idx_type *adims, void *arep)
 
 NDArray (void)
 
NDArray abs (void) const
 
boolNDArray all (int dim=-1) const
 
bool all_elements_are_int_or_inf_or_nan (void) const
 
bool all_elements_are_zero (void) const
 
bool all_integers (double &max_val, double &min_val) const
 
bool all_integers (void) const
 
boolNDArray any (int dim=-1) const
 
bool any_element_is_inf_or_nan (void) const
 
bool any_element_is_nan (void) const
 
bool any_element_is_negative (bool=false) const
 
bool any_element_is_positive (bool=false) const
 
bool any_element_not_one_or_zero (void) const
 
Array< double > as_column (void) const
 Return the array as a column vector. More...
 
Array< double > as_matrix (void) const
 Return the array as a matrix. More...
 
Array< double > as_row (void) const
 Return the array as a row vector. More...
 
NDArraychangesign (void)
 
void clear (const dim_vector &dv)
 
void clear (octave_idx_type r, octave_idx_type c)
 
void clear (void)
 
charNDArray concat (const charNDArray &rb, const Array< octave_idx_type > &ra_idx)
 
ComplexNDArray concat (const ComplexNDArray &rb, const Array< octave_idx_type > &ra_idx)
 
NDArray concat (const NDArray &rb, const Array< octave_idx_type > &ra_idx)
 
NDArray cummax (Array< octave_idx_type > &index, int dim=-1) const
 
NDArray cummax (int dim=-1) const
 
NDArray cummin (Array< octave_idx_type > &index, int dim=-1) const
 
NDArray cummin (int dim=-1) const
 
NDArray cumprod (int dim=-1) const
 
NDArray cumsum (int dim=-1) const
 
NDArray diag (octave_idx_type k=0) const
 
NDArray diag (octave_idx_type m, octave_idx_type n) const
 
NDArray diff (octave_idx_type order=1, int dim=-1) const
 
void fill (const double &val)
 
Array< octave_idx_typefind (octave_idx_type, bool) const
 
ComplexNDArray fourier (int dim=1) const
 
ComplexNDArray fourier2d (void) const
 
ComplexNDArray fourierNd (void) const
 
MArray< double > hermitian (double(*fcn)(const double &)=nullptr) const
 
void idx_add (const idx_vector &idx, const MArray< double > &vals)
 
void idx_add (const idx_vector &idx, double val)
 Performs indexed accumulative addition. More...
 
void idx_add_nd (const idx_vector &idx, const MArray< double > &vals, int dim=-1)
 
void idx_max (const idx_vector &idx, const MArray< double > &vals)
 
void idx_min (const idx_vector &idx, const MArray< double > &vals)
 
ComplexNDArray ifourier (int dim=1) const
 
ComplexNDArray ifourier2d (void) const
 
ComplexNDArray ifourierNd (void) const
 
NDArrayinsert (const NDArray &a, const Array< octave_idx_type > &ra_idx)
 
NDArrayinsert (const NDArray &a, octave_idx_type r, octave_idx_type c)
 
MArray< double > ipermute (const Array< octave_idx_type > &vec) const
 
sortmode is_sorted_rows (sortmode) const
 
boolNDArray isfinite (void) const
 
boolNDArray isinf (void) const
 
boolNDArray isnan (void) 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)
 
NDArray max (Array< octave_idx_type > &index, int dim=-1) const
 
NDArray max (int dim=-1) const
 
NDArray min (Array< octave_idx_type > &index, int dim=-1) const
 
NDArray min (int dim=-1) const
 
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...
 
boolNDArray operator! (void) const
 
NDArrayoperator= (const NDArray &a)
 
MArray< double > permute (const Array< octave_idx_type > &vec, bool inv=false) const
 
NDArray prod (int dim=-1) const
 
MArray< double > reshape (const dim_vector &new_dims) const
 
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
 
NDArray squeeze (void) const
 
NDArray sum (int dim=-1) const
 
NDArray sumsq (int dim=-1) const
 
bool too_large_for_float (void) const
 
MArray< double > transpose (void) const
 
NDArray xsum (int dim=-1) 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
 

Static Public Member Functions

static octave_idx_type compute_index (Array< octave_idx_type > &ra_idx, const dim_vector &dimensions)
 
static void increment_index (Array< octave_idx_type > &ra_idx, const dim_vector &dimensions, int start_dimension=0)
 

Protected Attributes

dim_vector dimensions
 
Array< double >::ArrayRep * rep
 
double * 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< double >::ArrayRep * nil_rep (void)
 

Friends

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

Third dimension

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

Array< double > reshape (octave_idx_type nr, octave_idx_type nc) const
 Size of the specified dimension. More...
 
Array< double > hermitian (double(*fcn)(const double &)=nullptr) const
 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...
 
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...
 
double & xelem (octave_idx_type n)
 Size of the specified dimension. More...
 
crefT xelem (octave_idx_type n) const
 Size of the specified dimension. More...
 
double & 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...
 
double & 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...
 
double & 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...
 
double & checkelem (octave_idx_type n)
 Size of the specified dimension. More...
 
double & checkelem (octave_idx_type i, octave_idx_type j)
 Size of the specified dimension. More...
 
double & checkelem (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 Size of the specified dimension. More...
 
double & checkelem (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...
 
double & elem (octave_idx_type n)
 Size of the specified dimension. More...
 
double & elem (octave_idx_type i, octave_idx_type j)
 Size of the specified dimension. More...
 
double & elem (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 Size of the specified dimension. More...
 
double & elem (const Array< octave_idx_type > &ra_idx)
 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...
 
double & operator() (octave_idx_type n)
 Size of the specified dimension. More...
 
double & operator() (octave_idx_type i, octave_idx_type j)
 Size of the specified dimension. More...
 
double & operator() (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 Size of the specified dimension. More...
 
double & operator() (const Array< octave_idx_type > &ra_idx)
 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< double > column (octave_idx_type k) const
 Extract column: A(:,k+1). More...
 
Array< double > page (octave_idx_type k) const
 Extract page: A(:,:,k+1). More...
 
Array< double > 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...
 
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...
 
const double * data (void) const
 Size of the specified dimension. More...
 
const double * fortran_vec (void) const
 Size of the specified dimension. More...
 
double * 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< double > index (const idx_vector &i) const
 Indexing without resizing. More...
 
Array< double > index (const idx_vector &i, const idx_vector &j) const
 Size of the specified dimension. More...
 
Array< double > index (const Array< idx_vector > &ia) const
 Size of the specified dimension. More...
 
Array< double > index (const idx_vector &i, bool resize_ok, const double &rfv) const
 Indexing with possible resizing and fill. More...
 
Array< double > index (const idx_vector &i, bool resize_ok) const
 Size of the specified dimension. More...
 
Array< double > index (const idx_vector &i, const idx_vector &j, bool resize_ok, const double &rfv) const
 Size of the specified dimension. More...
 
Array< double > index (const idx_vector &i, const idx_vector &j, bool resize_ok) const
 Size of the specified dimension. More...
 
Array< double > index (const Array< idx_vector > &ia, bool resize_ok, const double &rfv) const
 Size of the specified dimension. More...
 
Array< double > index (const Array< idx_vector > &ia, bool resize_ok) const
 Size of the specified dimension. More...
 
virtual double resize_fill_value (void) const
 Size of the specified dimension. More...
 
void resize2 (octave_idx_type nr, octave_idx_type nc, const double &rfv)
 Resizing (with fill). More...
 
void resize2 (octave_idx_type nr, octave_idx_type nc)
 Size of the specified dimension. More...
 
void resize1 (octave_idx_type n, const double &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 double &rfv)
 Size of the specified dimension. More...
 
void resize (const dim_vector &dv)
 Size of the specified dimension. More...
 
void assign (const idx_vector &i, const Array< double > &rhs, const double &rfv)
 Indexed assignment (always with resize & fill). More...
 
void assign (const idx_vector &i, const Array< double > &rhs)
 Size of the specified dimension. More...
 
void assign (const idx_vector &i, const idx_vector &j, const Array< double > &rhs, const double &rfv)
 Size of the specified dimension. More...
 
void assign (const idx_vector &i, const idx_vector &j, const Array< double > &rhs)
 Size of the specified dimension. More...
 
void assign (const Array< idx_vector > &ia, const Array< double > &rhs, const double &rfv)
 Size of the specified dimension. More...
 
void assign (const Array< idx_vector > &ia, const Array< double > &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< double > & insert (const Array< double > &a, const Array< octave_idx_type > &idx)
 Insert an array into another at a specified position. More...
 
Array< double > & insert (const Array< double > &a, octave_idx_type r, octave_idx_type c)
 This is just a special case for idx = [r c 0 ...]. More...
 
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< double > sort (int dim=0, sortmode mode=ASCENDING) const
 Size of the specified dimension. More...
 
Array< double > 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 double &value, sortmode mode=UNSORTED) const
 Do a binary lookup in a sorted array. More...
 
Array< octave_idx_typelookup (const Array< double > &values, sortmode mode=UNSORTED) const
 Ditto, but for an array of values, specializing on the case when values are sorted. More...
 
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< double > 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< U > map (F fcn) const
 Apply function fcn to each element of the Array<T>. More...
 
Array< U > map (U(&fcn)(double)) const
 Overloads for function references. More...
 
Array< U > map (U(&fcn)(const double &)) const
 Size of the specified dimension. More...
 
bool test (F fcn) const
 Generic any/all test functionality with arbitrary predicate. More...
 
bool test_any (F fcn) const
 Simpler calls. More...
 
bool test_any (bool(&fcn)(double)) const
 Overloads for function references. More...
 
bool test_any (bool(&fcn)(const double &)) const
 Size of the specified dimension. More...
 
bool test_all (F fcn) const
 Size of the specified dimension. More...
 
bool test_all (bool(&fcn)(double)) const
 Size of the specified dimension. More...
 
bool test_all (bool(&fcn)(const double &)) 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...
 
double * 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 Array< double > cat (int dim, octave_idx_type n, const Array< double > *array_list)
 Concatenation along a specified (0-based) dimension, equivalent to cat(). More...
 
static void instantiation_guard ()
 Size of the specified dimension. More...
 

Detailed Description

Definition at line 38 of file dNDArray.h.

Member Typedef Documentation

◆ compare_fcn_type

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

Definition at line 212 of file Array.h.

◆ crefT

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

Definition at line 210 of file Array.h.

◆ element_type

typedef double Array< double >::element_type
inherited

Definition at line 202 of file Array.h.

◆ size_type

typedef octave_idx_type Array< double >::size_type
inherited

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

Definition at line 208 of file Array.h.

◆ value_type

typedef double Array< double >::value_type
inherited

Definition at line 204 of file Array.h.

Constructor & Destructor Documentation

◆ NDArray() [1/10]

NDArray::NDArray ( void  )
inline

Definition at line 44 of file dNDArray.h.

◆ NDArray() [2/10]

NDArray::NDArray ( const dim_vector dv)
inline

Definition at line 46 of file dNDArray.h.

◆ NDArray() [3/10]

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

Definition at line 48 of file dNDArray.h.

◆ NDArray() [4/10]

NDArray::NDArray ( const NDArray a)
inline

Definition at line 51 of file dNDArray.h.

◆ NDArray() [5/10]

NDArray::NDArray ( const Array< octave_idx_type > &  a,
bool  zero_based = false,
bool  negative_to_nan = false 
)

◆ NDArray() [6/10]

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

Definition at line 57 of file dNDArray.h.

◆ NDArray() [7/10]

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

Definition at line 60 of file dNDArray.h.

◆ NDArray() [8/10]

template<typename U >
NDArray::NDArray ( const intNDArray< U > &  a)
inlineexplicit

Definition at line 63 of file dNDArray.h.

◆ NDArray() [9/10]

NDArray::NDArray ( const charNDArray a)

Definition at line 89 of file dNDArray.cc.

References n, Array< T >::numel(), and Array< double >::xelem().

◆ NDArray() [10/10]

NDArray::NDArray ( double *  sdata,
octave_idx_type  slen,
octave_idx_type adims,
void *  arep 
)
inline

Definition at line 68 of file dNDArray.h.

Member Function Documentation

◆ abs()

NDArray NDArray::abs ( void  ) const

Definition at line 570 of file dNDArray.cc.

Referenced by Matrix::abs().

◆ all()

boolNDArray NDArray::all ( int  dim = -1) const

Definition at line 395 of file dNDArray.cc.

References mx_inline_all().

Referenced by Matrix::all().

◆ all_elements_are_int_or_inf_or_nan()

bool NDArray::all_elements_are_int_or_inf_or_nan ( void  ) const

Definition at line 342 of file dNDArray.cc.

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

◆ all_elements_are_zero()

bool NDArray::all_elements_are_zero ( void  ) const

Definition at line 336 of file dNDArray.cc.

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

◆ all_integers() [1/2]

bool NDArray::all_integers ( double &  max_val,
double &  min_val 
) const

Definition at line 351 of file dNDArray.cc.

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

Referenced by elem_xpow().

◆ all_integers() [2/2]

bool NDArray::all_integers ( void  ) const

Definition at line 381 of file dNDArray.cc.

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

◆ any()

boolNDArray NDArray::any ( int  dim = -1) const

Definition at line 401 of file dNDArray.cc.

References mx_inline_any().

Referenced by Matrix::any().

◆ any_element_is_inf_or_nan()

bool NDArray::any_element_is_inf_or_nan ( void  ) const

Definition at line 324 of file dNDArray.cc.

References mx_inline_all_finite().

Referenced by Fgsvd(), Fsvd(), and EIG::init().

◆ any_element_is_nan()

bool NDArray::any_element_is_nan ( void  ) const

Definition at line 318 of file dNDArray.cc.

References mx_inline_any_nan().

Referenced by octave_matrix::bool_array_value(), operator!(), and parse_range_spec().

◆ any_element_is_negative()

bool NDArray::any_element_is_negative ( bool  neg_zero = false) const

◆ any_element_is_positive()

bool NDArray::any_element_is_positive ( bool  neg_zero = false) const

◆ any_element_not_one_or_zero()

bool NDArray::any_element_not_one_or_zero ( void  ) const

Definition at line 330 of file dNDArray.cc.

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

Referenced by octave_matrix::bool_array_value().

◆ as_column()

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

Return the array as a column vector.

Definition at line 381 of file Array.h.

◆ as_matrix()

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

Return the array as a matrix.

Definition at line 401 of file Array.h.

◆ as_row()

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

Return the array as a row vector.

Definition at line 391 of file Array.h.

◆ assign() [1/6]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 661 of file Array.h.

◆ assign() [2/6]

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

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

◆ assign() [3/6]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 648 of file Array.h.

◆ assign() [4/6]

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

Indexed assignment (always with resize & fill).

Definition at line 647 of file Array.cc.

◆ assign() [5/6]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 655 of file Array.h.

◆ assign() [6/6]

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

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

◆ byte_size()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 449 of file Array.h.

◆ cat()

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

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

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

Definition at line 753 of file Array.cc.

◆ changesign()

NDArray& NDArray::changesign ( void  )
inline

Definition at line 163 of file dNDArray.h.

References MArray< T >::changesign().

◆ checkelem() [1/8]

double & Array< double >::checkelem ( const Array< octave_idx_type > &  ra_idx)
inherited

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

◆ checkelem() [2/8]

Array< double >::crefT Array< double >::checkelem ( const Array< octave_idx_type > &  ra_idx) const
inherited

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

◆ checkelem() [3/8]

double & Array< double >::checkelem ( octave_idx_type  i,
octave_idx_type  j 
)
inherited

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

◆ checkelem() [4/8]

Array< double >::crefT Array< double >::checkelem ( octave_idx_type  i,
octave_idx_type  j 
) const
inherited

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

◆ checkelem() [5/8]

double & Array< double >::checkelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inherited

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

◆ checkelem() [6/8]

Array< double >::crefT Array< double >::checkelem ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inherited

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

◆ checkelem() [7/8]

double & Array< double >::checkelem ( octave_idx_type  n)
inherited

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

◆ checkelem() [8/8]

Array< double >::crefT Array< double >::checkelem ( octave_idx_type  n) const
inherited

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

◆ clear() [1/3]

void Array< double >::clear ( const dim_vector dv)
inherited

Definition at line 371 of file Array.cc.

◆ clear() [2/3]

void Array< double >::clear ( octave_idx_type  r,
octave_idx_type  c 
)
inlineinherited

Definition at line 373 of file Array.h.

◆ clear() [3/3]

void Array< double >::clear ( void  )
inherited

Definition at line 370 of file Array.cc.

◆ cols()

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

Definition at line 423 of file Array.h.

◆ column()

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

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

Definition at line 552 of file Array.cc.

◆ columns()

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

Definition at line 424 of file Array.h.

◆ compute_index() [1/4]

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

Definition at line 602 of file dNDArray.cc.

References compute_index(), Array< double >::dimensions, and ra_idx.

◆ compute_index() [2/4]

octave_idx_type Array< double >::compute_index ( const Array< octave_idx_type > &  ra_idx) const
inherited

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

◆ compute_index() [3/4]

octave_idx_type Array< double >::compute_index ( octave_idx_type  i,
octave_idx_type  j 
) const
inherited

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

◆ compute_index() [4/4]

octave_idx_type Array< double >::compute_index ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
) const
inherited

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

◆ compute_index_unchecked()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 463 of file Array.h.

◆ concat() [1/3]

◆ concat() [2/3]

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

Definition at line 505 of file dNDArray.cc.

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

◆ concat() [3/3]

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

Definition at line 497 of file dNDArray.cc.

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

◆ cummax() [1/2]

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

Definition at line 473 of file dNDArray.cc.

References mx_inline_cummax().

◆ cummax() [2/2]

NDArray NDArray::cummax ( int  dim = -1) const

Definition at line 467 of file dNDArray.cc.

References mx_inline_cummax().

◆ cummin() [1/2]

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

Definition at line 485 of file dNDArray.cc.

References mx_inline_cummin().

◆ cummin() [2/2]

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

Definition at line 479 of file dNDArray.cc.

References mx_inline_cummin().

◆ cumprod()

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

Definition at line 407 of file dNDArray.cc.

References mx_inline_cumprod().

Referenced by Matrix::cumprod().

◆ cumsum()

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

Definition at line 413 of file dNDArray.cc.

References mx_inline_cumsum().

Referenced by Matrix::cumsum(), and Fcumsum().

◆ data()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 581 of file Array.h.

◆ delete_elements() [1/3]

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

Dispatcher to the above two.

Definition at line 677 of file Array.cc.

◆ delete_elements() [2/3]

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

Deleting elements.

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

Definition at line 671 of file Array.cc.

◆ delete_elements() [3/3]

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

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

Definition at line 674 of file Array.cc.

◆ diag() [1/2]

NDArray NDArray::diag ( octave_idx_type  k = 0) const

Definition at line 609 of file dNDArray.cc.

References Array< T >::diag().

Referenced by Matrix::diag().

◆ diag() [2/2]

NDArray NDArray::diag ( octave_idx_type  m,
octave_idx_type  n 
) const

Definition at line 615 of file dNDArray.cc.

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

◆ diff()

NDArray NDArray::diff ( octave_idx_type  order = 1,
int  dim = -1 
) const

Definition at line 491 of file dNDArray.cc.

References mx_inline_diff().

Referenced by do_diff().

◆ dim1()

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

Definition at line 414 of file Array.h.

◆ dim2()

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

Definition at line 422 of file Array.h.

◆ dim3()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 431 of file Array.h.

◆ dims()

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

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

Definition at line 453 of file Array.h.

◆ elem() [1/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 510 of file Array.h.

◆ elem() [2/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 537 of file Array.h.

◆ elem() [3/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 505 of file Array.h.

◆ elem() [4/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 531 of file Array.h.

◆ elem() [5/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 507 of file Array.h.

◆ elem() [6/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 534 of file Array.h.

◆ elem() [7/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 499 of file Array.h.

◆ elem() [8/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 529 of file Array.h.

◆ fill()

void Array< double >::fill ( const T &  val)
inherited

Definition at line 368 of file Array.cc.

◆ find() [1/2]

Array< octave_idx_type > Array< double >::find ( octave_idx_type  n = -1,
bool  backward = false 
) const
inherited

Find indices of (at most n) nonzero elements.

If n is specified, backward specifies search from backward.

Definition at line 734 of file Array.cc.

◆ find() [2/2]

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

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

◆ fortran_vec() [1/2]

double * Array< double >::fortran_vec ( void  )
inherited

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

◆ fortran_vec() [2/2]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 583 of file Array.h.

◆ fourier()

◆ fourier2d()

◆ fourierNd()

ComplexNDArray NDArray::fourierNd ( void  ) const

◆ hermitian() [1/2]

Array< double > Array< double >::hermitian ( T(*)(const T &)  fcn = nullptr) const
inherited

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

◆ hermitian() [2/2]

MArray<double > MArray< double >::hermitian ( T(*)(const T &)  fcn = nullptr) const
inlineinherited

Definition at line 108 of file MArray.h.

◆ idx_add() [1/2]

void MArray< double >::idx_add ( const idx_vector idx,
const MArray< T > &  vals 
)
inherited

Definition at line 114 of file MArray.cc.

◆ idx_add() [2/2]

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

Performs indexed accumulative addition.

Definition at line 113 of file MArray.cc.

◆ idx_add_nd()

void MArray< double >::idx_add_nd ( const idx_vector idx,
const MArray< T > &  vals,
int  dim = -1 
)
inherited

Definition at line 121 of file MArray.cc.

◆ idx_max()

void MArray< double >::idx_max ( const idx_vector idx,
const MArray< T > &  vals 
)
inherited

Definition at line 119 of file MArray.cc.

◆ idx_min()

void MArray< double >::idx_min ( const idx_vector idx,
const MArray< T > &  vals 
)
inherited

Definition at line 117 of file MArray.cc.

◆ ifourier()

ComplexNDArray NDArray::ifourier ( int  dim = 1) const

Definition at line 131 of file dNDArray.cc.

References ComplexNDArray, Array< double >::dims(), and dim_vector::ndims().

Referenced by do_fft().

◆ ifourier2d()

ComplexNDArray NDArray::ifourier2d ( void  ) const

◆ ifourierNd()

ComplexNDArray NDArray::ifourierNd ( void  ) const

◆ increment_index()

void NDArray::increment_index ( Array< octave_idx_type > &  ra_idx,
const dim_vector dimensions,
int  start_dimension = 0 
)
static

Definition at line 594 of file dNDArray.cc.

References Array< double >::dimensions, and ra_idx.

◆ index() [1/9]

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

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

◆ index() [2/9]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 639 of file Array.h.

◆ index() [3/9]

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

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

◆ index() [4/9]

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

Indexing without resizing.

Definition at line 593 of file Array.cc.

◆ index() [5/9]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 624 of file Array.h.

◆ index() [6/9]

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

Indexing with possible resizing and fill.

Definition at line 623 of file Array.cc.

◆ index() [7/9]

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

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

◆ index() [8/9]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 631 of file Array.h.

◆ index() [9/9]

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

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

◆ insert() [1/4]

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

Insert an array into another at a specified position.

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

Definition at line 684 of file Array.cc.

◆ insert() [2/4]

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

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

Definition at line 687 of file Array.cc.

◆ insert() [3/4]

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

Definition at line 563 of file dNDArray.cc.

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

◆ insert() [4/4]

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

Definition at line 556 of file dNDArray.cc.

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

Referenced by concat().

◆ instantiation_guard() [1/15]

void Array< Complex >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [2/15]

void Array< float >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [3/15]

void Array< FloatComplex >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [4/15]

void Array< long >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [5/15]

void Array< octave_int8 >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [6/15]

void Array< octave_int16 >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [7/15]

void Array< octave_int32 >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [8/15]

void Array< octave_int64 >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [9/15]

void Array< octave_uint8 >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [10/15]

void Array< octave_uint16 >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [11/15]

void Array< octave_uint32 >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [12/15]

void Array< octave_uint64 >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [13/15]

void Array< idx_vector >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [14/15]

void Array< short >::instantiation_guard ( )
privateinherited

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

◆ instantiation_guard() [15/15]

void Array< double >::instantiation_guard
staticprivateinherited

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

◆ ipermute()

MArray<double > MArray< double >::ipermute ( const Array< octave_idx_type > &  vec) const
inlineinherited

Definition at line 100 of file MArray.h.

◆ is_nd_vector()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 576 of file Array.h.

◆ is_shared()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 587 of file Array.h.

◆ is_sorted_rows() [1/2]

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

Ordering is auto-detected or can be specified.

Definition at line 718 of file Array.cc.

◆ is_sorted_rows() [2/2]

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

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

◆ isempty()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 572 of file Array.h.

◆ isfinite()

boolNDArray NDArray::isfinite ( void  ) const

Definition at line 588 of file dNDArray.cc.

◆ isinf()

boolNDArray NDArray::isinf ( void  ) const

Definition at line 582 of file dNDArray.cc.

◆ isnan()

boolNDArray NDArray::isnan ( void  ) const

Definition at line 576 of file dNDArray.cc.

◆ issorted() [1/3]

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

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

◆ issorted() [2/3]

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

Ordering is auto-detected or can be specified.

Definition at line 712 of file Array.cc.

◆ issorted() [3/3]

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

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

◆ issquare()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 570 of file Array.h.

◆ isvector()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 574 of file Array.h.

◆ jit_array_rep()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 849 of file Array.h.

◆ jit_dimensions()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 847 of file Array.h.

◆ jit_ref_count()

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

WARNING: Only call these functions from jit.

Definition at line 843 of file Array.h.

◆ jit_slice_data()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 845 of file Array.h.

◆ linear_slice()

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

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

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

Definition at line 558 of file Array.cc.

◆ lookup() [1/4]

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

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

NaNs get the value N.

Definition at line 726 of file Array.cc.

◆ lookup() [2/4]

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

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

◆ lookup() [3/4]

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

Do a binary lookup in a sorted array.

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

Definition at line 722 of file Array.cc.

◆ lookup() [4/4]

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

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

◆ make_unique()

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

Definition at line 188 of file Array.h.

◆ map() [1/3]

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

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

This function is optimized with a manually unrolled loop.

Definition at line 759 of file Array.h.

◆ map() [2/3]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 796 of file Array.h.

◆ map() [3/3]

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

Overloads for function references.

Definition at line 791 of file Array.h.

◆ max() [1/2]

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

Definition at line 449 of file dNDArray.cc.

References mx_inline_max().

◆ max() [2/2]

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

Definition at line 443 of file dNDArray.cc.

References mx_inline_max().

◆ maybe_economize()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 689 of file Array.h.

◆ mex_get_data()

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

Give a pointer to the data in mex format.

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

Definition at line 705 of file Array.h.

◆ min() [1/2]

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

Definition at line 461 of file dNDArray.cc.

References mx_inline_min().

◆ min() [2/2]

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

Definition at line 455 of file dNDArray.cc.

References mx_inline_min().

◆ ndims()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 589 of file Array.h.

◆ nil_rep()

Array< double >::ArrayRep * Array< double >::nil_rep ( void  )
staticprivateinherited

Definition at line 242 of file Array.cc.

◆ nnz() [1/2]

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

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

◆ nnz() [2/2]

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

Count nonzero elements.

Definition at line 730 of file Array.cc.

◆ nth_element() [1/2]

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

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

◆ nth_element() [2/2]

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

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

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

Definition at line 740 of file Array.cc.

◆ numel()

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

Number of elements in the array.

Definition at line 377 of file Array.h.

◆ operator!()

boolNDArray NDArray::operator! ( void  ) const

◆ operator()() [1/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 517 of file Array.h.

◆ operator()() [2/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 546 of file Array.h.

◆ operator()() [3/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 514 of file Array.h.

◆ operator()() [4/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 541 of file Array.h.

◆ operator()() [5/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 515 of file Array.h.

◆ operator()() [6/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 543 of file Array.h.

◆ operator()() [7/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 513 of file Array.h.

◆ operator()() [8/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 540 of file Array.h.

◆ operator=()

NDArray& NDArray::operator= ( const NDArray a)
inline

Definition at line 72 of file dNDArray.h.

References MArray< T >::operator=().

◆ optimize_dimensions()

bool Array< double >::optimize_dimensions ( const dim_vector dv)
inherited

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

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

Definition at line 838 of file Array.cc.

◆ page()

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

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

Definition at line 554 of file Array.cc.

◆ pages()

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 432 of file Array.h.

◆ permute()

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

Definition at line 96 of file MArray.h.

◆ print_info()

void Array< double >::print_info ( std::ostream &  os,
const std::string &  prefix 
) const
inherited

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

◆ prod()

NDArray NDArray::prod ( int  dim = -1) const

Definition at line 419 of file dNDArray.cc.

References mx_inline_prod().

Referenced by Fprod(), and Matrix::prod().

◆ reshape() [1/2]

MArray<double > MArray< double >::reshape ( const dim_vector new_dims) const
inlineinherited

Definition at line 93 of file MArray.h.

◆ reshape() [2/2]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 560 of file Array.h.

◆ resize() [1/2]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 614 of file Array.h.

◆ resize() [2/2]

void Array< double >::resize ( const dim_vector dv,
const T &  rfv 
)
inherited

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

◆ resize1() [1/2]

void Array< double >::resize1 ( octave_idx_type  n)
inlineinherited

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 611 of file Array.h.

◆ resize1() [2/2]

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

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

◆ resize2() [1/2]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 605 of file Array.h.

◆ resize2() [2/2]

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

Resizing (with fill).

Definition at line 604 of file Array.cc.

◆ resize_fill_value()

double Array< double >::resize_fill_value ( void  ) const
virtualinherited

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

◆ rows()

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

Definition at line 415 of file Array.h.

◆ size()

size_type Array< double >::size ( const size_type  d) const
inlineinherited

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 442 of file Array.h.

◆ sort() [1/4]

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

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

◆ sort() [2/4]

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

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

◆ sort() [3/4]

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

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

◆ sort() [4/4]

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

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

◆ sort_rows_idx() [1/2]

Array< octave_idx_type > Array< double >::sort_rows_idx ( sortmode  mode = ASCENDING) const
inherited

Sort by rows returns only indices.

Definition at line 715 of file Array.cc.

◆ sort_rows_idx() [2/2]

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

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

◆ squeeze()

NDArray NDArray::squeeze ( void  ) const
inline

Definition at line 144 of file dNDArray.h.

References MArray< T >::squeeze().

Referenced by octave_matrix::squeeze().

◆ sum()

NDArray NDArray::sum ( int  dim = -1) const

Definition at line 425 of file dNDArray.cc.

References mx_inline_sum().

Referenced by Fsum(), and Matrix::sum().

◆ sumsq()

NDArray NDArray::sumsq ( int  dim = -1) const

Definition at line 437 of file dNDArray.cc.

References mx_inline_sumsq().

Referenced by Matrix::sumsq().

◆ test()

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

Generic any/all test functionality with arbitrary predicate.

Definition at line 802 of file Array.h.

◆ test_all() [1/3]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 829 of file Array.h.

◆ test_all() [2/3]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 826 of file Array.h.

◆ test_all() [3/3]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 814 of file Array.h.

◆ test_any() [1/3]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 823 of file Array.h.

◆ test_any() [2/3]

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

Overloads for function references.

Definition at line 820 of file Array.h.

◆ test_any() [3/3]

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

Simpler calls.

Definition at line 810 of file Array.h.

◆ too_large_for_float()

bool NDArray::too_large_for_float ( void  ) const

Definition at line 387 of file dNDArray.cc.

References Array< double >::test_any(), and xtoo_large_for_float().

◆ transpose()

MArray<double > MArray< double >::transpose ( void  ) const
inlineinherited

Definition at line 105 of file MArray.h.

◆ xelem() [1/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 482 of file Array.h.

◆ xelem() [2/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 485 of file Array.h.

◆ xelem() [3/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 472 of file Array.h.

◆ xelem() [4/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 474 of file Array.h.

◆ xelem() [5/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 477 of file Array.h.

◆ xelem() [6/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 479 of file Array.h.

◆ xelem() [7/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 469 of file Array.h.

◆ xelem() [8/8]

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

Size of the specified dimension.

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

Equivalent to Octave's 'size (A, DIM)'

Definition at line 470 of file Array.h.

◆ xsum()

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

Definition at line 431 of file dNDArray.cc.

References mx_inline_xsum().

Referenced by Fsum().

Friends And Related Function Documentation

◆ ComplexNDArray

friend class ComplexNDArray
friend

Definition at line 142 of file dNDArray.h.

Referenced by fourier(), fourier2d(), ifourier(), and ifourier2d().

◆ imag

OCTAVE_API NDArray imag ( const ComplexNDArray a)
friend

Definition at line 550 of file dNDArray.cc.

◆ operator<<

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

Definition at line 621 of file dNDArray.cc.

◆ operator>>

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

Definition at line 636 of file dNDArray.cc.

◆ real

OCTAVE_API NDArray real ( const ComplexNDArray a)
friend

Definition at line 544 of file dNDArray.cc.

Member Data Documentation

◆ dimensions

dim_vector Array< double >::dimensions
protectedinherited

Definition at line 217 of file Array.h.

◆ rep

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

Definition at line 219 of file Array.h.

◆ slice_data

double * Array< double >::slice_data
protectedinherited

Definition at line 228 of file Array.h.

◆ slice_len

octave_idx_type Array< double >::slice_len
protectedinherited

Definition at line 229 of file Array.h.


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