Itasca C++ Interface
Loading...
Searching...
No Matches
itasca::Mat Class Reference

Public Types

using size_type = uint32

Public Member Functions

 Mat (size_type m, size_type n)
 Mat (const Mat &mtx)
 Mat (Mat &&mtx)
 Mat (const SymTensor &t)
 Mat (const DVect2 &v)
 Mat (const DVect3 &v)
template<unsigned SX, unsigned SY>
 Mat (const Matrix< double, SX, SY > &v)
 Mat (const DMatrix< 2, 2 > &v)
 Mat (const DMatrix< 3, 3 > &v)
double & operator() (size_type i, size_type j)
const double & operator() (size_type i, size_type j) const
constexpr std::partial_ordering operator<=> (const Mat &m) const
Matoperator= (const Mat &mtx)
Matoperator= (Mat &&mtx)
Mat operator+ (const Mat &mtx) const
Mat operator- (const Mat &mtx) const
Mat operator* (const Mat &mtx) const
Mat operator* (double scal) const
Mat operator* (const DVect2 &v) const
Mat operator* (const DVect3 &v) const
void operator*= (double s)
void operator/= (double s)
void operator+= (const Mat &mtx)
void operator-= (const Mat &mtx)
void fill (double val)
void zero ()
void identity ()
Mat transpose () const
void scalMult (double scal)
bool equals (const Mat &mtx) const
bool exactEquals (const Mat &mtx) const
bool operator== (const Mat &mtx) const
virtual bool symmetric () const
virtual double maxNorm () const
UVect2 size () const
UVect2 blockSize () const
void setBlockSize (size_type blk_msize, size_type blk_nsize)
void addBlock (const Mat &src, size_type src_bi, size_type src_bj, size_type dst_bi, size_type dst_bj)
virtual void addGenBlock (const Mat &src, size_type src_i, size_type src_j, size_type dst_i, size_type dst_j)
SymTensor toTensor () const
DVect2 toVect2 () const
DVect3 toVect3 () const
template<unsigned SX, unsigned SY>
Matrix< double, SX, SY > toMatrix () const
double * data () const

Protected Member Functions

bool same (const double *v1, const double *v2) const
size_type arr_idx (size_type i, size_type j) const

Protected Attributes

double * arr = nullptr
size_type msize
size_type nsize
size_type len
size_type blk_m = 1
size_type blk_n = 1

The documentation for this class was generated from the following files:
  • C:/Source/itasca-suite/common/base/src/mat.h
  • C:/Source/itasca-suite/common/base/src/mat.cpp