VERB_code_2.3
CPPL::zgbmatrix Class Reference

Complex Double-precision General Band Matrix Class. More...

#include <cpplapack.h>

Public Member Functions

 zgbmatrix ()
 
 zgbmatrix (const zgbmatrix &)
 
 zgbmatrix (const _zgbmatrix &)
 
 zgbmatrix (const long &, const long &, const long &, const long &)
 
 zgbmatrix (const char *)
 
 ~zgbmatrix ()
 
std::complex< double > & operator() (const long &, const long &)
 
std::complex< double > operator() (const long &, const long &) const
 
void set (const long &, const long &, const std::complex< double > &) const
 
void write (const char *) const
 
void read (const char *)
 
void clear ()
 
void zero ()
 
void identity ()
 
void chsign ()
 
void copy (const zgbmatrix &)
 
void shallow_copy (const _zgbmatrix &)
 
void resize (const long &, const long &, const long &, const long &)
 
long zgbsv (zgematrix &)
 
long zgbsv (zcovector &)
 
zgbmatrixoperator= (const zgbmatrix &)
 
zgbmatrixoperator+= (const zgbmatrix &)
 
zgbmatrixoperator-= (const zgbmatrix &)
 
zgbmatrixoperator*= (const zgbmatrix &)
 
zgbmatrixoperator= (const _zgbmatrix &)
 
zgbmatrixoperator+= (const _zgbmatrix &)
 
zgbmatrixoperator-= (const _zgbmatrix &)
 
zgbmatrixoperator*= (const _zgbmatrix &)
 
zgbmatrixoperator*= (const double &)
 
zgbmatrixoperator/= (const double &)
 
zgbmatrixoperator*= (const std::complex< double > &)
 
zgbmatrixoperator/= (const std::complex< double > &)
 

Public Attributes

long const & m
 matrix row size (readable)
 
long const & n
 matrix column size (readable)
 
long const & kl
 lower band width (readable)
 
long const & ku
 upper band width (readable)
 
std::complex< double > *const & array
 1D array to store matrix data (readable)
 
std::complex< double > **const & darray
 array of pointers of column head addresses (readable)
 

Friends

class zgematrix
 
class _zgematrix
 
class _zgbmatrix
 
class zhematrix
 
class _zhematrix
 
class zcovector
 
class _zcovector
 
class zrovector
 
class _zrovector
 
std::ostream & operator<< (std::ostream &, const zgbmatrix &)
 
void swap (zgbmatrix &, zgbmatrix &)
 
_zgbmatrix _ (zgbmatrix &)
 
_zgbmatrix t (const zgbmatrix &)
 
_zgematrix i (const zgbmatrix &)
 
_zgbmatrix conj (const zgbmatrix &)
 
_zgbmatrix conjt (const zgbmatrix &)
 
const zgbmatrixoperator+ (const zgbmatrix &)
 
_zgbmatrix operator- (const zgbmatrix &)
 
_zgbmatrix operator+ (const zgbmatrix &, const zgbmatrix &)
 
_zgbmatrix operator+ (const zgbmatrix &, const _zgbmatrix &)
 
_zgbmatrix operator+ (const _zgbmatrix &, const zgbmatrix &)
 
_zgematrix operator+ (const zgbmatrix &, const zgematrix &)
 
_zgematrix operator+ (const zgbmatrix &, const _zgematrix &)
 
_zgematrix operator+ (const zgematrix &, const zgbmatrix &)
 
_zgematrix operator+ (const _zgematrix &, const zgbmatrix &)
 
_zgematrix operator+ (const zgbmatrix &, const zhematrix &)
 
_zgematrix operator+ (const zgbmatrix &, const _zhematrix &)
 
_zgematrix operator+ (const zhematrix &, const zgbmatrix &)
 
_zgematrix operator+ (const _zhematrix &, const zgbmatrix &)
 
_zgematrix operator+ (const zgbmatrix &, const zssmatrix &)
 
_zgematrix operator+ (const zgbmatrix &, const _zssmatrix &)
 
_zgematrix operator+ (const zssmatrix &, const zgbmatrix &)
 
