|
template<typename T_mat > |
| TLLInvMatrix (T_mat &&afac_matrix, const matform_t aformat, const storage_type_t astorage_type=CFG::Arith::storage_type) |
|
template<typename T_mat > |
| TLLInvMatrix (T_mat &&afac_matrix, const matform_t aformat, const TTruncAcc &aacc, const eval_type_t aeval_type=CFG::Arith::eval_type, const storage_type_t astorage_type=CFG::Arith::storage_type) |
|
template<typename T_mat > |
| TLLInvMatrix (const TScalarVector *D1, T_mat &&afac_matrix, const TScalarVector *D2, const matform_t format, const storage_type_t astorage_type=CFG::Arith::storage_type) |
|
virtual | ~TLLInvMatrix () |
| dtor
|
|
virtual void | solve (TVector *x, const matop_t op) const |
|
template<typename T_mat > |
| TFacInvMatrix (T_mat &&afac_matrix, const eval_type_t aeval_type=CFG::Arith::eval_type, const storage_type_t astorage_type=CFG::Arith::storage_type) |
|
template<typename T_mat > |
| TFacInvMatrix (T_mat &&afac_matrix, const TTruncAcc &aacc, const eval_type_t aeval_type=CFG::Arith::eval_type, const storage_type_t astorage_type=CFG::Arith::storage_type) |
|
template<typename T_mat > |
| TFacInvMatrix (const TScalarVector *D1, T_mat &&afac_matrix, const TScalarVector *D2, const eval_type_t aeval_type=CFG::Arith::eval_type, const storage_type_t astorage_type=CFG::Arith::storage_type) |
|
virtual | ~TFacInvMatrix () |
| dtor
|
|
const TMatrix * | matrix () const |
| access factorised matrix
|
|
bool | has_scaling () const |
| return true if diagonal scaling is used
|
|
const TScalarVector & | scaling_left () const |
| return left scaling matrix
|
|
const TScalarVector & | scaling_right () const |
| return right scaling matrix
|
|
eval_type_t | eval_type () const |
| return evaluation type (pointwise/blockwise)
|
|
storage_type_t | storage_type () const |
| return evaluation type (pointwise/blockwise)
|
|
const TTruncAcc | accuracy () const |
| return internal accuracy for matrix arithmetic
|
|
void | set_accuracy (const TTruncAcc &aacc) |
| set internal accuracy for matrix arithmetic
|
|
bool | is_complex () const |
| return true, if field type is complex
|
|
bool | is_self_adjoint () const |
| return true, of operator is self adjoint
|
|
virtual void | apply (const TVector *x, TVector *y, const matop_t op=apply_normal) const |
|
virtual void | apply_add (const real alpha, const TVector *x, TVector *y, const matop_t op=apply_normal) const |
|
virtual auto | domain_vector () const -> std::unique_ptr< TVector > |
| return vector in domain space
|
|
virtual auto | range_vector () const -> std::unique_ptr< TVector > |
| return vector in range space
|
|
virtual typeid_t | type () const =0 |
| return type ID of object
|
|
virtual bool | is_type (const typeid_t t) const |
| return true if local object is of given type ID t
|
|
virtual std::string | typestr () const |
| return string representation of type
|
|
Evaluates \( (LL^H)^{-1} \) or \( (LL^T)^{-1} \).