A parallel C++ Library for Simulations in the Heisenberg Model
xy.h
Go to the documentation of this file.
1 #ifndef XY_H
2 #define XY_H
3 
4 #include <model.h>
5 
6 
7 class XY : public Model
8 {
9  public:
10  /******************************************************************************************/
16  XY(double beta, double J, double B, unsigned int Nx, unsigned int Ny, unsigned int Nz, bool hc = true) : Model(beta, J, B, Nx, Ny, Nz)
17  {
18  if(hc) hot_start();
19  else cold_start();
20  };
21 
22 
23  //functions
24  double compute_energy() final;
25  void hot_start() final;
26  void cold_start() final;
27 
28  protected:
29  double delta_energy(unsigned int) final;
30  void flip(unsigned int, gsl_rng*) final;
31 
32 
33  private:
34  vector<double> mgrid;
35 };
36 
37 #endif
XY::cold_start
void cold_start() final
XY::mgrid
vector< double > mgrid
A vector containing double values. They represent the polar angulars between 0 and 2*pi of spins of u...
Definition: xy.h:34
model.h
XY::delta_energy
double delta_energy(unsigned int) final
XY
Definition: xy.h:8
XY::compute_energy
double compute_energy() final
XY::XY
XY(double beta, double J, double B, unsigned int Nx, unsigned int Ny, unsigned int Nz, bool hc=true)
Constructs a XY Model.
Definition: xy.h:16
XY::hot_start
void hot_start() final
XY::flip
void flip(unsigned int, gsl_rng *) final