GNU Octave  4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
CMatrix.cc File Reference
#include <algorithm>
#include <complex>
#include <iostream>
#include <limits>
#include "Array-util.h"
#include "CDiagMatrix.h"
#include "CMatrix.h"
#include "CNDArray.h"
#include "CRowVector.h"
#include "DET.h"
#include "boolMatrix.h"
#include "chMatrix.h"
#include "chol.h"
#include "dDiagMatrix.h"
#include "dMatrix.h"
#include "dRowVector.h"
#include "functor.h"
#include "lo-blas-proto.h"
#include "lo-error.h"
#include "lo-ieee.h"
#include "lo-lapack-proto.h"
#include "lo-mappers.h"
#include "lo-utils.h"
#include "mx-cm-dm.h"
#include "mx-cm-s.h"
#include "mx-dm-cm.h"
#include "mx-inlines.cc"
#include "mx-op-defs.h"
#include "oct-cmplx.h"
#include "oct-fftw.h"
#include "oct-locbuf.h"
#include "oct-norm.h"
#include "schur.h"
#include "svd.h"
Include dependency graph for CMatrix.cc:

Go to the source code of this file.

Macros

#define EMPTY_RETURN_CHECK(T)
 

Functions

static const Complex Complex_NaN_result (octave::numeric_limits< double >::NaN(), octave::numeric_limits< double >::NaN())
 
ComplexMatrix conj (const ComplexMatrix &a)
 
static char get_blas_trans_arg (bool trans, bool conj)
 
ComplexMatrix Givens (const Complex &x, const Complex &y)
 
ComplexMatrix linspace (const ComplexColumnVector &x1, const ComplexColumnVector &x2, octave_idx_type n)
 
ComplexMatrix max (const Complex &c, const ComplexMatrix &m)
 
ComplexMatrix max (const ComplexMatrix &m, const Complex &c)
 
ComplexMatrix max (const ComplexMatrix &a, const ComplexMatrix &b)
 
ComplexMatrix min (const Complex &c, const ComplexMatrix &m)
 
ComplexMatrix min (const ComplexMatrix &m, const Complex &c)
 
ComplexMatrix min (const ComplexMatrix &a, const ComplexMatrix &b)
 
boolMatrix mx_el_and (const ComplexMatrix &m, const Complex &s)
 
boolMatrix mx_el_and (const Complex &s, const ComplexMatrix &m)
 
boolMatrix mx_el_and (const ComplexMatrix &m1, const ComplexMatrix &m2)
 
boolMatrix mx_el_eq (const ComplexMatrix &m, const Complex &s)
 
boolMatrix mx_el_eq (const Complex &s, const ComplexMatrix &m)
 
boolMatrix mx_el_eq (const ComplexMatrix &m1, const ComplexMatrix &m2)
 
boolMatrix mx_el_ge (const ComplexMatrix &m, const Complex &s)
 
boolMatrix mx_el_ge (const Complex &s, const ComplexMatrix &m)
 
boolMatrix mx_el_ge (const ComplexMatrix &m1, const ComplexMatrix &m2)
 
boolMatrix mx_el_gt (const ComplexMatrix &m, const Complex &s)
 
boolMatrix mx_el_gt (const Complex &s, const ComplexMatrix &m)
 
boolMatrix mx_el_gt (const ComplexMatrix &m1, const ComplexMatrix &m2)
 
boolMatrix mx_el_le (const ComplexMatrix &m, const Complex &s)
 
boolMatrix mx_el_le (const Complex &s, const ComplexMatrix &m)
 
boolMatrix mx_el_le (const ComplexMatrix &m1, const ComplexMatrix &m2)
 
boolMatrix mx_el_lt (const ComplexMatrix &m, const Complex &s)
 
boolMatrix mx_el_lt (const Complex &s, const ComplexMatrix &m)
 
boolMatrix mx_el_lt (const ComplexMatrix &m1, const ComplexMatrix &m2)
 
boolMatrix mx_el_ne (const ComplexMatrix &m, const Complex &s)
 
boolMatrix mx_el_ne (const Complex &s, const ComplexMatrix &m)
 
boolMatrix mx_el_ne (const ComplexMatrix &m1, const ComplexMatrix &m2)
 
boolMatrix mx_el_or (const ComplexMatrix &m, const Complex &s)
 
boolMatrix mx_el_or (const Complex &s, const ComplexMatrix &m)
 
boolMatrix mx_el_or (const ComplexMatrix &m1, const ComplexMatrix &m2)
 
static double norm1 (const ComplexMatrix &a)
 