_zgematrix operator+ (const _zssmatrix &, const zgbmatrix &)
 
_zgbmatrix operator- (const zgbmatrix &, const zgbmatrix &)
 
_zgbmatrix operator- (const zgbmatrix &, const _zgbmatrix &)
 
_zgbmatrix operator- (const _zgbmatrix &, const zgbmatrix &)
 
_zgematrix operator- (const zgbmatrix &, const zgematrix &)
 
_zgematrix operator- (const zgbmatrix &, const _zgematrix &)
 
_zgematrix operator- (const zgematrix &, const zgbmatrix &)
 
_zgematrix operator- (const _zgematrix &, const zgbmatrix &)
 
_zgematrix operator- (const zgbmatrix &, const zhematrix &)
 
_zgematrix operator- (const zgbmatrix &, const _zhematrix &)
 
_zgematrix operator- (const zhematrix &, const zgbmatrix &)
 
_zgematrix operator- (const _zhematrix &, const zgbmatrix &)
 
_zgematrix operator- (const zgbmatrix &, const zssmatrix &)
 
_zgematrix operator- (const zgbmatrix &, const _zssmatrix &)
 
_zgematrix operator- (const zssmatrix &, const zgbmatrix &)
 
_zgematrix operator- (const _zssmatrix &, const zgbmatrix &)
 
_zgbmatrix operator* (const zgbmatrix &, const zgbmatrix &)
 
_zgbmatrix operator* (const zgbmatrix &, const _zgbmatrix &)
 
_zgbmatrix operator* (const _zgbmatrix &, const zgbmatrix &)
 
_zgematrix operator* (const zgbmatrix &, const zgematrix &)
 
_zgematrix operator* (const zgbmatrix &, const _zgematrix &)
 
_zgematrix operator* (const zgematrix &, const zgbmatrix &)
 
_zgematrix operator* (const _zgematrix &, const zgbmatrix &)
 
_zgematrix operator* (const zgbmatrix &, const zhematrix &)
 
_zgematrix operator* (const zgbmatrix &, const _zhematrix &)
 
_zgematrix operator* (const zhematrix &, const zgbmatrix &)
 
_zgematrix operator* (const _zhematrix &, const zgbmatrix &)
 
_zgematrix operator* (const zgbmatrix &, const zssmatrix &)
 
_zgematrix operator* (const zgbmatrix &, const _zssmatrix &)
 
_zgematrix operator* (const zssmatrix &, const zgbmatrix &)
 
_zgematrix operator* (const _zssmatrix &, const zgbmatrix &)
 
_zcovector operator* (const zgbmatrix &, const zcovector &)
 
_zcovector operator* (const zgbmatrix &, const _zcovector &)
 
_zrovector operator* (const zrovector &, const zgbmatrix &)
 
_zrovector operator* (const _zrovector &, const zgbmatrix &)
 
_zgbmatrix operator* (const zgbmatrix &, const double &)
 
_zgbmatrix operator* (const double &, const zgbmatrix &)
 
_zgbmatrix operator* (const zgbmatrix &, const std::complex< double > &)
 
_zgbmatrix operator* (const std::complex< double > &, const zgbmatrix &)
 
_zgbmatrix operator/ (const zgbmatrix &, const double &)
 
_zgbmatrix operator/ (const zgbmatrix &, const std::complex< double > &)
 

Detailed Description

Complex Double-precision General Band Matrix Class.

Constructor & Destructor Documentation

zgbmatrix::zgbmatrix ( )
inline

zgbmatrix constructor

zgbmatrix::zgbmatrix ( const zgbmatrix mat)
inline

zgbmatrix copy constructor

zgbmatrix::zgbmatrix ( const _zgbmatrix mat)
inline

zgbmatrix constructor to cast _zgbmatrix

zgbmatrix::zgbmatrix ( const long &  _m,
const long &  _n,
const long &  _kl,
const long &  _ku 
)
inline

zgbmatrix constructor with size specification

zgbmatrix::zgbmatrix ( const char *  filename)
inline

zgbmatrix constructor with filename

zgbmatrix::~zgbmatrix ( )
inline

zgbmatrix destructor

