GNU Octave  4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
fMatrix.cc File Reference
#include <algorithm>
#include <iostream>
#include <limits>
#include "Array-util.h"
#include "DET.h"
#include "PermMatrix.h"
#include "boolMatrix.h"
#include "byte-swap.h"
#include "chMatrix.h"
#include "chol.h"
#include "fCColVector.h"
#include "fCMatrix.h"
#include "fColVector.h"
#include "fDiagMatrix.h"
#include "fMatrix.h"
#include "fNDArray.h"
#include "fRowVector.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-fdm-fm.h"
#include "mx-fm-fdm.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 "quit.h"
#include "schur.h"
#include "svd.h"
Include dependency graph for fMatrix.cc:

Go to the source code of this file.

Macros

#define EMPTY_RETURN_CHECK(T)
 

Functions

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

Referenced by max(), and min().

Function Documentation

◆ get_blas_trans_arg()

static char get_blas_trans_arg ( bool  trans)
static

Definition at line 2959 of file fMatrix.cc.

Referenced by xgemm().

◆ Givens()

FloatMatrix Givens ( float  x,
float  y 
)

Definition at line 2872 of file fMatrix.cc.

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

◆ imag()

FloatMatrix imag ( const FloatComplexMatrix a)

Definition at line 396 of file fMatrix.cc.

References a, and mx_inline_imag().

Referenced by stack_complex_matrix().

◆ linspace()

FloatMatrix linspace ( const FloatColumnVector x1,
const FloatColumnVector x2,
octave_idx_type  n 
)

Definition at line 3192 of file fMatrix.cc.

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

◆ max() [1/3]

FloatMatrix max ( float  d,
const FloatMatrix m 
)

◆ max() [2/3]

FloatMatrix max ( const FloatMatrix m,
float  d 
)

◆ max() [3/3]

FloatMatrix max ( const FloatMatrix a,
const FloatMatrix b 
)

◆ min() [1/3]

FloatMatrix min ( float  d,
const FloatMatrix m 
)

◆ min() [2/3]

FloatMatrix min ( const FloatMatrix m,
float  d 
)

◆ min() [3/3]

FloatMatrix min ( const FloatMatrix a,
const FloatMatrix b 
)

◆ mx_el_and() [1/3]

boolMatrix mx_el_and ( const FloatMatrix m,
const float s 
)

Definition at line 3231 of file fMatrix.cc.

◆ mx_el_and() [2/3]

boolMatrix mx_el_and ( const float s,
const FloatMatrix m 
)

Definition at line 3234 of file fMatrix.cc.

◆ mx_el_and() [3/3]

boolMatrix mx_el_and ( const FloatMatrix m1,
const FloatMatrix m2 
)

Definition at line 3237 of file fMatrix.cc.

◆ mx_el_eq() [1/3]

boolMatrix mx_el_eq ( const FloatMatrix m,
const float s 
)

Definition at line 3230 of file fMatrix.cc.

◆ mx_el_eq() [2/3]

boolMatrix mx_el_eq ( const float s,
const FloatMatrix m 
)

Definition at line 3233 of file fMatrix.cc.

◆ mx_el_eq() [3/3]

boolMatrix mx_el_eq ( const FloatMatrix m1,
const FloatMatrix m2 
)

Definition at line 3236 of file fMatrix.cc.

◆ mx_el_ge() [1/3]

boolMatrix mx_el_ge ( const FloatMatrix m,
const float s 
)

Definition at line 3230 of file fMatrix.cc.

◆ mx_el_ge() [2/3]

boolMatrix mx_el_ge ( const float s,
const FloatMatrix m 
)

Definition at line 3233 of file fMatrix.cc.

◆ mx_el_ge() [3/3]

boolMatrix mx_el_ge ( const FloatMatrix m1,
const FloatMatrix m2 
)

Definition at line 3236 of file fMatrix.cc.

◆ mx_el_gt() [1/3]

boolMatrix mx_el_gt ( const FloatMatrix m,
const float s 
)

