suanPan
MetaMat

Concepts

concept  ArmaContainer
 

Classes

class  BandMat< T >
 A BandMat class that holds matrices. More...
 
class  BandMatSpike< T >
 A BandMatSpike class that holds matrices. More...
 
class  BandSymmMat< T >
 A BandSymmMat class that holds matrices. More...
 
class  DenseMat< T >
 A DenseMat class that holds matrices. More...
 
class  FullMat< T >
 A FullMat class that holds matrices. More...
 
class  MetaMat< T >
 A MetaMat class that holds matrices. More...
 
class  op_add< T >
 
class  op_scale< T >
 
class  SparseMat< T >
 A SparseMat class that holds matrices. More...
 
class  SparseMatLis< T >
 A SparseMatLis class that holds matrices. More...
 
class  SparseMatBaseMUMPS< T >
 
class  SparseMatMUMPS< T >
 A SparseMatMUMPS class that holds matrices. More...
 
class  SparseSymmMatMUMPS< T >
 
class  SparseMatSuperLU< T >
 A SparseMatSuperLU class that holds matrices. More...
 
class  SymmPackMat< T >
 A SymmPackMat class that holds matrices. More...
 

Functions

template<sp_d T>
uword round_up (const uword in_size)
 
template<sp_d T>
Mat< T > to_mat (const MetaMat< T > &in_mat)
 
template<sp_d T>
Mat< T > to_mat (const shared_ptr< MetaMat< T > > &in_mat)
 
template<sp_d data_t, sp_i index_t>
Mat< data_t > to_mat (const triplet_form< data_t, index_t > &in_mat)
 
template<sp_d data_t, sp_i index_t>
Mat< data_t > to_mat (const csr_form< data_t, index_t > &in_mat)
 
template<sp_d data_t, sp_i index_t>
Mat< data_t > to_mat (const csc_form< data_t, index_t > &in_mat)
 
template<sp_d data_t, sp_i index_t>
triplet_form< data_t, index_t > to_triplet_form (MetaMat< data_t > *in_mat)
 
template<sp_d data_t, sp_i index_t>
triplet_form< data_t, index_t > to_triplet_form (const shared_ptr< MetaMat< data_t > > &in_mat)
 
Mat< TBandMat< T >::operator* (const Mat< T > &) const override
 
int BandMat< T >::direct_solve (Mat< T > &, Mat< T > &&) override
 
Mat< TBandMatSpike< T >::operator* (const Mat< T > &) const override
 
int BandMatSpike< T >::direct_solve (Mat< T > &, Mat< T > &&) override
 
Mat< TBandSymmMat< T >::operator* (const Mat< T > &) const override
 
int BandSymmMat< T >::direct_solve (Mat< T > &, Mat< T > &&) override
 
Mat< TFullMat< T >::operator* (const Mat< T > &) const override
 
int FullMat< T >::direct_solve (Mat< T > &, Mat< T > &&) override
 
int MetaMat< T >::iterative_solve (Mat< T > &, const Mat< T > &)
 
int SparseMatLis< T >::direct_solve (Mat< T > &, const Mat< T > &) override
 
 SparseMatSuperLU< T >::SparseMatSuperLU (uword, uword, uword=0)
 
 SparseMatSuperLU< T >::SparseMatSuperLU (const SparseMatSuperLU &)
 
 SparseMatSuperLU< T >::~SparseMatSuperLU () override
 
void SparseMatSuperLU< T >::zeros () override
 
unique_ptr< MetaMat< T > > SparseMatSuperLU< T >::make_copy () override
 
int SparseMatSuperLU< T >::direct_solve (Mat< T > &, Mat< T > &&) override
 
Mat< TSymmPackMat< T >::operator* (const Mat< T > &) const override
 
int SymmPackMat< T >::direct_solve (Mat< T > &, Mat< T > &&) override
 

Detailed Description

Function Documentation

◆ direct_solve() [1/7]

template<sp_d T>
int SparseMatLis< T >::direct_solve ( Mat< T > &  X,
const Mat< T > &  B 
)
overrideprotectedvirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ direct_solve() [2/7]

template<sp_d T>
int BandMat< T >::direct_solve ( Mat< T > &  X,
Mat< T > &&  B 
)
overrideprotectedvirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ direct_solve() [3/7]

