A parallel C++ Library for Simulations in the Heisenberg Model
Public Member Functions | Private Member Functions | Private Attributes | List of all members
HB::MetropolisSimulationQt Class Reference

#include <simulation.h>

Public Member Functions

 MetropolisSimulationQt (const Grid< short int > &grid, const float beta)
 
void operator() (const Ising &model) const
 

Private Member Functions

void simulate (const Ising &model)
 performs a production-run.
More...
 
float metropolisSweep (const Ising &model)
 performs one Monte-Carlo step, updating the entire grid associated with a certain model and calculates the energy difference More...
 

Private Attributes

float mBeta {1.0f}
 
size_t mSteps {1000}
 
std::shared_ptr< Grid< short int > > mGrid {}
 

Detailed Description

Definition at line 60 of file simulation.h.

Constructor & Destructor Documentation

◆ MetropolisSimulationQt()

HB::MetropolisSimulationQt::MetropolisSimulationQt ( const Grid< short int > &  grid,
const float  beta 
)
inline

Definition at line 63 of file simulation.h.

Member Function Documentation

◆ metropolisSweep()

float HB::MetropolisSimulationQt::metropolisSweep ( const Ising &  model)
private

performs one Monte-Carlo step, updating the entire grid associated with a certain model and calculates the energy difference

Parameters
Referenceto the model
betaInverse Temperature
rngPointer to the state of the GSL RNG
Returns
Energy difference

◆ operator()()

void HB::MetropolisSimulationQt::operator() ( const Ising &  model) const
inline

Definition at line 68 of file simulation.h.

Here is the call graph for this function:

◆ simulate()

void HB::MetropolisSimulationQt::simulate ( const Ising &  model)
private

performs a production-run.

A production run consists of a number of MC sweeps producing correlated energies

Parameters
Referenceto the model
betaInverse temperature
VVolume
stepsNumber of MC sweeps
energiesGets overridden with a standard vector of correlated energies (initial and one for each step)
Here is the caller graph for this function:

Member Data Documentation

◆ mBeta

float HB::MetropolisSimulationQt::mBeta {1.0f}
private

Definition at line 73 of file simulation.h.

◆ mGrid

std::shared_ptr<Grid<short int> > HB::MetropolisSimulationQt::mGrid {}
private

Definition at line 75 of file simulation.h.

◆ mSteps

size_t HB::MetropolisSimulationQt::mSteps {1000}
private

Definition at line 74 of file simulation.h.


The documentation for this class was generated from the following file: