GNU Octave  4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
dMatrix.cc File Reference
#include <algorithm>
#include <iostream>
#include <limits>
#include "Array-util.h"
#include "CColVector.h"
#include "CMatrix.h"
#include "DET.h"
#include "PermMatrix.h"
#include "boolMatrix.h"
#include "byte-swap.h"
#include "chMatrix.h"
#include "chol.h"
#include "dColVector.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-dm-m.h"
#include "mx-inlines.cc"
#include "mx-m-dm.h"
#include "mx-op-defs.h"
#include "oct-cmplx.h"
#include "oct-fftw.h"
#include "oct-locbuf.h"
#include "oct-norm.h"
#include "quit.h"
#include "schur.h"
#include "svd.h"
Include dependency graph for dMatrix.cc:

Go to the source code of this file.

Macros

#define EMPTY_RETURN_CHECK(T)
 

Functions

static char get_blas_trans_arg (bool trans)
 
Matrix Givens (double x, double y)
 
Matrix imag (const ComplexMatrix &a)
 
Matrix linspace (const ColumnVector &x1, const ColumnVector &x2, octave_idx_type n)
 
Matrix max (double d, const Matrix &m)
 
Matrix max (const Matrix &m, double d)
 
Matrix max (const Matrix &a, const Matrix &b)
 
Matrix min (double d, const Matrix &m)
 
Matrix min (const Matrix &m, double d)
 
Matrix min (const Matrix &a, const Matrix &b)
 
boolMatrix mx_el_and (const Matrix &m, const double &s)
 
boolMatrix mx_el_and (const double &s, const Matrix &m)
 
boolMatrix mx_el_and (const Matrix &m1, const Matrix &m2)
 
boolMatrix mx_el_eq (const Matrix &m, const double &s)
 
boolMatrix mx_el_eq (const double &s, const Matrix &m)
 
boolMatrix mx_el_eq (const Matrix &m1, const Matrix &m2)
 
boolMatrix mx_el_ge (const Matrix &m, const double &s)
 
boolMatrix mx_el_ge (const double &s, const Matrix &m)
 
boolMatrix mx_el_ge (const Matrix &m1, const Matrix &m2)
 
boolMatrix mx_el_gt (const Matrix &m, const double &s)
 
boolMatrix mx_el_gt (const double &s, const Matrix &m)
 
boolMatrix mx_el_gt (const Matrix &m1, const Matrix &m2)
 
boolMatrix mx_el_le (const Matrix &m, const double &s)
 
boolMatrix mx_el_le (const double &s, const Matrix &m)
 
boolMatrix mx_el_le (const Matrix &m1, const Matrix &m2)
 
boolMatrix mx_el_lt (const Matrix &m, const double &s)
 
boolMatrix mx_el_lt (const double &s, const Matrix &m)
 
boolMatrix mx_el_lt (const Matrix &m1, const Matrix &m2)
 
boolMatrix mx_el_ne (const Matrix &m, const double &s)
 
boolMatrix mx_el_ne (const double &s, const Matrix &m)
 
boolMatrix mx_el_ne (const Matrix &m1, const Matrix &m2)
 
boolMatrix mx_el_or (const Matrix &m, const double &s)
 
boolMatrix mx_el_or (const double &s, const Matrix &m)
 
boolMatrix mx_el_or (const Matrix &m1, const Matrix &m2)
 
static double norm1 (const Matrix &a)
 
Matrix operator* (const ColumnVector &v, const RowVector &a)
 
Matrix operator* (const Matrix &a, const Matrix &b)
 
std::ostream & operator<< (std::ostream &os, const Matrix &a)
 
std::istream & operator>> (std::istream &is, Matrix &a)
 
Matrix real (const ComplexMatrix &a)
 
static Matrix stack_complex_matrix (const ComplexMatrix &cm)
 
Matrix Sylvester (const Matrix &a, const Matrix &b, const Matrix &c)
 
static ComplexMatrix unstack_complex_matrix (const Matrix &sm)
 
