|
Grid 0.7.0
|
#include <ImplicitlyRestartedBlockLanczosCoarse.h>
Public Member Functions | |
| ImplicitlyRestartedBlockLanczosCoarse (LinearOperatorBase< Field > &Linop, GridBase *f_Grid, GridBase *mrhs_Grid, int _mrhs, OperatorFunction< Field > &poly, int _Nstop, int _Nconv_test_interval, int _Nu, int _Nk, int _Nm, RealD _eresid, int _MaxIter, IRBLdiagonalisation _diagonalisation=IRBLdiagonaliseWithEigen) | |
| void | orthogonalize (Field &w, std::vector< Field > &evec, int k, int if_print=0) |
| void | reorthogonalize (Field &w, std::vector< Field > &evec, int k) |
| void | orthogonalize (std::vector< Field > &w, int _Nu, std::vector< Field > &evec, int k, int if_print=0) |
| void | orthogonalize_blockhead (Field &w, std::vector< Field > &evec, int k, int Nu) |
| void | calc (std::vector< RealD > &eval, std::vector< Field > &evec, const std::vector< Field > &src, int &Nconv, LanczosType Impl) |
| void | calc_irbl (std::vector< RealD > &eval, std::vector< Field > &evec, const std::vector< Field > &src, int &Nconv) |
| void | calc_rbl (std::vector< RealD > &eval, std::vector< Field > &evec, const std::vector< Field > &src, int &Nconv) |
Static Public Member Functions | |
| static RealD | normalize (Field &v, int if_print=0) |
Private Member Functions | |
| void | VectorPoly (std::vector< Field > &in, std::vector< Field > &out) |
| void | SingleOperator (Field &in, Field &out) |
| void | blockwiseStep (std::vector< std::vector< ComplexD > > &lmd, std::vector< std::vector< ComplexD > > &lme, std::vector< Field > &evec, std::vector< Field > &w, std::vector< Field > &w_copy, int b) |
| void | diagonalize_Eigen (std::vector< RealD > &eval, std::vector< std::vector< ComplexD > > &lmd, std::vector< std::vector< ComplexD > > &lme, int Nu, int Nk, int Nm, Eigen::MatrixXcd &Qt, GridBase *grid) |
| void | diagonalize (std::vector< RealD > &eval, std::vector< std::vector< ComplexD > > &lmd, std::vector< std::vector< ComplexD > > &lme, int Nu, int Nk, int Nm, Eigen::MatrixXcd &Qt, GridBase *grid) |
| void | unpackHermitBlockTriDiagMatToEigen (std::vector< std::vector< ComplexD > > &lmd, std::vector< std::vector< ComplexD > > &lme, int Nu, int Nb, int Nk, int Nm, Eigen::MatrixXcd &M) |
| void | packHermitBlockTriDiagMatfromEigen (std::vector< std::vector< ComplexD > > &lmd, std::vector< std::vector< ComplexD > > &lme, int Nu, int Nb, int Nk, int Nm, Eigen::MatrixXcd &M) |
| void | shiftedQRDecompEigen (Eigen::MatrixXcd &M, int Nu, int Nm, RealD Dsh, Eigen::MatrixXcd &Qprod) |
| void | exampleQRDecompEigen (void) |
Private Attributes | |
| std::string | cname |
| int | MaxIter |
| int | Nstop |
| int | Nu |
| int | Nk |
| int | Nm |
| int | Nblock_k |
| int | Nblock_m |
| int | Nconv_test_interval |
| RealD | eresid |
| IRBLdiagonalisation | diagonalisation |
| SortEigen< Field > | _sort |
| LinearOperatorBase< Field > & | _Linop |
| OperatorFunction< Field > & | _poly |
| GridBase * | f_grid |
| GridBase * | mrhs_grid |
| int | mrhs |
| int | Nevec_acc |
Definition at line 42 of file ImplicitlyRestartedBlockLanczosCoarse.h.
|
inline |
|
inlineprivate |
Definition at line 71 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References _Linop, _poly, ExtractSlice(), InsertSlice(), mrhs, and mrhs_grid.
Referenced by blockwiseStep().
|
inlineprivate |
Definition at line 90 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References _Linop, ExtractSlice(), InsertSlice(), mrhs, and mrhs_grid.
Referenced by calc_irbl(), and calc_rbl().
|
inlinestatic |
Definition at line 129 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References norm2(), and sqrt().
Referenced by orthogonalize(), orthogonalize(), and orthogonalize_blockhead().
|
inline |
Definition at line 137 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References Glog, innerProduct(), norm2(), and normalize().
Referenced by blockwiseStep(), calc_irbl(), calc_rbl(), and reorthogonalize().
|
inline |
Definition at line 156 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References orthogonalize().
|
inline |
Definition at line 161 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References innerProduct(), and normalize().
|
inline |
Definition at line 175 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References innerProduct(), normalize(), and Nu.
|
inline |
Definition at line 187 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References calc_irbl(), calc_rbl(), and eval().
|
inline |
Definition at line 202 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References _sort, B, blockwiseStep(), cname, diagonalisation, diagonalize(), eresid, eval(), Glog, innerProduct(), MaxIter, Nblock_k, Nblock_m, Nk, Nm, norm2(), Nstop, Nu, orthogonalize(), packHermitBlockTriDiagMatfromEigen(), real(), shiftedQRDecompEigen(), SingleOperator(), and unpackHermitBlockTriDiagMatToEigen().
Referenced by calc().
|
inline |
Definition at line 410 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References _sort, AdviseInfrequentUse, B, blockwiseStep(), cname, diagonalisation, diagonalize(), eresid, eval(), Glog, innerProduct(), MaxIter, Nblock_k, Nconv_test_interval, Nk, Nm, norm2(), Nstop, Nu, orthogonalize(), real(), and SingleOperator().
Referenced by calc().
|
inlineprivate |
Definition at line 614 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References conjugate(), f_grid, Glog, innerProduct(), mrhs, Nm, norm2(), Nu, orthogonalize(), real(), and VectorPoly().
Referenced by calc_irbl(), and calc_rbl().
|
inlineprivate |
Definition at line 730 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References conjugate(), eval(), Nk, Nm, and Nu.
Referenced by diagonalize().
|
inlineprivate |
Definition at line 912 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References diagonalisation, diagonalize_Eigen(), eval(), Nk, Nm, and Nu.
Referenced by calc_irbl(), and calc_rbl().
|
inlineprivate |
Definition at line 932 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References conjugate(), Nk, Nm, and Nu.
Referenced by calc_irbl().
|
inlineprivate |
Definition at line 960 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl().
|
inlineprivate |
Definition at line 987 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References conj, Nm, Nu, and real().
Referenced by calc_irbl().
|
inlineprivate |
Definition at line 1091 of file ImplicitlyRestartedBlockLanczosCoarse.h.
References Glog.
|
private |
Definition at line 46 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), and calc_rbl().
|
private |
Definition at line 47 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), calc_rbl(), and ImplicitlyRestartedBlockLanczosCoarse().
|
private |
Definition at line 48 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), calc_rbl(), and ImplicitlyRestartedBlockLanczosCoarse().
|
private |
Definition at line 49 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by blockwiseStep(), calc_irbl(), calc_rbl(), diagonalize(), diagonalize_Eigen(), ImplicitlyRestartedBlockLanczosCoarse(), orthogonalize_blockhead(), packHermitBlockTriDiagMatfromEigen(), shiftedQRDecompEigen(), and unpackHermitBlockTriDiagMatToEigen().
|
private |
Definition at line 50 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), calc_rbl(), diagonalize(), diagonalize_Eigen(), ImplicitlyRestartedBlockLanczosCoarse(), packHermitBlockTriDiagMatfromEigen(), and unpackHermitBlockTriDiagMatToEigen().
|
private |
Definition at line 51 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by blockwiseStep(), calc_irbl(), calc_rbl(), diagonalize(), diagonalize_Eigen(), ImplicitlyRestartedBlockLanczosCoarse(), packHermitBlockTriDiagMatfromEigen(), shiftedQRDecompEigen(), and unpackHermitBlockTriDiagMatToEigen().
|
private |
Definition at line 52 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), calc_rbl(), and ImplicitlyRestartedBlockLanczosCoarse().
|
private |
Definition at line 53 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), and ImplicitlyRestartedBlockLanczosCoarse().
|
private |
Definition at line 54 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_rbl(), and ImplicitlyRestartedBlockLanczosCoarse().
|
private |
Definition at line 55 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), calc_rbl(), and ImplicitlyRestartedBlockLanczosCoarse().
|
private |
Definition at line 56 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), calc_rbl(), diagonalize(), and ImplicitlyRestartedBlockLanczosCoarse().
|
private |
Definition at line 60 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by calc_irbl(), and calc_rbl().
|
private |
Definition at line 61 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by ImplicitlyRestartedBlockLanczosCoarse(), SingleOperator(), and VectorPoly().
|
private |
Definition at line 62 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by ImplicitlyRestartedBlockLanczosCoarse(), and VectorPoly().
|
private |
Definition at line 63 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by blockwiseStep(), and ImplicitlyRestartedBlockLanczosCoarse().
|
private |
Definition at line 64 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by ImplicitlyRestartedBlockLanczosCoarse(), SingleOperator(), and VectorPoly().
|
private |
Definition at line 65 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by blockwiseStep(), ImplicitlyRestartedBlockLanczosCoarse(), SingleOperator(), and VectorPoly().
|
private |
Definition at line 69 of file ImplicitlyRestartedBlockLanczosCoarse.h.
Referenced by ImplicitlyRestartedBlockLanczosCoarse().