Complex Double-precision General Dence Matrix Class. More...
#include <zgematrix.hpp>
Public Attributes | |
CPPL_INT | m |
matrix row size More... | |
CPPL_INT | n |
matrix column size More... | |
comple * | array |
1D array to store matrix data More... | |
comple ** | darray |
array of pointers of column head addresses More... | |
Complex Double-precision General Dence Matrix Class.
Definition at line 3 of file zgematrix.hpp.
|
inline |
zgematrix constructor without arguments
Definition at line 3 of file zgematrix-constructor.hpp.
References array, darray, m, and n.
|
inline |
zgematrix copy constructor
Definition at line 18 of file zgematrix-constructor.hpp.
References array, darray, i, m, and n.
|
inline |
zgematrix constructor to cast _zgematrix
Definition at line 37 of file zgematrix-constructor.hpp.
References array, _zgematrix::array, _zgematrix::darray, darray, m, _zgematrix::m, _zgematrix::n, n, and _zgematrix::nullify().
|
inline |
zgematrix constructor with size specification
Definition at line 53 of file zgematrix-constructor.hpp.
References array, darray, i, m, and n.
|
inline |
zgematrix constructor with filename
Definition at line 76 of file zgematrix-constructor.hpp.
References array, darray, and read().
|
inline |
zgematrix destructor
Definition at line 91 of file zgematrix-constructor.hpp.
|
inline |
operator() for non-const object
Definition at line 3 of file zgematrix-io.hpp.
References darray, i, m, and n.
Referenced by identity(), operator*=(), operator+=(), operator-=(), read(), and write().
|
inline |
operator() for const object
Definition at line 20 of file zgematrix-io.hpp.
References darray, i, m, and n.
|
inline |
set value for const object
Definition at line 41 of file zgematrix-io.hpp.
References darray, i, m, and n.
|
inline |
Definition at line 79 of file zgematrix-io.hpp.
References i, m, n, and operator()().
|
inline |
Definition at line 99 of file zgematrix-io.hpp.
References i, m, n, operator()(), and resize().
Referenced by zgematrix().
|
inline |
clear all the matrix data and set the sizes 0
Definition at line 3 of file zgematrix-misc.hpp.
References array, darray, m, and n.
Referenced by zgels(), and zgelss().
|
inline |
change the matrix into a zero matrix
Definition at line 15 of file zgematrix-misc.hpp.
References array, i, m, and n.
Referenced by operator*(), operator*=(), and _zgsmatrix::to_zgematrix().
|
inline |
change the matrix into an identity matrix
Definition at line 26 of file zgematrix-misc.hpp.
References array, i, m, n, and operator()().
Referenced by i().
|
inline |
|
inline |
make a deep copy of the matrix
Definition at line 60 of file zgematrix-misc.hpp.
References array, darray, i, m, and n.
Referenced by operator=().
|
inline |
make a shallow copy of the matrix
This function is not designed to be used in project codes.
Definition at line 80 of file zgematrix-misc.hpp.
References array, _zgematrix::array, _zgematrix::darray, darray, m, _zgematrix::m, _zgematrix::n, n, and _zgematrix::nullify().
Referenced by operator=().
|
inline |
resize the matrix
Definition at line 94 of file zgematrix-misc.hpp.
References array, darray, i, m, and n.
Referenced by read(), and zgesvd().
|
inline |
|
inline |
|
inline |
solve A*X=Y using zgesv
The argument is zgematrix Y. Y is overwritten and become the solution X. A is also overwritten and become P*l*U.
Definition at line 5 of file zgematrix-lapack.hpp.
Referenced by i().
|
inline |
solve A*x=y using zgesv
The argument is zcovector y. y is overwritten and become the solution x. A is also overwritten and become P*l*U.
Definition at line 31 of file zgematrix-lapack.hpp.
References zcovector::array, array, zcovector::l, m, and n.
|
inline |
solve overdetermined or underdetermined A*X=Y using zgels
Definition at line 59 of file zgematrix-lapack.hpp.
|
inline |
solve overdetermined or underdetermined A*x=y using zgels
Definition at line 107 of file zgematrix-lapack.hpp.
References zcovector::array, array, zcovector::clear(), i, zcovector::l, m, n, and swap.
solve overdetermined or underdetermined A*X=Y using zgels with the sum of residual squares output
The residual is set as the columnwise sum of residual squares for overdetermined problems while it is always zero for underdetermined problems.
Definition at line 156 of file zgematrix-lapack.hpp.
References array, clear(), i, drovector::l, m, n, drovector::resize(), swap, and drovector::zero().
|
inline |
solve overdetermined or underdetermined A*x=y using zgels with the sum of residual squares output
The residual is set as the sum of residual squares for overdetermined problems while it is always zero for underdetermined problems.
Definition at line 217 of file zgematrix-lapack.hpp.
References zcovector::array, array, zcovector::clear(), i, zcovector::l, m, n, and swap.
|
inline |
calculate the least-squares-least-norm solution for overdetermined or underdetermined A*x=y using zgelss
Definition at line 272 of file zgematrix-lapack.hpp.
References zcovector::array, array, dcovector::array, zcovector::clear(), i, zcovector::l, m, n, dcovector::resize(), and swap.
|
inline |
calculate the least-squares-least-norm solution for overdetermined or underdetermined A*x=y using zgelss
Definition at line 312 of file zgematrix-lapack.hpp.
References array, dcovector::array, clear(), i, m, n, dcovector::resize(), and swap.
|
inline |
calculate eigenvalues
The argument need not to be initialized. w is overwitten and become eigenvalues. This matrix is also overwritten.
Definition at line 360 of file zgematrix-lapack.hpp.
|
inline |
calculate eigenvalues and right eigenvectors
All of the arguments need not to be initialized. w, vr are overwitten and become eigenvalues and right eigenvectors, respectively. This matrix is also overwritten.
Definition at line 396 of file zgematrix-lapack.hpp.
References array, i, m, and n.
|
inline |
calculate eigenvalues and left eigenvectors
All of the arguments need not to be initialized. w, vr are overwitten and become eigenvalues and left eigenvectors, respectively. This matrix is also overwritten.
Definition at line 444 of file zgematrix-lapack.hpp.
References array, conj(), i, m, and n.
compute the singular value decomposition (SVD)
The arguments are zcocector S, zgematrix U and VT. All of them need not to be initialized. S, U and VT are overwitten and become singular values, left singular vectors, and right singular vectors respectively. This matrix also overwritten.
Definition at line 507 of file zgematrix-lapack.hpp.
References array, dcovector::array, m, n, resize(), and dcovector::resize().
|
inline |
zgematrix=_zgematrix operator
Definition at line 3 of file zgematrix-_zgematrix.hpp.
References shallow_copy().
|
inline |
zgematrix+=_zgematrix operator
Definition at line 15 of file zgematrix-_zgematrix.hpp.
References array, _zgematrix::array, _zgematrix::destroy(), i, _zgematrix::m, m, n, and _zgematrix::n.
zgematrix+=zhematrix operator
Definition at line 3 of file zgematrix-zhematrix.hpp.
References i, m, n, zhematrix::n, and operator()().
|
inline |
zgematrix+=_zhematrix operator
Definition at line 3 of file zgematrix-_zhematrix.hpp.
References _zhematrix::destroy(), i, m, n, _zhematrix::n, and operator()().
zgematrix+=zgbmatrix operator
Definition at line 3 of file zgematrix-zgbmatrix.hpp.
References i, zgbmatrix::kl, zgbmatrix::ku, m, zgbmatrix::m, zgbmatrix::n, n, and operator()().
|
inline |
zgematrix+=_zgbmatrix operator
Definition at line 3 of file zgematrix-_zgbmatrix.hpp.
References _zgbmatrix::destroy(), i, _zgbmatrix::kl, _zgbmatrix::ku, m, _zgbmatrix::m, _zgbmatrix::n, n, and operator()().
|
inline |
|
inline |
|
inline |
zgematrix-=_zgematrix operator
Definition at line 37 of file zgematrix-_zgematrix.hpp.
References array, _zgematrix::array, _zgematrix::destroy(), i, _zgematrix::m, m, n, and _zgematrix::n.
zgematrix-=zhematrix operator
Definition at line 25 of file zgematrix-zhematrix.hpp.
References i, m, n, zhematrix::n, and operator()().
|
inline |
zgematrix-=_zhematrix operator
Definition at line 26 of file zgematrix-_zhematrix.hpp.
References _zhematrix::destroy(), i, m, n, _zhematrix::n, and operator()().
zgematrix-=zgbmatrix operator
Definition at line 26 of file zgematrix-zgbmatrix.hpp.
References i, zgbmatrix::kl, zgbmatrix::ku, m, zgbmatrix::m, zgbmatrix::n, n, and operator()().
|
inline |
zgematrix-=_zgbmatrix operator
Definition at line 27 of file zgematrix-_zgbmatrix.hpp.
References _zgbmatrix::destroy(), i, _zgbmatrix::kl, _zgbmatrix::ku, m, _zgbmatrix::m, _zgbmatrix::n, n, and operator()().
|
inline |
|
inline |
zgematrix operator*=
Definition at line 57 of file zgematrix-zgematrix.hpp.
|
inline |
zgematrix*=_zgematrix operator
Definition at line 59 of file zgematrix-_zgematrix.hpp.
References array, _zgematrix::array, _zgematrix::destroy(), _zgematrix::m, m, _zgematrix::n, n, and swap.
zgematrix*=zhematrix operator
Definition at line 47 of file zgematrix-zhematrix.hpp.
References array, zhematrix::array, m, n, zhematrix::n, and swap.
|
inline |
zgematrix*=_zhematrix operator
Definition at line 49 of file zgematrix-_zhematrix.hpp.
References array, _zhematrix::array, _zhematrix::destroy(), m, n, _zhematrix::n, and swap.
zgematrix*=zgbmatrix operator
Definition at line 48 of file zgematrix-zgbmatrix.hpp.
References i, zgbmatrix::kl, zgbmatrix::ku, m, zgbmatrix::m, n, zgbmatrix::n, operator()(), swap, and zero().
|
inline |
zgematrix*=_zgbmatrix operator
Definition at line 50 of file zgematrix-_zgbmatrix.hpp.
References _zgbmatrix::destroy(), i, _zgbmatrix::kl, _zgbmatrix::ku, m, _zgbmatrix::m, n, _zgbmatrix::n, operator()(), swap, and zero().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |
Definition at line 63 of file zgematrix-io.hpp.
swap two matrices
Definition at line 166 of file zgematrix-misc.hpp.
Referenced by operator*=(), zgels(), and zgelss().
|
friend |
convert user object to smart-temporary object
Definition at line 177 of file zgematrix-misc.hpp.
Referenced by col(), and row().
|
friend |
|
friend |
return its inverse matrix
Definition at line 18 of file zgematrix-calc.hpp.
Referenced by chsign(), col(), copy(), identity(), operator()(), operator*=(), operator+=(), operator-=(), read(), resize(), set(), write(), zero(), zgeev(), zgels(), zgelss(), and zgematrix().
|
friend |
|
friend |
|
friend |
search the index of element having the largest absolute value in 0-based numbering system
Definition at line 77 of file zgematrix-calc.hpp.
|
friend |
+zgematrix operator
Definition at line 3 of file zgematrix-unary.hpp.
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
zgematrix+zgsmatrix operator
Definition at line 3 of file zgematrix-zgsmatrix.hpp.
|
friend |
zgematrix+_zgsmatrix operator
Definition at line 3 of file zgematrix-_zgsmatrix.hpp.
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
zgematrix-zgsmatrix operator
Definition at line 27 of file zgematrix-zgsmatrix.hpp.
|
friend |
zgematrix-_zgsmatrix operator
Definition at line 27 of file zgematrix-_zgsmatrix.hpp.
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
zgematrix*zgematrix operator
Definition at line 132 of file zgematrix-zgematrix.hpp.
|
friend |
zgematrix*_zgematrix operator
Definition at line 131 of file zgematrix-_zgematrix.hpp.
|
friend |
zgematrix*zhematrix operator
Definition at line 124 of file zgematrix-zhematrix.hpp.
|
friend |
zgematrix*_zhematrix operator
Definition at line 129 of file zgematrix-_zhematrix.hpp.
|
friend |
|
friend |
|
friend |
zgematrix*zgsmatrix operator
Definition at line 51 of file zgematrix-zgsmatrix.hpp.
|
friend |
zgematrix*_zgsmatrix operator
Definition at line 52 of file zgematrix-_zgsmatrix.hpp.
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
CPPL_INT zgematrix::m |
matrix row size
Definition at line 9 of file zgematrix.hpp.
Referenced by _(), chsign(), clear(), col(), conj(), conjt(), copy(), damax(), hadamerd(), i(), idamax(), identity(), operator()(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator<<(), read(), resize(), row(), set(), shallow_copy(), swap(), t(), write(), zero(), zgbmatrix::zgbsv(), zgeev(), zgels(), zgelss(), zgematrix(), zgematrix_small< m, n >::zgematrix_small(), zgesv(), and zgesvd().
CPPL_INT zgematrix::n |
matrix column size
Definition at line 10 of file zgematrix.hpp.
Referenced by _(), chsign(), clear(), col(), conj(), conjt(), copy(), damax(), hadamerd(), i(), idamax(), identity(), operator()(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator<<(), read(), resize(), row(), set(), shallow_copy(), swap(), t(), write(), zero(), zgbmatrix::zgbsv(), zgeev(), zgels(), zgelss(), zgematrix(), zgematrix_small< m, n >::zgematrix_small(), zgesv(), zgesvd(), and zhematrix::zhesv().
comple* zgematrix::array |
1D array to store matrix data
Definition at line 11 of file zgematrix.hpp.
Referenced by _(), chsign(), clear(), copy(), damax(), idamax(), identity(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator=(), resize(), shallow_copy(), swap(), _dgematrix::to_zgematrix(), dgematrix::to_zgematrix(), zero(), zgbmatrix::zgbsv(), zgeev(), zgels(), zgelss(), zgematrix(), zgematrix_small< m, n >::zgematrix_small(), zgesv(), zgesvd(), zhematrix::zhesv(), and ~zgematrix().
comple** zgematrix::darray |
array of pointers of column head addresses
Definition at line 12 of file zgematrix.hpp.
Referenced by _(), clear(), copy(), operator()(), resize(), set(), shallow_copy(), swap(), zgematrix(), and ~zgematrix().