StatMech
Loading...
Searching...
No Matches
Ensemble_old.hpp
Go to the documentation of this file.
1#pragma once
2
5
7 private:
10 mutable unsigned long count;
11
12 public:
13 RandomMatrixEnsemble(HilbertSpace const& locHSpace, int seed = 0, double stddev = 1.0)
14 : m_locHSpace{locHSpace}, m_GUE(seed, stddev), count{0} {}
15
16 void discardSamples(int num) {
17 if(num <= 0) return;
18 count += num;
19 m_GUE.discard(num);
20 };
21 void getNewSample(void) {
22 ++count;
23 return;
24 };
25
26 template<typename EigenMatrix, typename Scalar_t>
27 void constructHamiltonian(EigenMatrix& mat, SubHilbertSpace<Scalar_t> const& HSpace) {
28 m_GUE(mat);
29 };
30};
Headers for the integer composition.
Generator of matrices in the Gaussian Unitary Ensemble (GUE)
Definition RandomMatrices.hpp:20
void discard(unsigned long long num)
Discards random numbers to advance internal states of the random number generator.
Definition RandomMatrices.hpp:67
Definition HilbertSpace.hpp:32
Definition Ensemble_old.hpp:6
HilbertSpace const & m_locHSpace
Definition Ensemble_old.hpp:8
void constructHamiltonian(EigenMatrix &mat, SubHilbertSpace< Scalar_t > const &HSpace)
Definition Ensemble_old.hpp:27
void getNewSample(void)
Definition Ensemble_old.hpp:21
unsigned long count
Definition Ensemble_old.hpp:10
RandomMatrixEnsemble(HilbertSpace const &locHSpace, int seed=0, double stddev=1.0)
Definition Ensemble_old.hpp:13
GUEgenerator m_GUE
Definition Ensemble_old.hpp:9
void discardSamples(int num)
Definition Ensemble_old.hpp:16
Translation invariant sector of a many-body Hilbert space.
Definition TransSector.hpp:19