Member Function Documentation

void zgbmatrix::chsign ( )
inline

change sign(+/-) of the matrix

void zgbmatrix::clear ( )
inline

clear all the matrix data and set the sizes 0

void zgbmatrix::copy ( const zgbmatrix mat)
inline

make a deep copy of the matrix

void zgbmatrix::identity ( )
inline

change the matrix into an identity matrix

std::complex< double > & zgbmatrix::operator() ( const long &  i,
const long &  j 
)
inline

operator() for non-const object

std::complex< double > zgbmatrix::operator() ( const long &  i,
const long &  j 
) const
inline

operator() for const object

zgbmatrix & zgbmatrix::operator*= ( const zgbmatrix mat)
inline

zgbmatrix*=zgbmatrix operator

zgbmatrix & zgbmatrix::operator*= ( const _zgbmatrix mat)
inline

zgbmatrix*=_zgbmatrix operator

zgbmatrix & zgbmatrix::operator*= ( const double &  d)
inline

zgbmatrix*=double operator

zgbmatrix & zgbmatrix::operator*= ( const std::complex< double > &  d)
inline

zgbmatrix*=std::complex<double> operator

zgbmatrix & zgbmatrix::operator+= ( const zgbmatrix mat)
inline

zgbmatrix+=zgbmatrix operator
If the band width of the left side matrix is narrower than the right side matrix, the band width of the left side matrix become thicker as same as the right side matrix.

zgbmatrix & zgbmatrix::operator+= ( const _zgbmatrix mat)
inline

zgbmatrix+=_zgbmatrix operator
If the band width of the left side matrix is narrower than the right side matrix, the band width of the left side matrix become thicker as same as the right side matrix.

zgbmatrix & zgbmatrix::operator-= ( const zgbmatrix mat)
inline

zgbmatrix-=zgbmatrix operator
If the band width of the left side matrix is narrower than the right side matrix, the band width of the left side matrix become thicker as same as the right side matrix.

zgbmatrix & zgbmatrix::operator-= ( const _zgbmatrix mat)
inline

zgbmatrix-=_zgbmatrix operator
If the band width of the left side matrix is narrower than the right side matrix, the band width of the left side matrix become thicker as same as the right side matrix.

zgbmatrix & zgbmatrix::operator/= ( const double &  d)
inline

zgbmatrix/=double operator

zgbmatrix & zgbmatrix::operator/= ( const std::complex< double > &  d)
inline

zgbmatrix/=std::complex<double> operator

zgbmatrix & zgbmatrix::operator= ( const zgbmatrix mat)
inline

zgbmatrix=zgbmatrix operator
The left side matrix is overwritten thoroughly including band width.

zgbmatrix & zgbmatrix::operator= ( const _zgbmatrix mat)
inline

zgbmatrix=_zgbmatrix operator

void zgbmatrix::resize ( const long &  _m,
const long &  _n,
const long &  _kl,
const long &  _ku 
)
inline

resize the matrix

void zgbmatrix::set ( const long &  i,
const long &  j,
const std::complex< double > &  v 
) const
inline

set value for const object

void zgbmatrix::shallow_copy ( const _zgbmatrix mat)
inline

make a shallow copy of the matrix
This function is not designed to be used in project codes.

void zgbmatrix::zero ( )
inline

change the matrix into a zero matrix

long zgbmatrix::zgbsv ( zgematrix mat)
inline

solve A*X=Y using zgbsv
The argument is zgematrix Y. Y is overwritten and become the solution X. A is also overwritten.

long zgbmatrix::zgbsv ( zcovector vec)
inline

solve A*x=y using zgbsv
The argument is zcovector y. y is overwritten and become the solution x. A is also overwritten.

Friends And Related Function Documentation

_zgbmatrix _ ( zgbmatrix mat)
friend

convert user object to smart-temporary object

_zgbmatrix conj ( const zgbmatrix mat)
friend

return its conjugate matrix

_zgbmatrix conjt ( const zgbmatrix mat)
friend

return its conjugate transposed zgbmatrix

_zgematrix i ( const zgbmatrix mat)
friend

return its inverse matrix

