XXZ Model
-
class XXZAntiferroStaggeredMagZ
- #include <XXZAntiferro.h>
Staggered magnetization along the easy axis.
Note that the implementation of staggered magnetizations is always characteristic to the lattice being used, in this case RegularHypercubic
Public Functions
-
template<class StateSpace, class Grid>
inline double measure(const StateSpace &statespace, const Grid &grid)
-
inline XXZAntiferroStaggeredMagZ()
Public Members
-
std::string name
-
template<class StateSpace, class Grid>
-
class XXZAntiferroStaggeredMagXY
- #include <XXZAntiferro.h>
Staggered magnetization perpendicular to the easy axis.
Note that the implementation of staggered magnetizations is always characteristic to the lattice being used, in this case RegularHypercubic
Public Functions
-
template<class StateSpace, class Grid>
inline double measure(const StateSpace &statespace, const Grid &grid)
-
inline XXZAntiferroStaggeredMagXY()
Public Members
-
std::string name
-
template<class StateSpace, class Grid>
-
template<class StateVector>
class XXZAntiferro_interaction - #include <XXZAntiferro.h>
Anistropic XXZ interaction.
interaction strength in z-direction is different from x,y
Public Functions
-
inline XXZAntiferro_interaction(const double &Delta)
-
inline StateVector get(const StateVector &phi)
Public Members
-
const double &Delta
Public Static Attributes
-
static constexpr double J = 1
-
inline XXZAntiferro_interaction(const double &Delta)
-
template<class StateVector>
class XXZAntiferro_extfield : public OnSite<StateVector, double> - #include <XXZAntiferro.h>
Anisotropic external field.
The field only acts along the z-direction
- Template Parameters:
StateVector – the type of the state vectors
Public Functions
-
inline XXZAntiferro_extfield(const double &H)
Constructor of anisotropic external field term.
- Parameters:
H – the coupling constant of the field in z-direction
-
inline virtual double get(const StateVector &phi)
-
template<typename SpinType>
class XXZAntiferro - #include <XXZAntiferro.h>
Hamiltonian of the antiferromagnetic XXZ O(3) model.
- Template Parameters:
SpinType – the type in which to store the vector-valued magnetization values.
Public Functions
-
inline XXZAntiferro(double Delta, double H)
Public Members
-
double Delta
-
double H
-
const std::string name
-
std::array<XXZAntiferro_interaction<StateVector>*, 1> interactions = {new XXZAntiferro_interaction<StateVector>(Delta)}
-
std::array<XXZAntiferro_extfield<StateVector>*, 1> onsite = {new XXZAntiferro_extfield<StateVector>(H)}
-
XXZAntiferroStaggeredMagZ obs_mstagz
-
XXZAntiferroStaggeredMagXY obs_mstagxy
-
decltype(std::make_tuple(obs_mstagz, obs_mstagxy)) observables = {std::make_tuple(obs_mstagz, obs_mstagxy)}
Public Static Attributes
-
static constexpr int SymD = 3