SOLIDstate
A C++ library for solid state physics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Hamiltonian.hpp
Go to the documentation of this file.
1 
11 #ifndef HAMILTONIAN_HAMILTONIAN_HPP
12 #define HAMILTONIAN_HAMILTONIAN_HPP
13 
14 #include "TermsEnabled.hpp"
15 
16 namespace solid
17 {
18 
19 // Hamiltonian interface
20 
27 {
28 public:
44  virtual void SelectTerms() = 0;
45 
50  virtual ~IHamiltonian() {}
51 };
52 
59 template <template <typename> class T1, typename T2>
60 class Operator
61 {
62 public:
67 
74 
78  virtual ~Operator() {}
79 };
80 
81 } // namespace solid
82 
83 #endif
virtual void SelectTerms()=0
selecting active terms in Hamiltonian
TermsEnabled header.
virtual ~IHamiltonian()
Destroy the IHamiltonian object.
Definition: Hamiltonian.hpp:50
interface for Hamiltonian
Definition: Hamiltonian.hpp:26
TermsEnabled termsEnabled
Terms enabled in Operator.
Definition: Hamiltonian.hpp:73
virtual ~Operator()
Destroy the Operator object.
Definition: Hamiltonian.hpp:78
Terms enebled in Operator.
Definition: TermsEnabled.hpp:24
parent class for Quantum Mechanical Operators
Definition: Hamiltonian.hpp:60
T1< T2 > matrixElements
container for matrix elements
Definition: Hamiltonian.hpp:66