ComplexMatrix operator* (const ColumnVector &v, const ComplexRowVector &a)
 
ComplexMatrix operator* (const ComplexColumnVector &a, const RowVector &b)
 
ComplexMatrix operator* (const ComplexColumnVector &v, const ComplexRowVector &a)
 
ComplexMatrix operator* (const ComplexMatrix &m, const Matrix &a)
 
ComplexMatrix operator* (const Matrix &m, const ComplexMatrix &a)
 
ComplexMatrix operator* (const ComplexMatrix &a, const ComplexMatrix &b)
 
std::ostream & operator<< (std::ostream &os, const ComplexMatrix &a)
 
std::istream & operator>> (std::istream &is, ComplexMatrix &a)
 
ComplexMatrix Sylvester (const ComplexMatrix &a, const ComplexMatrix &b, const ComplexMatrix &c)
 
ComplexMatrix xgemm (const ComplexMatrix &a, const ComplexMatrix &b, blas_trans_type transa, blas_trans_type transb)
 

Macro Definition Documentation

◆ EMPTY_RETURN_CHECK

#define EMPTY_RETURN_CHECK (   T)
Value:
if (nr == 0 || nc == 0) \
return T (nr, nc);

Definition at line 3645 of file CMatrix.cc.

Referenced by max(), and min().

Function Documentation

◆ Complex_NaN_result()

static const Complex Complex_NaN_result ( octave::numeric_limits< double ::NaN(),
octave::numeric_limits< double ::NaN() 
)
static

◆ conj()

ComplexMatrix conj ( const ComplexMatrix a)

Definition at line 674 of file CMatrix.cc.

References a.

Referenced by get_blas_trans_arg(), Givens(), and ComplexMatrix::hermitian().

◆ get_blas_trans_arg()

static char get_blas_trans_arg ( bool  trans,
bool  conj 
)
inlinestatic

Definition at line 3507 of file CMatrix.cc.

References conj().

Referenced by xgemm().

◆ Givens()

ComplexMatrix Givens ( const Complex x,
const Complex y 
)

◆ linspace()

ComplexMatrix linspace ( const ComplexColumnVector x1,
const ComplexColumnVector x2,
octave_idx_type  n 
)

Definition at line 3797 of file CMatrix.cc.

References current_liboctave_error_handler, i, Array< T >::numel(), and retval.

◆ max() [1/3]

◆ max() [2/3]

ComplexMatrix max ( const ComplexMatrix m,
const Complex c 
)

Definition at line 3742 of file CMatrix.cc.

References c, and max().

◆ max() [3/3]

ComplexMatrix max ( const ComplexMatrix a,
const ComplexMatrix b 
)

◆ min() [1/3]

ComplexMatrix min ( const Complex c,
const ComplexMatrix m 
)

◆ min() [2/3]

ComplexMatrix min ( const ComplexMatrix m,
const Complex c 
)

Definition at line 3670 of file CMatrix.cc.

References c, and min().

◆ min() [3/3]

ComplexMatrix min ( const ComplexMatrix a,
const ComplexMatrix b 
)

◆ mx_el_and() [1/3]

boolMatrix mx_el_and ( const ComplexMatrix m,
const Complex s 
)

Definition at line 3835 of file CMatrix.cc.

◆ mx_el_and() [2/3]

boolMatrix mx_el_and ( const Complex s,
const ComplexMatrix m 
)

Definition at line 3838 of file CMatrix.cc.

◆ mx_el_and() [3/3]

boolMatrix mx_el_and ( const ComplexMatrix m1,
const ComplexMatrix m2 
)

Definition at line 3841 of file CMatrix.cc.

◆ mx_el_eq() [1/3]

boolMatrix mx_el_eq ( const ComplexMatrix m,
const Complex s 
)

Definition at line 3834 of file CMatrix.cc.

◆ mx_el_eq() [2/3]

boolMatrix mx_el_eq ( const Complex s,
const ComplexMatrix m 
)

Definition at line 3837 of file CMatrix.cc.

◆ mx_el_eq() [3/3]

boolMatrix mx_el_eq ( const ComplexMatrix m1,
const ComplexMatrix m2 
)

Definition at line 3840 of file CMatrix.cc.

◆ mx_el_ge() [1/3]

boolMatrix mx_el_ge ( const ComplexMatrix m,
const Complex s 
)

Definition at line 3834 of file CMatrix.cc.

◆ mx_el_ge() [2/3]

boolMatrix mx_el_ge ( const Complex s,
const ComplexMatrix m 
)

Definition at line 3837 of file CMatrix.cc.

