![]() |
A parallel C++ Library for Simulations in the Heisenberg Model
|
Namespaces | |
Ising | |
Classes | |
class | Grid |
A class storing spin values as a grid and certain meta information. More... | |
class | MetropolisSimulation |
class | MetropolisSimulationQt |
class | Model |
An abstract class representing the model describing the spins. A model class has to derive from it an override the pure virtual functions. More... | |
struct | NB |
A struct containing six neighbour inidices of a spin in three dimensions. More... | |
class | SimulatedAnnealing |
struct | Spin |
A class storing spin values represented by two angles. More... | |
Typedefs | |
using | Models = std::vector< std::unique_ptr< HB::Model > > |
Functions | |
template<typename T > | |
T | mean (const std::vector< T > &o) |
calculates the mean value of a standard vector \(\mu = \sum_i o_i\) More... | |
template<typename T > | |
T | covFunc (const size_t t, const std::vector< T > &o) |
calculates the covariance function up to a certain index of a standard vector More... | |
template<typename T > | |
T | intAuto (const std::vector< T > &o) |
calculates the integrated autocorrelation time of a standard vector More... | |
template<typename T > | |
T | error (const std::vector< T > &o) |
calculates the standard error (standard deviation) of a standard vector More... | |
template<typename T > | |
T | blockingError (const std::vector< T > &o, const size_t block_number) |
calculates the blocking error of a standard vector More... | |
template<typename T > | |
T | bootstrapError (const std::vector< T > &o, const size_t sample_size, const size_t sample_number, const T tau) |
calculates the bootstrap error of a standard vector More... | |
template<typename T > | |
T | errorProp (const std::vector< T > &o, const T tau) |
calculates the error based on error propagation of a standard vector More... | |
template<typename T > | |
T | errorPropEnergy (const std::vector< T > &energies, const T beta, const T tau, const size_t V) |
calculates the statistical error on energies using error propagation More... | |
template<typename T > | |
T | errorPropMagnetization (const std::vector< T > &magn, const T beta, const T tau, const size_t V) |
calculates the statistical error on magnetizations (magn) using error propagation More... | |
template<typename T > | |
size_t | d2i (const T d) |
rounds a floating point value to an integer More... | |
template<typename T > | |
void | removeCorr (const std::vector< T > &o) |
removes correlation from a standard vector More... | |
template<typename T > | |
T | specificHeat (const std::vector< T > &energies, const T beta, const size_t V) |
computes the specific heat per Volume as secondary quantity for a given vector of energies More... | |
template<typename T > | |
T | magnSusz (const std::vector< T > &magn, const T beta, const size_t V) |
computes the magnetic suszeptibility per Volume as secondary quantity for a given vector of magnetizations More... | |
void | simulate (const Models &models) |
using HB::Models = typedef std::vector<std::unique_ptr<HB::Model> > |
Definition at line 270 of file simulation.h.
T HB::blockingError | ( | const std::vector< T > & | o, |
const size_t | block_number | ||
) |
calculates the blocking error of a standard vector
block_number | Number of blocks the vector is divided into |
o | Reference to the standard vector |
T HB::bootstrapError | ( | const std::vector< T > & | o, |
const size_t | sample_size, | ||
const size_t | sample_number, | ||
const T | tau | ||
) |
calculates the bootstrap error of a standard vector
o | Reference to the standard vector |
sample_size | Size of the bootstrap samples \parma sample_number Number of resamplings |
tau | Integrated autocorrelation time |
T HB::covFunc | ( | const size_t | t, |
const std::vector< T > & | o | ||
) |
calculates the covariance function up to a certain index of a standard vector
t | Index in vector |
o | Reference to the standard vector |
size_t HB::d2i | ( | const T | d | ) |
rounds a floating point value to an integer
d | Value to be rounded |
T HB::error | ( | const std::vector< T > & | o | ) |
calculates the standard error (standard deviation) of a standard vector
o | Reference to the standard vector |
T HB::errorProp | ( | const std::vector< T > & | o, |
const T | tau | ||
) |
calculates the error based on error propagation of a standard vector
o | Reference to the standard vector |
tau | Integrated autocorrelation time |
T HB::errorPropEnergy | ( | const std::vector< T > & | energies, |
const T | beta, | ||
const T | tau, | ||
const size_t | V | ||
) |
calculates the statistical error on energies using error propagation
o | Reference to the standard vector |
tau | Integrated autocorrelation time |
T HB::errorPropMagnetization | ( | const std::vector< T > & | magn, |
const T | beta, | ||
const T | tau, | ||
const size_t | V | ||
) |
calculates the statistical error on magnetizations (magn) using error propagation
o | Reference to the standard vector |
tau | Integrated autocorrelation time |
T HB::intAuto | ( | const std::vector< T > & | o | ) |
calculates the integrated autocorrelation time of a standard vector
o | Reference to the standard vector |
T HB::magnSusz | ( | const std::vector< T > & | magn, |
const T | beta, | ||
const size_t | V | ||
) |
computes the magnetic suszeptibility per Volume as secondary quantity for a given vector of magnetizations
Reference | to a standard vector of magnetizations |
beta | Inverse temperature |
V | Volume |
T HB::mean | ( | const std::vector< T > & | o | ) |
calculates the mean value of a standard vector \(\mu = \sum_i o_i\)
o | Reference to the standard vector |
return | Mean value |
void HB::removeCorr | ( | const std::vector< T > & | o | ) |
removes correlation from a standard vector
The function calculates the integrated autocorrelation time \(\tau\). The thermalisation of \(20\tau\) is removed. The integrated autocorrelation time is calculated again in order to remove values from the input vector until the remaining ones are uncorrelated. The The function overrides the input vector.
o | Standard vector of correlated values |
void HB::simulate | ( | const Models & | models | ) |
T HB::specificHeat | ( | const std::vector< T > & | energies, |
const T | beta, | ||
const size_t | V | ||
) |
computes the specific heat per Volume as secondary quantity for a given vector of energies
Reference | to a standard vector of energies |
beta | Inverse temperature |
V | Volume |