Matrix xgemm (const Matrix &a, const Matrix &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 3055 of file dMatrix.cc.

Referenced by max(), and min().

Function Documentation

◆ get_blas_trans_arg()

static char get_blas_trans_arg ( bool  trans)
inlinestatic

Definition at line 2954 of file dMatrix.cc.

Referenced by xgemm().

◆ Givens()

Matrix Givens ( double  x,
double  y 
)

Definition at line 2863 of file dMatrix.cc.

References Array< T >::elem(), F77_FUNC(), s, x, and y.

◆ imag()

Matrix imag ( const ComplexMatrix a)

Definition at line 390 of file dMatrix.cc.

References a, and mx_inline_imag().

Referenced by stack_complex_matrix().

◆ linspace()

Matrix linspace ( const ColumnVector x1,
const ColumnVector x2,
octave_idx_type  n 
)

Definition at line 3187 of file dMatrix.cc.

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

◆ max() [1/3]

Matrix max ( double  d,
const Matrix m 
)

◆ max() [2/3]

Matrix max ( const Matrix m,
double  d 
)

◆ max() [3/3]

Matrix max ( const Matrix a,
const Matrix b 
)

◆ min() [1/3]

Matrix min ( double  d,
const Matrix m 
)

◆ min() [2/3]

Matrix min ( const Matrix m,
double  d 
)

◆ min() [3/3]

Matrix min ( const Matrix a,
const Matrix b 
)

◆ mx_el_and() [1/3]

boolMatrix mx_el_and ( const Matrix m,
const double s 
)

Definition at line 3226 of file dMatrix.cc.

◆ mx_el_and() [2/3]

boolMatrix mx_el_and ( const double s,
const Matrix m 
)

Definition at line 3229 of file dMatrix.cc.

◆ mx_el_and() [3/3]

boolMatrix mx_el_and ( const Matrix m1,
const Matrix m2 
)

Definition at line 3232 of file dMatrix.cc.

◆ mx_el_eq() [1/3]

boolMatrix mx_el_eq ( const Matrix m,
const double s 
)

Definition at line 3225 of file dMatrix.cc.

◆ mx_el_eq() [2/3]

boolMatrix mx_el_eq ( const double s,
const Matrix m 
)

Definition at line 3228 of file dMatrix.cc.

◆ mx_el_eq() [3/3]

boolMatrix mx_el_eq ( const Matrix m1,
const Matrix m2 
)

Definition at line 3231 of file dMatrix.cc.

◆ mx_el_ge() [1/3]

boolMatrix mx_el_ge ( const Matrix m,
const double s 
)

Definition at line 3225 of file dMatrix.cc.

◆ mx_el_ge() [2/3]

boolMatrix mx_el_ge ( const double s,
const Matrix m 
)

Definition at line 3228 of file dMatrix.cc.

◆ mx_el_ge() [3/3]

boolMatrix mx_el_ge ( const Matrix m1,
const Matrix m2 
)

Definition at line 3231 of file dMatrix.cc.

◆ mx_el_gt() [1/3]

boolMatrix mx_el_gt ( const Matrix m,
const double s 
)

Definition at line 3225 of file dMatrix.cc.

◆ mx_el_gt() [2/3]

boolMatrix mx_el_gt ( const double s,
const Matrix m 
)

Definition at line 3228 of file dMatrix.cc.

◆ mx_el_gt() [3/3]

boolMatrix mx_el_gt ( const Matrix m1,
const Matrix m2 
)

Definition at line 3231 of file dMatrix.cc.

◆ mx_el_le() [1/3]

boolMatrix mx_el_le ( const Matrix m,
const double s 
)

Definition at line 3225 of file dMatrix.cc.

◆ mx_el_le() [2/3]

boolMatrix mx_el_le ( const double s,
const Matrix m 
)

Definition at line 3228 of file dMatrix.cc.

◆ mx_el_le() [3/3]

boolMatrix mx_el_le ( const Matrix m1,
const Matrix m2 
)

Definition at line 3231 of file dMatrix.cc.

◆ mx_el_lt() [1/3]

boolMatrix mx_el_lt ( const Matrix m,
const double s 
)

Definition at line 3225 of file dMatrix.cc.

◆ mx_el_lt() [2/3]

boolMatrix mx_el_lt ( const double s,
const Matrix m 
)

Definition at line 3228 of file dMatrix.cc.

◆ mx_el_lt() [3/3]

boolMatrix mx_el_lt ( const Matrix m1,
const Matrix m2 
)

Definition at line 3231 of file dMatrix.cc.

◆ mx_el_ne() [1/3]

boolMatrix mx_el_ne ( const Matrix m,
const double s 
)

Definition at line 3225 of file dMatrix.cc.

◆ mx_el_ne() [2/3]

boolMatrix mx_el_ne ( const double s,
const Matrix m 
)

Definition at line 3228 of file dMatrix.cc.

◆ mx_el_ne() [3/3]

boolMatrix mx_el_ne ( const Matrix m1,
const Matrix m2 
)

Definition at line 3231 of file dMatrix.cc.

◆ mx_el_or() [1/3]

boolMatrix mx_el_or ( const Matrix m,
const double s 
)

Definition at line 3226 of file dMatrix.cc.

◆ mx_el_or() [2/3]

boolMatrix mx_el_or ( const double s,
const Matrix m 
)

Definition at line 3229 of file dMatrix.cc.

◆ mx_el_or() [3/3]

boolMatrix mx_el_or ( const Matrix m1,
const Matrix m2 
)

Definition at line 3232 of file dMatrix.cc.

◆ norm1()

◆ operator*() [1/2]

Matrix operator* ( const ColumnVector v,
const RowVector a 
)

Definition at line 2506 of file dMatrix.cc.

References a, c, Array< T >::data(), F77_XFCN, Array< T >::numel(), and retval.

◆ operator*() [2/2]

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

Definition at line 3048 of file dMatrix.cc.

References a, b, and xgemm().

◆ operator<<()

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

Definition at line 2825 of file dMatrix.cc.

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

◆ operator>>()

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

Definition at line 2840 of file dMatrix.cc.

References a, i, is, and tmp.

◆ real()

Matrix real ( const ComplexMatrix a)

Definition at line 384 of file dMatrix.cc.

References a, and mx_inline_real().

Referenced by stack_complex_matrix().

◆ stack_complex_matrix()

static Matrix stack_complex_matrix ( const ComplexMatrix cm)
static

Definition at line 1844 of file dMatrix.cc.

References Array< T >::cols(), Array< T >::data(), i, imag(), real(), retval, and Array< T >::rows().

Referenced by Matrix::solve().

◆ Sylvester()

◆ unstack_complex_matrix()

static ComplexMatrix unstack_complex_matrix ( const Matrix sm)
static

Definition at line 1861 of file dMatrix.cc.

References Array< T >::cols(), Array< T >::data(), i, retval, and Array< T >::rows().

Referenced by Matrix::solve().

◆ xgemm()

Matrix xgemm ( const Matrix a,
const Matrix b,
blas_trans_type  transa,
blas_trans_type  transb 
)

Definition at line 2962 of file dMatrix.cc.

References a, a_nc, a_nr, b, b_nc, b_nr, blas_no_trans, c, octave::err_nonconformant(), F77_FUNC(), F77_XFCN, get_blas_trans_arg(), i, retval, and xddot().

Referenced by operator*().