_zgbmatrix operator* ( const zgbmatrix matA,
const zgbmatrix matB 
)
friend

zgbmatrix*zgbmatrix operator

_zgbmatrix operator* ( const zgbmatrix matA,
const _zgbmatrix matB 
)
friend

zgbmatrix*_zgbmatrix operator

_zgbmatrix operator* ( const _zgbmatrix matA,
const zgbmatrix matB 
)
friend

_zgbmatrix*zgbmatrix operator

_zgematrix operator* ( const zgbmatrix matA,
const zgematrix matB 
)
friend

zgbmatrix*zgematrix operator

_zgematrix operator* ( const zgbmatrix matA,
const _zgematrix matB 
)
friend

zgbmatrix*_zgematrix operator

_zgematrix operator* ( const zgematrix matA,
const zgbmatrix matB 
)
friend

zgematrix*zgbmatrix operator

_zgematrix operator* ( const _zgematrix matA,
const zgbmatrix matB 
)
friend

_zgematrix*zgbmatrix operator

_zgematrix operator* ( const zgbmatrix matA,
const zhematrix matB 
)
friend

zgbmatrix*zhematrix operator

_zgematrix operator* ( const zgbmatrix matA,
const _zhematrix matB 
)
friend

zgbmatrix*_zhematrix operator

_zgematrix operator* ( const zhematrix matA,
const zgbmatrix matB 
)
friend

zhematrix*zgbmatrix operator

_zgematrix operator* ( const _zhematrix matA,
const zgbmatrix matB 
)
friend

_zgematrix*zgbmatrix operator

_zgematrix operator* ( const zgbmatrix matA,
const zssmatrix matB 
)
friend

zgbmatrix*zssmatrix operator

_zgematrix operator* ( const zgbmatrix matA,
const _zssmatrix matB 
)
friend

zgbmatrix*_zssmatrix operator

_zgematrix operator* ( const zssmatrix matA,
const zgbmatrix matB 
)
friend

zssmatrix*zgbmatrix operator

_zgematrix operator* ( const _zssmatrix matA,
const zgbmatrix matB 
)
friend

_zssmatrix*zgbmatrix operator

_zcovector operator* ( const zgbmatrix mat,
const zcovector vec 
)
friend

zgbmatrix*zcovector operator

_zcovector operator* ( const zgbmatrix mat,
const _zcovector vec 
)
friend

zgbmatrix*_zcovector operator

_zrovector operator* ( const zrovector vec,
const zgbmatrix mat 
)
friend

zrovector*zgbmatrix operator

_zrovector operator* ( const _zrovector vec,
const zgbmatrix mat 
)
friend

_zrovector*zgbmatrix operator

_zgbmatrix operator* ( const zgbmatrix mat,
const double &  d 
)
friend

zgbmatrix*double operator

_zgbmatrix operator* ( const double &  d,
const zgbmatrix mat 
)
friend

double*zgbmatrix operator

_zgbmatrix operator* ( const zgbmatrix mat,
const std::complex< double > &  d 
)
friend

zgbmatrix*std::complex<double> operator

_zgbmatrix operator* ( const std::complex< double > &  d,
const zgbmatrix mat 
)
friend

std::complex<double>*zgbmatrix operator

const zgbmatrix& operator+ ( const zgbmatrix mat)
friend

+zgbmatrix operator

_zgbmatrix operator+ ( const zgbmatrix matA,
const zgbmatrix matB 
)
friend

zgbmatrix+zgbmatrix operator

_zgbmatrix operator+ ( const zgbmatrix matA,
const _zgbmatrix matB 
)
friend

zgbmatrix+_zgbmatrix operator

_zgbmatrix operator+ ( const _zgbmatrix matA,
const zgbmatrix matB 
)
friend

_zgbmatrix+zgbmatrix operator

_zgematrix operator+ ( const zgbmatrix matA,
const zgematrix matB 
)
friend

zgbmatrix+zgematrix operator

_zgematrix operator+ ( const zgbmatrix matA,
const _zgematrix matB 
)
friend

zgbmatrix+_zgematrix operator

_zgematrix operator+ ( const zgematrix matA,
const zgbmatrix matB 
)
friend

