SOLIDstate
A C++ library for solid state physics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | List of all members
solid::KitaevHamiltonian< T1, T2 > Class Template Reference

Kitaev Hamiltonian implementation More...

#include <KitaevHamiltonian.hpp>

Inheritance diagram for solid::KitaevHamiltonian< T1, T2 >:
Inheritance graph
[legend]
Collaboration diagram for solid::KitaevHamiltonian< T1, T2 >:
Collaboration graph
[legend]

Public Member Functions

void SelectTerms () override
 selecting active terms in Hamiltonian More...
 
- Public Member Functions inherited from solid::Operator< T1, T2 >
virtual ~Operator ()
 Destroy the Operator object. More...
 
- Public Member Functions inherited from solid::IHamiltonian
virtual ~IHamiltonian ()
 Destroy the IHamiltonian object. More...
 

Additional Inherited Members

- Public Attributes inherited from solid::Operator< T1, T2 >
T1< T2 > matrixElements
 container for matrix elements More...
 
TermsEnabled termsEnabled
 Terms enabled in Operator. More...
 

Detailed Description

template<template< typename > class T1, typename T2>
class solid::KitaevHamiltonian< T1, T2 >

Kitaev Hamiltonian implementation

Template Parameters
T1matrix type: arma::Mat and arma:SpMat are supported
T2data type: double, std::complex<double> are supported

Kitaev Hamiltonian extended by the many-body interaction. Model can be described by the following Hamiltonian:

\[ \hat H = \sum_{ij}\left(t_{ij}a_i^\dagger a_j +\text{H.c.}\right) +\sum_{ij}\left(\Delta_{ij}a_i^\dagger a_j^\dagger +\text{H.c.}\right) +\sum_{ij}V_{ij}\hat n_i \hat n_j +\sum_i \mu_i \hat n_i \]

Member Function Documentation

template<template< typename > class T1, typename T2 >
void solid::KitaevHamiltonian< T1, T2 >::SelectTerms ( )
inlineoverridevirtual

selecting active terms in Hamiltonian

Purely virtual function to override for IHamiltonian implementation

See TermsEnabled for defaults: Hop (not implemented yet) OneBodyInteraction TwoBodyInteraction (not implemented yet) ThreeBodyInteraction (not implemented yet) CreateParticle (not implemented yet) CreatePair (not implemented yet) CreateTriple (not implemented yet)

Implements solid::IHamiltonian.


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