Class xlifepp::ARInterfaceGenCsh#

template<class MAB_, class MAsB_>
class ARInterfaceGenCsh : public xlifepp::ARInterfaceGen<real_t, MAB_, MAB_>#

Inheritence diagram for xlifepp::ARInterfaceGenCsh:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "3" [label="xlifepp::ARInterface< real_t, MAB_ >" tooltip="xlifepp::ARInterface< real_t, MAB_ >"] "2" [label="xlifepp::ARInterfaceGen< real_t, MAB_, MAB_ >" tooltip="xlifepp::ARInterfaceGen< real_t, MAB_, MAB_ >"] "4" [label="xlifepp::ARInterface< K_, MA_ >" tooltip="xlifepp::ARInterface< K_, MA_ >"] "6" [label="xlifepp::ARInterface< K_, MA_ >" tooltip="xlifepp::ARInterface< K_, MA_ >"] "5" [label="xlifepp::ARInterfaceGen< K_, MA_, MB_ >" tooltip="xlifepp::ARInterfaceGen< K_, MA_, MB_ >"] "1" [label="xlifepp::ARInterfaceGenCsh< MAB_, MAsB_ >" tooltip="xlifepp::ARInterfaceGenCsh< MAB_, MAsB_ >" fillcolor="#BFBFBF"] "3" -> "4" [dir=forward tooltip="template-instance"] "2" -> "3" [dir=forward tooltip="public-inheritance"] "2" -> "5" [dir=forward tooltip="template-instance"] "5" -> "6" [dir=forward tooltip="public-inheritance"] "1" -> "2" [dir=forward tooltip="public-inheritance"] }

Collaboration diagram for xlifepp::ARInterfaceGenCsh:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "3" [label="xlifepp::ARInterface< real_t, MAB_ >" tooltip="xlifepp::ARInterface< real_t, MAB_ >"] "2" [label="xlifepp::ARInterfaceGen< real_t, MAB_, MAB_ >" tooltip="xlifepp::ARInterfaceGen< real_t, MAB_, MAB_ >"] "14" [label="xlifepp::FactPtrTrait< MAsB_ >" tooltip="xlifepp::FactPtrTrait< MAsB_ >"] "16" [label="xlifepp::SolverPtrTrait< complex_t, MAsB_ >" tooltip="xlifepp::SolverPtrTrait< complex_t, MAsB_ >"] "5" [label="std::basic_string< char >" tooltip="std::basic_string< char >"] "6" [label="std::basic_string< Char >" tooltip="std::basic_string< Char >"] "4" [label="std::string" tooltip="std::string"] "8" [label="std::vector< T >" tooltip="std::vector< T >"] "10" [label="std::vector< K_ >" tooltip="std::vector< K_ >"] "13" [label="std::vector< complex_t >" tooltip="std::vector< complex_t >"] "7" [label="std::vector< real_t >" tooltip="std::vector< real_t >"] "9" [label="xlifepp::ARInterface< K_, MA_ >" tooltip="xlifepp::ARInterface< K_, MA_ >"] "12" [label="xlifepp::ARInterface< K_, MA_ >" tooltip="xlifepp::ARInterface< K_, MA_ >"] "11" [label="xlifepp::ARInterfaceGen< K_, MA_, MB_ >" tooltip="xlifepp::ARInterfaceGen< K_, MA_, MB_ >"] "1" [label="xlifepp::ARInterfaceGenCsh< MAB_, MAsB_ >" tooltip="xlifepp::ARInterfaceGenCsh< MAB_, MAsB_ >" fillcolor="#BFBFBF"] "15" [label="xlifepp::FactPtrTrait< M_ >" tooltip="xlifepp::FactPtrTrait< M_ >"] "17" [label="xlifepp::SolverPtrTrait< K_, M_ >" tooltip="xlifepp::SolverPtrTrait< K_, M_ >"] "3" -> "4" [dir=forward tooltip="usage"] "3" -> "7" [dir=forward tooltip="usage"] "3" -> "9" [dir=forward tooltip="template-instance"] "2" -> "3" [dir=forward tooltip="public-inheritance"] "2" -> "11" [dir=forward tooltip="template-instance"] "14" -> "15" [dir=forward tooltip="template-instance"] "16" -> "17" [dir=forward tooltip="template-instance"] "5" -> "6" [dir=forward tooltip="template-instance"] "4" -> "5" [dir=forward tooltip="public-inheritance"] "10" -> "8" [dir=forward tooltip="template-instance"] "13" -> "8" [dir=forward tooltip="template-instance"] "7" -> "8" [dir=forward tooltip="template-instance"] "9" -> "4" [dir=forward tooltip="usage"] "9" -> "10" [dir=forward tooltip="usage"] "12" -> "4" [dir=forward tooltip="usage"] "12" -> "10" [dir=forward tooltip="usage"] "11" -> "12" [dir=forward tooltip="public-inheritance"] "1" -> "2" [dir=forward tooltip="public-inheritance"] "1" -> "13" [dir=forward tooltip="usage"] "1" -> "14" [dir=forward tooltip="usage"] "1" -> "16" [dir=forward tooltip="usage"] }

Class for generalized eigenvalue problem in complex shift and invert mode Real non symmetric case with complex shift.

Matrix-vector products provided: y <- Re/Im{inv(A-sigma B)}*x, y <- A * x and y <- B * x

Public Functions

ARInterfaceGenCsh(const MAB_ &matA, const MAB_ &matB, const char part, const real_t sigmaR, const real_t sigmaI)#

A_B_p_sr_si constructor A real non symmetric B symmetric positive semi-definite.

~ARInterfaceGenCsh()#

destructor

void MultAx(real_t *x, real_t *y)#

matrix-vector product y <- A * x

virtual void MultOPx(real_t *x, real_t *y)#

matrix-vector product y <- real{inv(A-sigma B)} * x if part = ‘R’ y <- imag{inv(A-sigma B)} * x if part = ‘I’ The system is solved in complex arithmetic.