26 #if ! defined (octave_CMatrix_h)
27 #define octave_CMatrix_h 1
29 #include "octave-config.h"
61 typedef void (*solve_singularity_handler) (
double rcon);
119 bool ishermitian (
void)
const;
198 double& rcon,
bool force,
bool calc_cond)
const;
201 double& rcon,
bool force,
bool calc_cond)
const;
207 bool force =
false,
bool calc_cond =
true)
const;
212 double& rcon,
bool force =
false,
213 bool calc_cond =
true)
const;
226 bool calc_cond =
true)
const;
228 double& rcon,
bool calc_cond =
true)
const;
230 double rcond (
void)
const;
237 solve_singularity_handler sing_handler,
238 bool calc_cond =
false,
244 solve_singularity_handler sing_handler,
245 bool calc_cond =
false,
251 solve_singularity_handler sing_handler,
252 bool calc_cond =
false)
const;
263 solve_singularity_handler sing_handler,
264 bool singular_fallback =
true,
274 solve_singularity_handler sing_handler,
275 bool singular_fallback =
true,
285 solve_singularity_handler sing_handler,
296 solve_singularity_handler sing_handler,
305 solve_singularity_handler sing_handler,
314 solve_singularity_handler sing_handler,
323 solve_singularity_handler sing_handler,
335 solve_singularity_handler sing_handler,
416 friend OCTAVE_API std::ostream&
operator << (std::ostream& os,
418 friend OCTAVE_API std::istream&
operator >> (std::istream& is,
template OCTAVE_API std::ostream & operator<<(std::ostream &, const Array< bool > &)
ComplexMatrix operator-=(ComplexMatrix &x, const Complex &y)
OCTAVE_API ComplexMatrix xgemm(const ComplexMatrix &a, const ComplexMatrix &b, blas_trans_type transa=blas_no_trans, blas_trans_type transb=blas_no_trans)
OCTAVE_API ComplexMatrix Sylvester(const ComplexMatrix &, const ComplexMatrix &, const ComplexMatrix &)
OCTAVE_API ComplexMatrix max(const Complex &c, const ComplexMatrix &m)
OCTAVE_API ComplexMatrix operator*(const ColumnVector &a, const ComplexRowVector &b)
ComplexMatrix operator+=(ComplexMatrix &x, const Complex &y)
OCTAVE_API ComplexMatrix linspace(const ComplexColumnVector &x1, const ComplexColumnVector &x2, octave_idx_type n)
OCTAVE_API ComplexMatrix conj(const ComplexMatrix &a)
OCTAVE_API ComplexMatrix min(const Complex &c, const ComplexMatrix &m)
OCTAVE_API ComplexMatrix Givens(const Complex &, const Complex &)
#define MARRAY_FORWARD_DEFS(B, R, T)
std::istream & operator>>(std::istream &is, SparseBoolMatrix &a)
N Dimensional Array with copy-on-write semantics.
void resize(const dim_vector &dv, const T &rfv)
Size of the specified dimension.
ComplexMatrix(void)=default
ComplexDiagMatrix complex_diag_matrix_type
ComplexColumnVector column_vector_type
~ComplexMatrix(void)=default
ComplexMatrix(const dim_vector &dv)
RowVector real_row_vector_type
ComplexRowVector row_vector_type
ComplexMatrix transpose(void) const
ComplexMatrix hermitian(void) const
ComplexMatrix(octave_idx_type r, octave_idx_type c)
ComplexMatrix(octave_idx_type r, octave_idx_type c, const Complex &val)
ComplexMatrix(const ComplexMatrix &a)=default
DiagMatrix real_diag_matrix_type
void resize(octave_idx_type nr, octave_idx_type nc, const Complex &rfv=Complex(0))
ComplexMatrix complex_matrix_type
ColumnVector real_column_vector_type
ComplexMatrix(const dim_vector &dv, const Complex &val)
ComplexMatrix(const Array< U > &a)
ComplexMatrix(const MArray< U > &a)
Template for N-dimensional array classes with like-type math operators.
MArray< T > hermitian(T(*fcn)(const T &)=nullptr) const
MArray< T > transpose(void) const
Vector representing the dimensions (size) of an Array.
bool operator!=(const dim_vector &a, const dim_vector &b)
bool operator==(const dim_vector &a, const dim_vector &b)
static M utsolve(const SM &U, const ColumnVector &Q, const M &m)
static M ltsolve(const SM &L, const ColumnVector &Q, const M &m)
#define SM_BOOL_OP_DECLS(S, M, API)
#define MS_CMP_OP_DECLS(M, S, API)
#define SM_CMP_OP_DECLS(S, M, API)
#define MS_BOOL_OP_DECLS(M, S, API)
#define MM_CMP_OP_DECLS(M1, M2, API)
#define MM_BOOL_OP_DECLS(M1, M2, API)
std::complex< double > Complex