23 #if ! defined (octave_dNDArray_h)
24 #define octave_dNDArray_h 1
26 #include "octave-config.h"
52 bool negative_to_nan =
false);
80 bool any_element_is_negative (
bool =
false)
const;
81 bool any_element_is_positive (
bool =
false)
const;
83 bool any_element_is_inf_or_nan (
void)
const;
85 bool all_elements_are_zero (
void)
const;
86 bool all_elements_are_int_or_inf_or_nan (
void)
const;
87 bool all_integers (
double& max_val,
double& min_val)
const;
88 bool all_integers (
void)
const;
89 bool too_large_for_float (
void)
const;
96 NDArray cumprod (
int dim = -1)
const;
100 NDArray xsum (
int dim = -1)
const;
101 NDArray sumsq (
int dim = -1)
const;
146 int start_dimension = 0);
153 friend OCTAVE_API std::ostream&
operator << (std::ostream& os,
194 ComplexNDArray, OCTAVE_API)
octave_idx_type compute_index(octave_idx_type n, const dim_vector &dims)
NDArray(const dim_vector &dv, double val)
bool any_element_not_one_or_zero(void) const
NDArray & changesign(void)
const octave_base_value const Array< octave_idx_type > & ra_idx
std::istream & operator>>(std::istream &is, SparseBoolMatrix &a)
MArray squeeze(void) const
#define BSXFUN_STDREL_DECLS(ARRAY, API)
ComplexNDArray diag(octave_idx_type k=0) const
identity matrix If supplied two scalar respectively For allows like xample val
#define NDND_CMP_OP_DECLS(ND1, ND2, API)
#define SND_BOOL_OP_DECLS(S, ND, API)
intNDArray & insert(const intNDArray< T > &a, octave_idx_type r, octave_idx_type c)
ComplexNDArray concat(NDArray &ra, ComplexNDArray &rb, const Array< octave_idx_type > &ra_idx)
#define NDND_BOOL_OP_DECLS(ND1, ND2, API)
OCTAVE_API NDArray max(double d, const NDArray &m)
intNDArray cumsum(int dim) const
OCTAVE_API NDArray real(const ComplexNDArray &a)
NDArray(double *sdata, octave_idx_type slen, octave_idx_type *adims, void *arep)
#define MARRAY_FORWARD_DEFS(B, R, T)
#define NDS_BOOL_OP_DECLS(ND, S, API)
intNDArray sum(int dim) const
#define NDS_CMP_OP_DECLS(ND, S, API)
calling an anonymous function involves an overhead quite comparable to the overhead of an m file function Passing a handle to a built in function is because the interpreter is not involved in the internal loop For a
NDArray(const intNDArray< U > &a)
intNDArray cummin(int dim=-1) const
#define SND_CMP_OP_DECLS(S, ND, API)
intNDArray diff(octave_idx_type order=1, int dim=-1) const
NDArray squeeze(void) const
void increment_index(Array< octave_idx_type > &ra_idx, const dim_vector &dimensions, int start_dimension)
nd deftypefn *octave_map m
octave_int< T > pow(const octave_int< T > &a, const octave_int< T > &b)
the sparsity preserving column transformation such that that defines the pivoting threshold can be given in which case it defines the c
NDArray(const MArray< U > &a)
OCTAVE_API NDArray imag(const ComplexNDArray &a)
intNDArray cummax(int dim=-1) const
NDArray(const dim_vector &dv)
intNDArray & operator=(const intNDArray< T > &a)
bool any_element_is_nan(void) const
OCTAVE_EXPORT octave_value_list return the value of the option it must match the dimension of the state and the relative tolerance must also be a vector of the same length tem it must match the dimension of the state and the absolute tolerance must also be a vector of the same length The local error test applied at each integration step is xample roup abs(local error in x(i))<
boolNDArray all(int dim=-1) const
template OCTAVE_API std::ostream & operator<<(std::ostream &, const Array< bool > &)
issues an error eealso double
NDArray(const Array< U > &a)
#define BSXFUN_OP2_DECL(OP, ARRAY, ARRAY1, ARRAY2, API)
NDArray(const NDArray &a)
#define BSXFUN_STDOP_DECLS(ARRAY, API)
octave_value operator!(const octave_value &a)
intNDArray prod(int dim) const
OCTAVE_API NDArray min(double d, const NDArray &m)
write the output to stdout if nargout is
#define MINMAX_DECLS(T, S, API)
Vector representing the dimensions (size) of an Array.
the second is matched to the second specifier and placed in the second column and so forth If there are more words than specifiers then the process is repeated until all words have been processed or the limit imposed by any(non-whitespace) text in the format that is not one of these specifiers is considered a literal.If there is a literal between two format specifiers then that same literal must appear in the input stream between the matching words.The following specifiers are valid
MArray< T > & operator=(const MArray< T > &a)
#define BSXFUN_OP_DECL(OP, ARRAY, API)
Array< T > index(const idx_vector &i) const
Indexing without resizing.