suanPan
csc_form< data_t, index_t > Class Template Referencefinal

#include <csc_form.hpp>

Collaboration diagram for csc_form< data_t, index_t >:

Public Member Functions

 csc_form ()=default
 
 csc_form (const csc_form &)
 
 csc_form (csc_form &&) noexcept
 
csc_formoperator= (const csc_form &)
 
csc_formoperator= (csc_form &&) noexcept
 
 ~csc_form ()=default
 
const index_t * row_mem () const
 
const index_t * col_mem () const
 
const data_t * val_mem () const
 
index_t * row_mem ()
 
index_t * col_mem ()
 
data_t * val_mem ()
 
index_t row (const index_t I) const
 
index_t col (const index_t I) const
 
data_t val (const index_t I) const
 
data_t max () const
 
void print () const
 
template<sp_d T2>
csc_form operator* (const T2 scalar) const
 
template<sp_d T2>
csc_form operator/ (const T2 scalar) const
 
template<sp_d T2>
csc_formoperator*= (const T2 scalar)
 
template<sp_d T2>
csc_formoperator/= (const T2 scalar)
 
template<sp_d in_dt, sp_i in_it>
 csc_form (triplet_form< in_dt, in_it > &, SparseBase=SparseBase::ZERO, bool=false)
 
template<sp_d in_dt, sp_i in_it>
csc_formoperator= (triplet_form< in_dt, in_it > &)
 
data_t operator() (const index_t in_row, const index_t in_col) const
 
Mat< data_t > operator* (const Col< data_t > &in_mat) const
 
Mat< data_t > operator* (const Mat< data_t > &in_mat) const
 
template<sp_d in_dt, sp_i in_it>
csc_form< data_t, index_t > & operator= (triplet_form< in_dt, in_it > &in_mat)
 

Public Attributes

const index_t n_rows = 0
 
const index_t n_cols = 0
 
const index_t n_elem = 0
 

Constructor & Destructor Documentation

◆ csc_form() [1/4]

template<sp_d data_t, sp_i index_t>
csc_form< data_t, index_t >::csc_form ( )
default

◆ csc_form() [2/4]

template<sp_d data_t, sp_i index_t>
csc_form< data_t, index_t >::csc_form ( const csc_form< data_t, index_t > &  in_mat)

◆ csc_form() [3/4]

template<sp_d data_t, sp_i index_t>
csc_form< data_t, index_t >::csc_form ( csc_form< data_t, index_t > &&  in_mat)
noexcept

◆ ~csc_form()

template<sp_d data_t, sp_i index_t>
csc_form< data_t, index_t >::~csc_form ( )
default

◆ csc_form() [4/4]

template<sp_d data_t, sp_i index_t>
template<sp_d in_dt, sp_i in_it>
csc_form< data_t, index_t >::csc_form ( triplet_form< in_dt, in_it > &  in_mat,
SparseBase  base = SparseBase::ZERO,
bool  full = false 
)
explicit
Here is the call graph for this function:

Member Function Documentation

◆ col()

template<sp_d data_t, sp_i index_t>
index_t csc_form< data_t, index_t >::col ( const index_t  I) const
inline
Here is the caller graph for this function:

◆ col_mem() [1/2]

template<sp_d data_t, sp_i index_t>
index_t * csc_form< data_t, index_t >::col_mem ( )
inline

◆ col_mem() [2/2]

template<sp_d data_t, sp_i index_t>
const index_t * csc_form< data_t, index_t >::col_mem ( ) const
inline
Here is the caller graph for this function:

◆ max()

template<sp_d data_t, sp_i index_t>
data_t csc_form< data_t, index_t >::max ( ) const
inline
Here is the call graph for this function:

◆ operator()()

template<sp_d data_t, sp_i index_t>
data_t csc_form< data_t, index_t >::operator() ( const index_t  in_row,
const index_t  in_col 
) const
inline

◆ operator*() [1/3]

template<sp_d data_t, sp_i index_t>
Mat< data_t > csc_form< data_t, index_t >::operator* ( const Col< data_t > &  in_mat) const
inline

◆ operator*() [2/3]

template<sp_d data_t, sp_i index_t>
Mat< data_t > csc_form< data_t, index_t >::operator* ( const Mat< data_t > &  in_mat) const
inline

◆ operator*() [3/3]

template<sp_d data_t, sp_i index_t>
template<sp_d T2>
csc_form csc_form< data_t, index_t >::operator* ( const T2  scalar) const
inline

◆ operator*=()

template<sp_d data_t, sp_i index_t>
template<sp_d T2>
csc_form & csc_form< data_t, index_t >::operator*= ( const T2  scalar)
inline

◆ operator/()

template<sp_d data_t, sp_i index_t>
template<sp_d T2>
csc_form csc_form< data_t, index_t >::operator/ ( const T2  scalar) const
inline

◆ operator/=()

template<sp_d data_t, sp_i index_t>
template<sp_d T2>
csc_form & csc_form< data_t, index_t >::operator/= ( const T2  scalar)
inline

◆ operator=() [1/4]

template<sp_d data_t, sp_i index_t>
csc_form< data_t, index_t > & csc_form< data_t, index_t >::operator= ( const csc_form< data_t, index_t > &  in_mat)

◆ operator=() [2/4]

template<sp_d data_t, sp_i index_t>
csc_form< data_t, index_t > & csc_form< data_t, index_t >::operator= ( csc_form< data_t, index_t > &&  in_mat)
noexcept

◆ operator=() [3/4]

template<sp_d data_t, sp_i index_t>
template<sp_d in_dt, sp_i in_it>
csc_form & csc_form< data_t, index_t >::operator= ( triplet_form< in_dt, in_it > &  )

◆ operator=() [4/4]

template<sp_d data_t, sp_i index_t>
template<sp_d in_dt, sp_i in_it>
csc_form< data_t, index_t > & csc_form< data_t, index_t >::operator= ( triplet_form< in_dt, in_it > &  in_mat)
Here is the call graph for this function:

◆ print()

template<sp_d data_t, sp_i index_t>
void csc_form< data_t, index_t >::print

◆ row()

template<sp_d data_t, sp_i index_t>
index_t csc_form< data_t, index_t >::row ( const index_t  I) const
inline

◆ row_mem() [1/2]

template<sp_d data_t, sp_i index_t>
index_t * csc_form< data_t, index_t >::row_mem ( )
inline

◆ row_mem() [2/2]

template<sp_d data_t, sp_i index_t>
const index_t * csc_form< data_t, index_t >::row_mem ( ) const
inline
Here is the caller graph for this function:

◆ val()

template<sp_d data_t, sp_i index_t>
data_t csc_form< data_t, index_t >::val ( const index_t  I) const
inline

◆ val_mem() [1/2]

template<sp_d data_t, sp_i index_t>
data_t * csc_form< data_t, index_t >::val_mem ( )
inline

◆ val_mem() [2/2]

template<sp_d data_t, sp_i index_t>
const data_t * csc_form< data_t, index_t >::val_mem ( ) const
inline
Here is the caller graph for this function:

Member Data Documentation

◆ n_cols

template<sp_d data_t, sp_i index_t>
const index_t csc_form< data_t, index_t >::n_cols = 0

◆ n_elem

template<sp_d data_t, sp_i index_t>
const index_t csc_form< data_t, index_t >::n_elem = 0

◆ n_rows

template<sp_d data_t, sp_i index_t>
const index_t csc_form< data_t, index_t >::n_rows = 0

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