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

implementation of the Total ParticleNumberOperator More...

#include <ParticleNumberOperator.hpp>

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

Public Member Functions

 ParticleNumberOperator (int _L)
 Construct a new Particle Number Operator< T 1, T 2> object. More...
 
- Public Member Functions inherited from solid::IOperatorParameters< T1, T2 >
virtual void PreprocessingVirtual (T1< T2 > &matrixElements)
 virtual link for static Postprocessing More...
 
virtual ~IOperatorParameters ()
 Destroy the IOperatorParameters object. More...
 

Private Member Functions

void SelectTerms ()
 
void FillParameters () override
 Filling the Parameters. More...
 

Private Attributes

int L
 

Additional Inherited Members

- Static Public Member Functions inherited from solid::IOperatorParameters< T1, T2 >
static void Preprocessing (T1< T2 > &matrixElements)
 static virtial function for matrixElements postprocessing More...
 
- Public Attributes inherited from solid::Observable< T1, T2 >
Operator< T1, T2 > _operator
 container for matrixElements More...
 
Parameters< T2 > parameters
 parameters for Observable More...
 

Detailed Description

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

implementation of the Total ParticleNumberOperator

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

implements ParticleNumberOperator \(\hat N \) defined in the following way:

\[ \hat N = \sum_i \hat n_i, \]

where \(\hat n_i \) is particle number operator at site \(i\).

Constructor & Destructor Documentation

template<template< typename > class T1, typename T2 >
solid::ParticleNumberOperator< T1, T2 >::ParticleNumberOperator ( int  _L)
inline

Construct a new Particle Number Operator< T 1, T 2> object.

Parameters
_Lnumber of sites

Member Function Documentation

template<template< typename > class T1, typename T2 >
void solid::ParticleNumberOperator< T1, T2 >::FillParameters ( )
inlineoverrideprivatevirtual

Filling the Parameters.

Purely virtual function to override for IOperatorParameters implementation

Implements solid::IOperatorParameters< T1, T2 >.

template<template< typename > class T1, typename T2 >
void solid::ParticleNumberOperator< T1, T2 >::SelectTerms ( )
inlineprivate

Member Data Documentation

template<template< typename > class T1, typename T2 >
int solid::ParticleNumberOperator< T1, T2 >::L
private

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