SOLIDstate
A C++ library for solid state physics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Eigensolver.hpp
Go to the documentation of this file.
1 
11 #ifndef EIGENSOLVER_EIGENSOLVER_HPP
12 #define EIGENSOLVER_EIGENSOLVER_HPP
13 
14 #include <string>
15 
16 #include "../Info/Info.hpp"
17 #include "../QuantumSystem/QuantumSystem.hpp"
18 #include "../QuantumState/QuantumState.hpp"
19 
20 namespace solid
21 {
22 
28 {
29 public:
45  template <template <typename> class T1, typename T2>
47 
53  {
54  public:
58  static int numberOfEigenvalues;
59 
63  static double tolerance;
64 
78  static std::string eigenvalueTarget;
79 
91  static std::string eigenvalueComplexTarget;
92  };
93 };
94 
95 } // namespace solid
96 
97 #endif
static std::string eigenvalueComplexTarget
eigenvalue (complex) target value
Definition: Eigensolver.hpp:91
static int numberOfEigenvalues
specifies the number of eigenvalues and eigenvectors
Definition: Eigensolver.hpp:58
template class representing Quantum State of the system
Definition: QuantumState.hpp:29
static QuantumState< T2 > FindGroundState(QuantumSystem< T1, T2 > &qSystem)
Finding ground state (QuantumState) and its corresponding eigen energy.
static std::string eigenvalueTarget
eigenvalue target value
Definition: Eigensolver.hpp:78
class for handling options for sparse matrix diagonalization procedures
Definition: Eigensolver.hpp:52
class, which only job is to find ground state (QuantumState) and its corresponding energy for given Q...
Definition: Eigensolver.hpp:27
static double tolerance
specifies the tolerance for convergence
Definition: Eigensolver.hpp:63
general purpouse class for solving quantum systems
Definition: QuantumSystem.hpp:39