template<sp_d T>
int BandMatSpike< T >::direct_solve ( Mat< T > &  X,
Mat< T > &&  B 
)
overrideprotectedvirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ direct_solve() [4/7]

template<sp_d T>
int BandSymmMat< T >::direct_solve ( Mat< T > &  X,
Mat< T > &&  B 
)
overrideprotectedvirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ direct_solve() [5/7]

template<sp_d T>
int FullMat< T >::direct_solve ( Mat< T > &  X,
Mat< T > &&  B 
)
overrideprotectedvirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ direct_solve() [6/7]

template<sp_d T>
int SparseMatSuperLU< T >::direct_solve ( Mat< T > &  out_mat,
Mat< T > &&  in_mat 
)
overrideprotectedvirtual

Reimplemented from SparseMat< T >.

◆ direct_solve() [7/7]

template<sp_d T>
int SymmPackMat< T >::direct_solve ( Mat< T > &  X,
Mat< T > &&  B 
)
overrideprotectedvirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ iterative_solve()

template<sp_d T>
int MetaMat< T >::iterative_solve ( Mat< T > &  X,
const Mat< T > &  B 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ make_copy()

template<sp_d T>
unique_ptr< MetaMat< T > > SparseMatSuperLU< T >::make_copy
overridevirtual

Implements MetaMat< T >.

◆ operator*() [1/5]

template<sp_d T>
Mat< T > BandMat< T >::operator* ( const Mat< T > &  X) const
overridevirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ operator*() [2/5]

template<sp_d T>
Mat< T > BandMatSpike< T >::operator* ( const Mat< T > &  X) const
overridevirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ operator*() [3/5]

template<sp_d T>
Mat< T > BandSymmMat< T >::operator* ( const Mat< T > &  X) const
overridevirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ operator*() [4/5]

template<sp_d T>
Mat< T > FullMat< T >::operator* ( const Mat< T > &  B) const
overridevirtual

Implements MetaMat< T >.

◆ operator*() [5/5]

template<sp_d T>
Mat< T > SymmPackMat< T >::operator* ( const Mat< T > &  X) const
overridevirtual

Implements MetaMat< T >.

Here is the call graph for this function:

◆ round_up()

template<sp_d T>
uword round_up ( const uword  in_size)

◆ SparseMatSuperLU() [1/2]

template<sp_d T>
SparseMatSuperLU< T >::SparseMatSuperLU ( const SparseMatSuperLU< T > &  other)

◆ SparseMatSuperLU() [2/2]

template<sp_d T>
SparseMatSuperLU< T >::SparseMatSuperLU ( uword  in_row,
uword  in_col,
uword  in_elem = 0 
)

◆ to_mat() [1/5]

template<sp_d data_t, sp_i index_t>
Mat< data_t > to_mat ( const csc_form< data_t, index_t > &  in_mat)
Here is the call graph for this function:

◆ to_mat() [2/5]

template<sp_d data_t, sp_i index_t>
Mat< data_t > to_mat ( const csr_form< data_t, index_t > &  in_mat)
Here is the call graph for this function:

◆ to_mat() [3/5]

template<sp_d T>
Mat< T > to_mat ( const MetaMat< T > &  in_mat)
Here is the caller graph for this function:

◆ to_mat() [4/5]

template<sp_d T>
Mat< T > to_mat ( const shared_ptr< MetaMat< T > > &  in_mat)
Here is the call graph for this function:

◆ to_mat() [5/5]

template<sp_d data_t, sp_i index_t>
Mat< data_t > to_mat ( const triplet_form< data_t, index_t > &  in_mat)
Here is the call graph for this function:

◆ to_triplet_form() [1/2]

template<sp_d data_t, sp_i index_t>
triplet_form< data_t, index_t > to_triplet_form ( const shared_ptr< MetaMat< data_t > > &  in_mat)

◆ to_triplet_form() [2/2]

template<sp_d data_t, sp_i index_t>
triplet_form< data_t, index_t > to_triplet_form ( MetaMat< data_t > *  in_mat)
Here is the call graph for this function:

◆ zeros()

template<sp_d T>
void SparseMatSuperLU< T >::zeros
overridevirtual

Reimplemented from SparseMat< T >.

Here is the call graph for this function:

◆ ~SparseMatSuperLU()

template<sp_d T>
SparseMatSuperLU< T >::~SparseMatSuperLU
override