SpinParser  1.0
Classes | Enumerations | Functions
Lattice.hpp File Reference

Representation of a physical lattice. More...

#include <array>
#include <vector>
#include <tuple>
#include "lib/Geometry.hpp"
#include "lib/Assert.hpp"
Include dependency graph for Lattice.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  LatticeOverlap
 Structure to describe the portion of the lattice that is relevant in terms of the form sum_j v(i1,j)*v(j,i2). More...
 
struct  LatticeSiteDescriptor
 Structure to specify a symmetry-transformed lattice site. More...
 
struct  LatticeIterator
 Lattice iterator object. More...
 
struct  SublatticeIterator
 Sublattice iterator object. More...
 
struct  Lattice
 Representation of a physical lattice, with symmetry information on two-point correlators. More...
 

Enumerations

enum  SpinComponent : int { SpinComponent::X = 0, SpinComponent::Y = 1, SpinComponent::Z = 2, SpinComponent::None = 3 }
 Component of a spin operator. More...
 

Functions

std::pair< Lattice *, SpinModel * > LatticeModelFactory::newLatticeModel (const LatticeUnitCell &uc, const SpinModelUnitCell &spinModelDefinition, const int latticeRange, const std::string &ldfPath="")
 Create and return lattice and spin model objects from given unit cell definitions. More...
 

Detailed Description

Representation of a physical lattice.

Author
Finn Lasse Buessen

Enumeration Type Documentation

◆ SpinComponent

enum SpinComponent : int
strong

Component of a spin operator.

Enumerator

x-component of a spin.

y-component of a spin.

z-component of a spin.

None 

No spin component specified.

Function Documentation

◆ newLatticeModel()

std::pair< Lattice *, SpinModel * > LatticeModelFactory::newLatticeModel ( const LatticeUnitCell uc,
const SpinModelUnitCell spinModelDefinition,
const int  latticeRange,
const std::string &  ldfPath = "" 
)

Create and return lattice and spin model objects from given unit cell definitions.

Parameters
ucLattice unit cell representation.
spinModelDefinitionSpin model representation.
latticeRangeLattice range.
ldfPathFile name to write the ldf file of the newly created lattice to. If left empty, do not write an ldf file.
Returns
std::pair<Lattice *, SpinModel *> Newly created Lattice and SpinModel objects.