◆ mx_el_ge() [3/3]

boolMatrix mx_el_ge ( const ComplexMatrix m1,
const ComplexMatrix m2 
)

Definition at line 3840 of file CMatrix.cc.

◆ mx_el_gt() [1/3]

boolMatrix mx_el_gt ( const ComplexMatrix m,
const Complex s 
)

Definition at line 3834 of file CMatrix.cc.

◆ mx_el_gt() [2/3]

boolMatrix mx_el_gt ( const Complex s,
const ComplexMatrix m 
)

Definition at line 3837 of file CMatrix.cc.

◆ mx_el_gt() [3/3]

boolMatrix mx_el_gt ( const ComplexMatrix m1,
const ComplexMatrix m2 
)

Definition at line 3840 of file CMatrix.cc.

◆ mx_el_le() [1/3]

boolMatrix mx_el_le ( const ComplexMatrix m,
const Complex s 
)

Definition at line 3834 of file CMatrix.cc.

◆ mx_el_le() [2/3]

boolMatrix mx_el_le ( const Complex s,
const ComplexMatrix m 
)

Definition at line 3837 of file CMatrix.cc.

◆ mx_el_le() [3/3]

boolMatrix mx_el_le ( const ComplexMatrix m1,
const ComplexMatrix m2 
)

Definition at line 3840 of file CMatrix.cc.

◆ mx_el_lt() [1/3]

boolMatrix mx_el_lt ( const ComplexMatrix m,
const Complex s 
)

Definition at line 3834 of file CMatrix.cc.

◆ mx_el_lt() [2/3]

boolMatrix mx_el_lt ( const Complex s,
const ComplexMatrix m 
)

Definition at line 3837 of file CMatrix.cc.

◆ mx_el_lt() [3/3]

boolMatrix mx_el_lt ( const ComplexMatrix m1,
const ComplexMatrix m2 
)

Definition at line 3840 of file CMatrix.cc.

◆ mx_el_ne() [1/3]

boolMatrix mx_el_ne ( const ComplexMatrix m,
const Complex s 
)

Definition at line 3834 of file CMatrix.cc.

◆ mx_el_ne() [2/3]

boolMatrix mx_el_ne ( const Complex s,
const ComplexMatrix m 
)

Definition at line 3837 of file CMatrix.cc.

◆ mx_el_ne() [3/3]

boolMatrix mx_el_ne ( const ComplexMatrix m1,
const ComplexMatrix m2 
)

Definition at line 3840 of file CMatrix.cc.

◆ mx_el_or() [1/3]

boolMatrix mx_el_or ( const ComplexMatrix m,
const Complex s 
)

Definition at line 3835 of file CMatrix.cc.

◆ mx_el_or() [2/3]

boolMatrix mx_el_or ( const Complex s,
const ComplexMatrix m 
)

Definition at line 3838 of file CMatrix.cc.

◆ mx_el_or() [3/3]

boolMatrix mx_el_or ( const ComplexMatrix m1,
const ComplexMatrix m2 
)

Definition at line 3841 of file CMatrix.cc.

◆ norm1()

◆ operator*() [1/6]

ComplexMatrix operator* ( const ColumnVector v,
const ComplexRowVector a 
)

Definition at line 2792 of file CMatrix.cc.

References a, and tmp.

◆ operator*() [2/6]

ComplexMatrix operator* ( const ComplexColumnVector a,
const RowVector b 
)

Definition at line 2799 of file CMatrix.cc.

References a, b, and tmp.

◆ operator*() [3/6]

◆ operator*() [4/6]

ComplexMatrix operator* ( const ComplexMatrix m,
const Matrix a 
)

◆ operator*() [5/6]

ComplexMatrix operator* ( const Matrix m,
const ComplexMatrix a 
)

Definition at line 3475 of file CMatrix.cc.

References a, ComplexMatrix::ComplexMatrix(), imag(), min(), real(), and Array< T >::rows().

◆ operator*() [6/6]

ComplexMatrix operator* ( const ComplexMatrix a,
const ComplexMatrix b 
)

Definition at line 3638 of file CMatrix.cc.

References a, b, and xgemm().

◆ operator<<()

std::ostream& operator<< ( std::ostream &  os,
const ComplexMatrix a 
)

Definition at line 3357 of file CMatrix.cc.

References a, i, octave_write_complex(), and os.

◆ operator>>()

std::istream& operator>> ( std::istream &  is,
ComplexMatrix a 
)

Definition at line 3372 of file CMatrix.cc.

References a, i, is, and tmp.

◆ Sylvester()

◆ xgemm()