VERB_code_2.3
zssmatrix Class Reference

Complex Double-precision Sparse Matrix Class. More...

#include <zssmatrix.hpp>

Public Member Functions

 zssmatrix ()
 
 zssmatrix (const zssmatrix &)
 
 zssmatrix (const _zssmatrix &)
 
 zssmatrix (const long &, const long &, const long &)
 
 zssmatrix (const char *)
 
 ~zssmatrix ()
 
 operator _zgematrix ()
 
std::complex< double > operator() (const long &, const long &) const
 
void put (const long &, const long &, const std::complex< double > &)
 
void fput (const long &, const long &, const std::complex< double > &)
 
void add (const long &, const long &, const std::complex< double > &)
 
void sub (const long &, const long &, const std::complex< double > &)
 
void mult (const long &, const long &, const std::complex< double > &)
 
void div (const long &, const long &, const std::complex< double > &)
 
void del (const long &, const long &)
 
void fdel (const long &)
 
void write (const char *) const
 
void read (const char *)
 
void clear ()
 
void zero ()
 
void chsign ()
 
void copy (const zssmatrix &)
 
void shallow_copy (const _zssmatrix &)
 
void resize (const long &, const long &, const long &)
 
void expand (const long &)
 
bool isListed (const long &, const long &)
 
long number (const long &, const long &)
 
void checkup ()
 
zssmatrixoperator= (const zssmatrix &)
 
zssmatrixoperator+= (const zssmatrix &)
 
zssmatrixoperator-= (const zssmatrix &)
 
zssmatrixoperator*= (const zssmatrix &)
 
zssmatrixoperator= (const _zssmatrix &)
 
zssmatrixoperator+= (const _zssmatrix &)
 
zssmatrixoperator-= (const _zssmatrix &)
 
zssmatrixoperator*= (const _zssmatrix &)
 
zssmatrixoperator*= (const double &)
 
zssmatrixoperator/= (const double &)
 
zssmatrixoperator*= (const std::complex< double > &)
 
zssmatrixoperator/= (const std::complex< double > &)
 

Public Attributes

long const & m
 matrix row size (readable)
 
long const & n
 matrix column size (readable)
 
long const & cap
 the length of data arrays (readable)
 
long const & vol
 the number of non-zero components (readable)
 
std::complex< double > *const & array
 1D array to store matrix data (readable)
 
long *const & indx
 1D array to store the i-index of non-zero matrix components (readable)
 
long *const & jndx
 1D array to store the j-index of non-zero matrix components (readable)
 

Friends

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

Detailed Description

Complex Double-precision Sparse Matrix Class.

Constructor & Destructor Documentation

zssmatrix::zssmatrix ( )
inline

zssmatrix constructor without arguments

zssmatrix::zssmatrix ( const zssmatrix mat)
inline

zssmatrix copy constructor

zssmatrix::zssmatrix ( const _zssmatrix mat)
inline

zssmatrix constructor to cast _zssmatrix

zssmatrix::zssmatrix ( const long &  _m,
const long &  _n,
const long &  _c 
)
inline

zssmatrix constructor with size specification

zssmatrix::zssmatrix ( const char *  filename)
inline

zssmatrix constructor with filename

zssmatrix::~zssmatrix ( )
inline

zssmatrix destructor

Member Function Documentation

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

add value with isListed check and volume cheack

void zssmatrix::checkup ( )
inline

health checkup

void zssmatrix::chsign ( )
inline

change sign(+/-) of the matrix

void zssmatrix::clear ( )
inline

clear all the matrix data and set the sizes 0

void zssmatrix::copy ( const zssmatrix mat)
inline

make a deep copy of the matrix

void zssmatrix::del ( const long &  i,
const long &  j 
)
inline

delete the entry of a component

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

divide value with isListed check and volume cheack

void zssmatrix::expand ( const long &  dc)
inline

expand the matrix capacity

void zssmatrix::fdel ( const long &  c)
inline

delete the entry of an element

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

put value without isListed check and volume cheack

bool zssmatrix::isListed ( const long &  i,
const long &  j 
)
inline

check if the component is listed

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

multiply value with isListed check and volume cheack

long zssmatrix::number ( const long &  i,
const long &  j 
)
inline

return the element number of the component

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

operator() for const object

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

zssmatrix*=zssmatrix operator

zssmatrix & zssmatrix::operator*= ( const _zssmatrix mat)
inline

zssmatrix*=_zssmatrix operator

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

zssmatrix*=double operator

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

zssmatrix*=std::complex<double> operator

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

zssmatrix+=zssmatrix operator

zssmatrix & zssmatrix::operator+= ( const _zssmatrix mat)
inline

