SOLIDstate
A C++ library for solid state physics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
BaseState.hpp
Go to the documentation of this file.
1 
11 #ifndef COMBINADICS_BASESTATE_HPP
12 #define COMBINADICS_BASESTATE_HPP
13 
14 #include <armadillo>
15 
16 namespace solid
17 {
18 
19 // typedefs for state enumeration
21 typedef long int statenumber;
23 typedef arma::uvec baseStateContainer;
24 
30 {
31 public:
33 
40 
49  bool Hop(int start, int stop);
50 
58  bool OneBodyInteraction(int site);
59 
68  bool TwoBodyInteraction(int site1, int site2);
69 
82  int HopSign(int start, int stop);
83 
90  void MakeHop(int start, int stop);
91 
100  bool CreatePairPossible(int site1, int site2);
101 
108  void CreatePair(int site1, int site2);
109 
123  int PairSign(int site1, int site2);
124 
125  // NOT YET IMPLEMENTED
126  bool CountParticles();
127  bool ThreeBodyInteraction(int site1, int site2, int site3);
128  bool CreateParticle(int site1);
129  bool CreateTriple(int site1, int site2, int site3);
130 };
131 
132 } // namespace solid
133 
134 #endif
bool TwoBodyInteraction(int site1, int site2)
Checks if particles occupy two sites.
Definition: BaseState.cpp:27
bool ThreeBodyInteraction(int site1, int site2, int site3)
int HopSign(int start, int stop)
returns sign of the hopping from start to stop
Definition: BaseState.cpp:37
void CreatePair(int site1, int site2)
Create a Pair of particles in the given sites.
Definition: BaseState.cpp:73
void MakeHop(int start, int stop)
perform hopping
Definition: BaseState.cpp:62
bool CreatePairPossible(int site1, int site2)
Checks if pair of particles can be created in site1 and site2.
Definition: BaseState.cpp:68
BaseState Reverse()
returns reversed BaseState
Definition: BaseState.cpp:17
bool Hop(int start, int stop)
Checks if particle can hop from start to stop.
Definition: BaseState.cpp:32
bool CreateParticle(int site1)
bool CreateTriple(int site1, int site2, int site3)
bool OneBodyInteraction(int site)
Checks if particle occupies site.
Definition: BaseState.cpp:22
BaseState for HilbertSpace base.
Definition: BaseState.hpp:29
arma::uvec baseStateContainer
typedef for BaseState data container
Definition: BaseState.hpp:23
long int statenumber
Hilbert space can be huge...
Definition: BaseState.hpp:21
int PairSign(int site1, int site2)
returns sign of the pairing term in site1 and site2
Definition: BaseState.cpp:57