![]() |
imate
C++/CUDA Reference
|
Base class for linear operators. This class serves as interface for all derived classes. More...
#include <c_linear_operator.h>


Public Member Functions | |
| cLinearOperator () | |
| Default constructor. | |
| virtual | ~cLinearOperator () |
| Destructor. | |
| void | set_parameters (DataType *parameters_) |
Sets the scalar parameter this->parameters. Parameter is initialized to NULL. However, before calling dot or transpose_dot functions, the parameters must be set. | |
| virtual DataType | get_eigenvalue (const DataType *known_parameters, const DataType known_eigenvalue, const DataType *inquiry_parameters) const =0 |
| virtual void | dot (const DataType *vector, DataType *product)=0 |
| virtual void | transpose_dot (const DataType *vector, DataType *product)=0 |
Public Member Functions inherited from cLinearOperatorBase | |
| cLinearOperatorBase () | |
| Default constructor. | |
| cLinearOperatorBase (const LongIndexType num_rows_, const LongIndexType num_columns_) | |
Constructor with setting num_rows and num_columns. | |
| virtual | ~cLinearOperatorBase () |
| Destructor. | |
| LongIndexType | get_num_rows () const |
| Returns the number of rows of the matrix. | |
| LongIndexType | get_num_columns () const |
| Returns the number of columns of the matrix. | |
| IndexType | get_num_parameters () const |
| Returns the number of parameters of the linear operator. | |
| FlagType | is_eigenvalue_relation_known () const |
| Returns a flag that determines whether a relation between the parameters of the operator and its eigenvalue(s) is known. | |
| virtual void | set_symmetry (FlagType symmetric)=0 |
Protected Attributes | |
| DataType * | parameters |
Protected Attributes inherited from cLinearOperatorBase | |
| const LongIndexType | num_rows |
| const LongIndexType | num_columns |
| FlagType | eigenvalue_relation_known |
| IndexType | num_parameters |
Base class for linear operators. This class serves as interface for all derived classes.
The prefix c in this class's name (and its derivatves), stands for the cpp code, intrast to the cu prefix, which stands for the cuda code. Most derived classes have a cuda counterpart.
Definition at line 42 of file c_linear_operator.h.
| cLinearOperator< DataType >::cLinearOperator | ( | ) |
Default constructor.
Definition at line 28 of file c_linear_operator.cpp.
|
virtual |
|
pure virtual |
Implemented in cCSCAffineMatrixFunction< DataType >, cCSCMatrix< DataType >, cCSRAffineMatrixFunction< DataType >, cCSRMatrix< DataType >, cDenseAffineMatrixFunction< DataType >, and cDenseMatrix< DataType >.
Referenced by c_golub_kahn_bidiagonalization(), and c_lanczos_tridiagonalization().

|
pure virtual |
Implemented in cAffineMatrixFunction< DataType >, and cMatrix< DataType >.
Referenced by cTraceEstimator< DataType >::_c_stochastic_lanczos_quadrature().

| void cLinearOperator< DataType >::set_parameters | ( | DataType * | parameters_ | ) |
Sets the scalar parameter this->parameters. Parameter is initialized to NULL. However, before calling dot or transpose_dot functions, the parameters must be set.
| [in] | parameters_ | A pointer to the scalar or array of parameters. |
Definition at line 59 of file c_linear_operator.cpp.
Referenced by cTraceEstimator< DataType >::_c_stochastic_lanczos_quadrature().

|
pure virtual |
Implemented in cCSCAffineMatrixFunction< DataType >, cCSCMatrix< DataType >, cCSRAffineMatrixFunction< DataType >, cCSRMatrix< DataType >, cDenseAffineMatrixFunction< DataType >, and cDenseMatrix< DataType >.
Referenced by c_golub_kahn_bidiagonalization().

|
protected |
Definition at line 69 of file c_linear_operator.h.