zssmatrix+=_zssmatrix operator

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

zssmatrix-=zssmatrix operator

zssmatrix & zssmatrix::operator-= ( const _zssmatrix mat)
inline

zssmatrix-=_zssmatrix operator

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

zssmatrix/=double operator

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

zssmatrix/=std::complex<double> operator

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

zssmatrix=zssmatrix operator

zssmatrix & zssmatrix::operator= ( const _zssmatrix mat)
inline

zssmatrix=_zssmatrix operator

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

put value with isListed check and volume cheack

void zssmatrix::resize ( const long &  _m,
const long &  _n,
const long &  _c 
)
inline

resize the matrix

void zssmatrix::shallow_copy ( const _zssmatrix mat)
inline

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

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

subtract value with isListed check and volume cheack

void zssmatrix::zero ( )
inline

change the matrix into a zero matrix

Friends And Related Function Documentation

_zssmatrix _ ( zssmatrix mat)
friend

convert user object to smart-temporary object

std::complex<double> damax ( const zssmatrix mat)
friend

return its largest absolute value

void idamax ( long &  i,
long &  j,
const zssmatrix mat 
)
friend

search the index of element having the largest absolute value in 0-based numbering system

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

zssmatrix*zgematrix operator

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

zssmatrix*_zgematrix operator

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

zgematrix*zssmatrix operator

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

_zgematrix*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

_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 zhematrix matA,
const zssmatrix matB 
)
friend

zhematrix*zssmatrix operator

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

_zhematrix*zssmatrix operator

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

zssmatrix*zhematrix operator

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

zssmatrix*_zhematrix operator

_zssmatrix operator* ( const zssmatrix matA,
const zssmatrix matB 
)
friend

zssmatrix*zssmatrix operator

_zssmatrix operator* ( const zssmatrix matA,
const _zssmatrix matB 
)
friend

zssmatrix*_zssmatrix operator

_zssmatrix operator* ( const _zssmatrix matA,
const zssmatrix matB 
)
friend

_zssmatrix*zssmatrix operator

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

zssmatrix*zcovector operator

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

zssmatrix*_zcovector operator

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

zrovector*zssmatrix operator

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

_zrovector*zssmatrix operator

_zssmatrix operator* ( const zssmatrix mat,
const double &  d 
)
friend

zssmatrix*double operator

_zssmatrix operator* ( const double &  d,
const zssmatrix mat 
)
friend

double*zssmatrix operator

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

zssmatrix*std::complex<double> operator

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

std::complex<double>*zssmatrix operator

const zssmatrix& operator+ ( const zssmatrix mat)
friend

+zssmatrix operator

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

zssmatrix+zgematrix operator

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

zssmatrix+_zgematrix operator

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

zgematrix+zssmatrix operator

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

_zgematrix+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

_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 zhematrix matB 
)
friend

zssmatrix+zhematrix operator

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

zssmatrix+_zhematrix operator

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

zhematrix+zssmatrix operator

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

_zhematrix+zssmatrix operator

_zssmatrix operator+ ( const zssmatrix matA,
const zssmatrix matB 
)
friend

zssmatrix+zssmatrix operator

_zssmatrix operator+ ( const zssmatrix matA,
const _zssmatrix matB 
)
friend

zssmatrix+_zssmatrix operator

_zssmatrix operator+ ( const _zssmatrix matA,
const zssmatrix matB 
)
friend

_zssmatrix+zssmatrix operator

_zssmatrix operator- ( const zssmatrix mat)
friend

-zssmatrix operator

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

zssmatrix-zgematrix operator

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

zssmatrix-_zgematrix operator

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

zgematrix-zssmatrix operator

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

_zgematrix-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

_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 zhematrix matB 
)
friend

zssmatrix-zhematrix operator

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

zssmatrix-_zhematrix operator

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

zhematrix-zssmatrix operator

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

_zhematrix-zssmatrix operator

_zssmatrix operator- ( const zssmatrix matA,
const zssmatrix matB 
)
friend

zssmatrix-zssmatrix operator

_zssmatrix operator- ( const zssmatrix matA,
const _zssmatrix matB 
)
friend

zssmatrix-_zssmatrix operator

_zssmatrix operator- ( const _zssmatrix matA,
const zssmatrix matB 
)
friend

_zssmatrix-zssmatrix operator

_zssmatrix operator/ ( const zssmatrix mat,
const double &  d 
)
friend

zssmatrix/double operator

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

zssmatrix/std::complex<double> operator

void swap ( zssmatrix A,
zssmatrix B 
)
friend

swap two matrices

_zssmatrix t ( const zssmatrix mat)
friend

return transposed zssmatrix


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