Definition at line 3230 of file fMatrix.cc.

◆ mx_el_gt() [2/3]

boolMatrix mx_el_gt ( const float s,
const FloatMatrix m 
)

Definition at line 3233 of file fMatrix.cc.

◆ mx_el_gt() [3/3]

boolMatrix mx_el_gt ( const FloatMatrix m1,
const FloatMatrix m2 
)

Definition at line 3236 of file fMatrix.cc.

◆ mx_el_le() [1/3]

boolMatrix mx_el_le ( const FloatMatrix m,
const float s 
)

Definition at line 3230 of file fMatrix.cc.

◆ mx_el_le() [2/3]

boolMatrix mx_el_le ( const float s,
const FloatMatrix m 
)

Definition at line 3233 of file fMatrix.cc.

◆ mx_el_le() [3/3]

boolMatrix mx_el_le ( const FloatMatrix m1,
const FloatMatrix m2 
)

Definition at line 3236 of file fMatrix.cc.

◆ mx_el_lt() [1/3]

boolMatrix mx_el_lt ( const FloatMatrix m,
const float s 
)

Definition at line 3230 of file fMatrix.cc.

◆ mx_el_lt() [2/3]

boolMatrix mx_el_lt ( const float s,
const FloatMatrix m 
)

Definition at line 3233 of file fMatrix.cc.

◆ mx_el_lt() [3/3]

boolMatrix mx_el_lt ( const FloatMatrix m1,
const FloatMatrix m2 
)

Definition at line 3236 of file fMatrix.cc.

◆ mx_el_ne() [1/3]

boolMatrix mx_el_ne ( const FloatMatrix m,
const float s 
)

Definition at line 3230 of file fMatrix.cc.

◆ mx_el_ne() [2/3]

boolMatrix mx_el_ne ( const float s,
const FloatMatrix m 
)

Definition at line 3233 of file fMatrix.cc.

◆ mx_el_ne() [3/3]

boolMatrix mx_el_ne ( const FloatMatrix m1,
const FloatMatrix m2 
)

Definition at line 3236 of file fMatrix.cc.

◆ mx_el_or() [1/3]

boolMatrix mx_el_or ( const FloatMatrix m,
const float s 
)

Definition at line 3231 of file fMatrix.cc.

◆ mx_el_or() [2/3]

boolMatrix mx_el_or ( const float s,
const FloatMatrix m 
)

Definition at line 3234 of file fMatrix.cc.

◆ mx_el_or() [3/3]

boolMatrix mx_el_or ( const FloatMatrix m1,
const FloatMatrix m2 
)

Definition at line 3237 of file fMatrix.cc.

◆ norm1()

◆ operator*() [1/2]

FloatMatrix operator* ( const FloatColumnVector v,
const FloatRowVector a 
)

Definition at line 2529 of file fMatrix.cc.

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

◆ operator*() [2/2]

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

Definition at line 3053 of file fMatrix.cc.

References a, b, and xgemm().

◆ operator<<()

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

Definition at line 2834 of file fMatrix.cc.

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

◆ operator>>()

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

Definition at line 2849 of file fMatrix.cc.

References a, i, is, and tmp.

◆ real()

FloatMatrix real ( const FloatComplexMatrix a)

Definition at line 390 of file fMatrix.cc.

References a, and mx_inline_real().

Referenced by stack_complex_matrix().

◆ stack_complex_matrix()

static FloatMatrix stack_complex_matrix ( const FloatComplexMatrix cm)
static

Definition at line 1862 of file fMatrix.cc.

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

Referenced by FloatMatrix::solve().

◆ Sylvester()

◆ unstack_complex_matrix()

static FloatComplexMatrix unstack_complex_matrix ( const FloatMatrix sm)
static

Definition at line 1879 of file fMatrix.cc.

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

Referenced by FloatMatrix::solve().

◆ xgemm()

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

Definition at line 2967 of file fMatrix.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 xsdot().

Referenced by operator*().