zgematrix+zgbmatrix operator

_zgematrix operator+ ( const _zgematrix matA,
const zgbmatrix matB 
)
friend

_zgematrix+zgbmatrix operator

_zgematrix operator+ ( const zgbmatrix matA,
const zhematrix matB 
)
friend

zgbmatrix+zhematrix operator

_zgematrix operator+ ( const zgbmatrix matA,
const _zhematrix matB 
)
friend

zgbmatrix+_zhematrix operator

_zgematrix operator+ ( const zhematrix matA,
const zgbmatrix matB 
)
friend

zhematrix+zgbmatrix operator

_zgematrix operator+ ( const _zhematrix matA,
const zgbmatrix matB 
)
friend

_zhematrix+zgbmatrix operator

_zgematrix operator+ ( const zgbmatrix matA,
const zssmatrix matB 
)
friend

zgbmatrix+zssmatrix operator

_zgematrix operator+ ( const zgbmatrix matA,
const _zssmatrix matB 
)
friend

zgbmatrix+_zssmatrix operator

_zgematrix operator+ ( const zssmatrix matA,
const zgbmatrix matB 
)
friend

zssmatrix+zgbmatrix operator

_zgematrix operator+ ( const _zssmatrix matA,
const zgbmatrix matB 
)
friend

_zssmatrix+zgbmatrix operator

_zgbmatrix operator- ( const zgbmatrix mat)
friend

-zgbmatrix operator

_zgbmatrix operator- ( const zgbmatrix matA,
const zgbmatrix matB 
)
friend

zgbmatrix-zgbmatrix operator

_zgbmatrix operator- ( const zgbmatrix matA,
const _zgbmatrix matB 
)
friend

zgbmatrix-_zgbmatrix operator

_zgbmatrix operator- ( const _zgbmatrix matA,
const zgbmatrix matB 
)
friend

_zgbmatrix-zgbmatrix operator

_zgematrix operator- ( const zgbmatrix matA,
const zgematrix matB 
)
friend

zgbmatrix-zgematrix operator

_zgematrix operator- ( const zgbmatrix matA,
const _zgematrix matB 
)
friend

zgbmatrix-_zgematrix operator

_zgematrix operator- ( const zgematrix matA,
const zgbmatrix matB 
)
friend

zgematrix-zgbmatrix operator

_zgematrix operator- ( const _zgematrix matA,
const zgbmatrix matB 
)
friend

_zgematrix-zgbmatrix operator

_zgematrix operator- ( const zgbmatrix matA,
const zhematrix matB 
)
friend

zgbmatrix-zhematrix operator

_zgematrix operator- ( const zgbmatrix matA,
const _zhematrix matB 
)
friend

zgbmatrix-_zhematrix operator

_zgematrix operator- ( const zhematrix matA,
const zgbmatrix matB 
)
friend

zhematrix-zgbmatrix operator

_zgematrix operator- ( const _zhematrix matA,
const zgbmatrix matB 
)
friend

_zhematrix-zgbmatrix operator

_zgematrix operator- ( const zgbmatrix matA,
const zssmatrix matB 
)
friend

zgbmatrix-zssmatrix operator

_zgematrix operator- ( const zgbmatrix matA,
const _zssmatrix matB 
)
friend

zgbmatrix-_zssmatrix operator

_zgematrix operator- ( const zssmatrix matA,
const zgbmatrix matB 
)
friend

zssmatrix-zgbmatrix operator

_zgematrix operator- ( const _zssmatrix matA,
const zgbmatrix matB 
)
friend

_zssmatrix-zgbmatrix operator

_zgbmatrix operator/ ( const zgbmatrix mat,
const double &  d 
)
friend

zgbmatrix/double operator

_zgbmatrix operator/ ( const zgbmatrix mat,
const std::complex< double > &  d 
)
friend

zgbmatrix/std::complex<double> operator

void swap ( zgbmatrix A,
zgbmatrix B 
)
friend

swap two matrices

_zgbmatrix t ( const zgbmatrix mat)
friend

return transposed zgbmatrix


The documentation for this class was generated from the following file: