| 
    Bridge++
    Version 1.4.4
    
   | 
 
Eigenvalue solver with Implicitly Restarted Lanczos algorithm. More...
#include <eigensolver_IRLanczos.h>
  
 Public Member Functions | |
| Eigensolver_IRLanczos (Fopr *fopr) | |
| Eigensolver_IRLanczos (unique_ptr< Fopr > &fopr) | |
| ~Eigensolver_IRLanczos () | |
| void | set_parameters (const Parameters ¶ms) | 
| void | set_parameters (int Nk, int Np, int Niter_eigen, double Enorm_eigen, double Vthreshold) | 
| void | set_parameters (const std::string &sort_type, int Nk, int Np, int Niter_eigen, double Enorm_eigen, double Vthreshold) | 
| void | solve (std::vector< double > &TDa, std::vector< Field > &vk, int &Nsbt, int &Nconv, const Field &b) | 
  Public Member Functions inherited from Eigensolver | |
| Eigensolver () | |
| virtual | ~Eigensolver () | 
| void | set_parameter_verboselevel (Bridge::VerboseLevel vl) | 
Static Public Attributes | |
| static const std::string | class_name = "Eigensolver_IRLanczos" | 
Private Member Functions | |
| void | step (int Nm, int k, std::vector< double > &TDa, std::vector< double > &TDb, std::vector< Field > &vk, Field &f) | 
| void | qrtrf (std::vector< double > &TDa, std::vector< double > &TDb, int Nk, int Nm, std::vector< double > &Qt, double Dsh, int kmin, int kmax) | 
| void | tqri (std::vector< double > &TDa, std::vector< double > &TDb, int Nk, int Nm, std::vector< double > &Qt) | 
| void | setUnit_Qt (int Nm, std::vector< double > &Qt) | 
| void | schmidt_orthogonalization (Field &w, std::vector< Field > &vk, int k) | 
Private Attributes | |
| int | m_Nk | 
| int | m_Np | 
| int | m_Niter_eigen | 
| double | m_Enorm_eigen | 
| double | m_Vthreshold | 
| Fopr * | m_fopr | 
| Sorter * | m_sorter | 
Additional Inherited Members | |
  Protected Attributes inherited from Eigensolver | |
| Bridge::VerboseLevel | m_vl | 
Eigenvalue solver with Implicitly Restarted Lanczos algorithm.
This class determines eigenvalues and eigenvectors for a given fermion operator. Low- or high-lying eigenmodes are determined by chaning SortField class object. 28 Dec 2011 H.Matsufuru YAML is implemented. [14 Nov 2012 Y.Namekawa] unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa]
Definition at line 40 of file eigensolver_IRLanczos.h.
      
  | 
  inline | 
Definition at line 57 of file eigensolver_IRLanczos.h.
      
  | 
  inline | 
Definition at line 60 of file eigensolver_IRLanczos.h.
| Eigensolver_IRLanczos::~Eigensolver_IRLanczos | ( | ) | 
Definition at line 23 of file eigensolver_IRLanczos.cpp.
      
  | 
  private | 
Definition at line 447 of file eigensolver_IRLanczos.cpp.
      
  | 
  private | 
Definition at line 363 of file eigensolver_IRLanczos.cpp.
      
  | 
  virtual | 
Implements Eigensolver.
Definition at line 30 of file eigensolver_IRLanczos.cpp.
| void Eigensolver_IRLanczos::set_parameters | ( | int | Nk, | 
| int | Np, | ||
| int | Niter_eigen, | ||
| double | Enorm_eigen, | ||
| double | Vthreshold | ||
| ) | 
Definition at line 74 of file eigensolver_IRLanczos.cpp.
| void Eigensolver_IRLanczos::set_parameters | ( | const std::string & | sort_type, | 
| int | Nk, | ||
| int | Np, | ||
| int | Niter_eigen, | ||
| double | Enorm_eigen, | ||
| double | Vthreshold | ||
| ) | 
Definition at line 60 of file eigensolver_IRLanczos.cpp.
      
  | 
  private | 
Definition at line 375 of file eigensolver_IRLanczos.cpp.
      
  | 
  virtual | 
Implements Eigensolver.
Definition at line 109 of file eigensolver_IRLanczos.cpp.
      
  | 
  private | 
Definition at line 318 of file eigensolver_IRLanczos.cpp.
      
  | 
  private | 
Definition at line 388 of file eigensolver_IRLanczos.cpp.
      
  | 
  static | 
Definition at line 43 of file eigensolver_IRLanczos.h.
      
  | 
  private | 
Definition at line 50 of file eigensolver_IRLanczos.h.
      
  | 
  private | 
Definition at line 53 of file eigensolver_IRLanczos.h.
      
  | 
  private | 
Definition at line 49 of file eigensolver_IRLanczos.h.
      
  | 
  private | 
Definition at line 47 of file eigensolver_IRLanczos.h.
      
  | 
  private | 
Definition at line 48 of file eigensolver_IRLanczos.h.
      
  | 
  private | 
Definition at line 54 of file eigensolver_IRLanczos.h.
      
  | 
  private | 
Definition at line 51 of file eigensolver_IRLanczos.h.